adding Irix (and, to a lesser extent, Solaris) userland emulation to QEMU
Go to file
Stefan Weil f21dc3a465 block/vdi: Fix image opening and creation for odd disk sizes
The fix is based on a patch from Kevin Wolf. Here his comment:

"The number of blocks needs to be rounded up to cover all of the virtual hard
disk. Without this fix, we can't even open our own images if their size is not
a multiple of the block size."

While Kevin's patch addressed vdi_create, my modification also fixes
vdi_open which now accepts images with odd disk sizes.

v3:
Don't allow reading of disk images with too large disk sizes.
Neither VBoxManage nor old versions of qemu-img read such images.
This change requires rounding of odd disk sizes before we do the checks.

Cc: Kevin Wolf <kwolf@redhat.com>
Cc: François Revol <revol@free.fr>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-05-17 10:20:05 +02:00
QMP QMP: Introduce RESUME event 2010-05-03 12:39:12 -05:00
audio audio/sdlaudio: remove unused variable 2010-04-22 15:21:53 +04:00
block block/vdi: Fix image opening and creation for odd disk sizes 2010-05-17 10:20:05 +02:00
bsd-user Fix i386-bsd-user build 2010-03-30 18:24:49 +00:00
darwin-user darwin-user: Add missing static attribute 2010-05-07 16:28:12 +00:00
default-configs sparc32 use empty_slot for missing RAM v1 2010-04-18 08:55:20 +00:00
docs docs: New qdev-device-use.txt 2010-01-13 17:14:16 -06:00
fpu softfloat: remove dead assignments, spotted by clang 2010-03-07 13:49:58 +00:00
fsdev virtio-9p: Add a virtio 9p device to qemu 2010-05-03 12:17:37 -05:00
gdb-xml
hw ide: Fix ide_dma_cancel 2010-05-17 10:20:04 +02:00
linux-user sparc: Fix lazy flag calculation on interrupts, refactor 2010-05-09 20:19:04 +00:00
net Remove dead assignments in various common files, spotted by clang analyzer 2010-04-25 18:35:52 +00:00
pc-bios Update SeaBIOS 2010-05-14 10:55:58 -05:00
roms Update SeaBIOS 2010-05-14 10:55:58 -05:00
slirp Remove dead assignments in various common files, spotted by clang analyzer 2010-04-25 18:35:52 +00:00
sysconfigs/target Add cpu model configuration support.. 2010-02-22 16:16:17 -06:00
target-alpha target-alpha: Implement RPCC. 2010-04-27 05:50:42 +02:00
target-arm arm: remove dead assignments, spotted by clang analyzer 2010-04-25 19:31:06 +00:00
target-cris cris: remove dead assignments, spotted by clang analyzer 2010-04-25 19:46:46 +00:00
target-i386 kvm: fix 80000001.EDX supported bit filtering 2010-05-11 17:07:36 -03:00
target-m68k m68k: remove dead assignments, spotted by clang analyzer 2010-04-25 19:50:51 +00:00
target-microblaze microblaze: remove dead assignments, spotted by clang analyzer 2010-04-25 20:00:33 +00:00
target-mips target-mips: Remove duplicate CPU log. 2010-05-05 12:20:05 +02:00
target-ppc Do not stop VM if emulation failed in userspace. 2010-05-11 14:03:44 -03:00
target-s390x Do not stop VM if emulation failed in userspace. 2010-05-11 14:03:44 -03:00
target-sh4 target-sh4: Remove duplicate CPU log. 2010-05-05 12:20:05 +02:00
target-sparc sparc: move DT and QT defines to op_helper.c 2010-05-16 08:33:02 +00:00
tcg tcg: Add missing 'static' attribute 2010-05-07 17:53:05 +00:00
tests Add missing 'static' attribute 2010-05-07 16:28:10 +00:00
.gitignore Documentation: Add build support for documentation in pdf format 2010-02-10 11:56:56 -06:00
.gitmodules use absolute URLs for .gitmodules 2010-03-06 23:09:28 +01:00
CODING_STYLE CODING_STYLE: Reserve qemu_ prefix for library wrappers 2010-03-19 15:27:27 -05:00
COPYING
COPYING.LIB
Changelog Update version and changelog to sync with stable branch 2009-12-19 08:26:03 -06:00
LICENSE
MAINTAINERS Update MAINTAINERS 2010-02-06 19:24:42 +01:00
Makefile vnc: split encoding in specific files 2010-05-03 12:09:47 -05:00
Makefile.dis Compile disassemblers only once 2010-03-21 08:28:47 +00:00
Makefile.hw Use vpath directive 2010-01-08 09:58:40 -06:00
Makefile.objs Compile virtio-9p-debug and virtio-9p-local once 2010-05-14 19:31:53 +00:00
Makefile.target pc: split out piix specific part from pc.c into pc_piix.c 2010-05-15 15:53:25 +00:00
Makefile.user Use vpath directive 2010-01-08 09:58:40 -06:00
README
TODO
VERSION Update version and changelog to sync with stable branch 2009-12-19 08:26:03 -06:00
a.out.h
acl.c
acl.h
aes.c
aes.h
aio.c
alpha-dis.c
alpha.ld
arch_init.c Add missing #include needed for madvise() on OpenBSD 2010-03-30 19:27:34 +00:00
arch_init.h Refactor target specific handling, compile vl.c only once 2010-03-29 19:23:52 +00:00
arm-dis.c arm: remove dead assignments, spotted by clang analyzer 2010-04-25 19:31:06 +00:00
arm-semi.c
arm.ld
async.c
balloon.c move balloon handling to balloon.c 2010-04-09 18:55:56 +02:00
balloon.h move balloon handling to balloon.c 2010-04-09 18:55:56 +02:00
block-migration.c block: Do not export bdrv_first 2010-04-23 16:21:57 +02:00
block-migration.h block migration: Report progress also via info migration 2009-12-03 10:48:53 -06:00
block.c block: Fix bdrv_commit 2010-05-17 10:20:05 +02:00
block.h block: Remove semicolon in BDRV_SECTOR_MASK macro 2010-05-17 10:20:04 +02:00
block_int.h block: Add wr_highest_sector blockstat 2010-05-03 10:07:32 +02:00
bswap.h introduce leul_to_cpu 2010-04-28 13:41:14 -03:00
bt-host.c bt: remove dead assignments, spotted by clang analyzer 2010-04-25 18:20:28 +00:00
bt-host.h
bt-vhci.c
buffered_file.c Do not use dprintf 2010-02-07 02:03:50 +03:00
buffered_file.h
cache-utils.c FreeBSD ppc_init_cacheline_sizes(): add missing #includes 2010-03-13 01:14:01 +03:00
cache-utils.h
check-qdict.c QDict: Fix size update 2009-12-18 11:26:27 -06:00
check-qfloat.c
check-qint.c
check-qjson.c
check-qlist.c
check-qstring.c utests: Add qstring_from_substr() unit-test 2009-12-03 09:41:19 -06:00
cmd.c Fix dead initialization, spotted by clang analyzer 2010-04-25 15:27:14 +00:00
cmd.h
cocoa.m Cocoa: Use optimized drawing for the window 2010-01-07 10:57:34 +03:00
config.h
configure Avoid libaio for usermode 2010-05-05 16:32:59 +01:00
console.c Remove dead assignments in various common files, spotted by clang analyzer 2010-04-25 18:35:52 +00:00
console.h Add notifier for mouse mode changes 2010-03-19 15:27:38 -05:00
cpu-all.h add cpu_is_stopped helper 2010-05-11 14:02:22 -03:00
cpu-common.h Remove IO_MEM_SUBWIDTH. 2010-04-25 12:59:33 +00:00
cpu-defs.h move stop/stopped CPU_COMMON fields after area zeroed by reset 2010-05-11 14:02:22 -03:00
cpu-exec.c make SIG_IPI to tcg vcpu thread reliable 2010-05-11 14:02:22 -03:00
cpus.c cpus: add one 'const' 2010-05-14 19:32:21 +00:00
cpus.h Fix cpu list("-cpu ?") breakage, spotted by TeLeMan 2010-05-04 19:55:35 +00:00
create_config
cris-dis.c
curses.c Revert 'Fix build' 2010-03-21 19:44:06 +00:00
curses_keys.h Fix curses interaction with keymaps 2010-03-06 23:15:30 +01:00
cutils.c split out qemu-timer.c 2010-03-17 11:16:15 -05:00
d3des.c
d3des.h
def-helper.h
device_tree.c
device_tree.h
dis-asm.h ia64 disas support 2010-04-01 21:51:59 +02:00
disas.c ia64 disas support 2010-04-01 21:51:59 +02:00
disas.h Disassembler symbol lookup fix 2010-03-01 04:39:50 +00:00
dma-helpers.c
dma.h
dyngen-exec.h tcp/mips: Change TCG_AREG0 (fp -> s0) 2010-04-14 00:59:42 +02:00
elf.h tcg-i386: Implement small forward branches. 2010-02-06 22:23:39 +01:00
envlist.c
envlist.h
exec-all.h make SIG_IPI to tcg vcpu thread reliable 2010-05-11 14:02:22 -03:00
exec.c Fix -mem-path with hugetlbfs 2010-05-11 14:02:21 -03:00
feature_to_c.sh
gdbstub.c sparc: Fix lazy flag calculation on interrupts, refactor 2010-05-09 20:19:04 +00:00
gdbstub.h Allow various header files to be included from non-CPU code 2010-03-29 19:23:47 +00:00
gen-icount.h Compile qemu-timer only once 2010-03-29 19:24:00 +00:00
host-utils.c
host-utils.h target-alpha: Fix generic ctz64. 2009-12-17 18:12:04 +01:00
hpet.h
hppa-dis.c tcg-hppa: Fix const errors in hppa-dis.c 2010-03-23 22:00:43 +01:00
hppa.ld
hxtool
i386-dis.c i386-dis: Fix unused return value, spotted by clang 2010-04-18 14:27:44 +00:00
i386.ld Fix missing symbols in .rel/.rela.plt sections 2010-02-06 22:22:27 +01:00
ia64-dis.c Update to a hopefully more future proof FSF address 2010-05-15 17:52:49 +00:00
ia64.ld
input.c Expose whether a mouse is an absolute device via QMP and the human monitor. 2010-03-19 15:27:38 -05:00
ioport-user.c
ioport.c
ioport.h
iov.c iov: Move from hw/ to topdir 2010-05-10 11:36:03 -05:00
iov.h iov: Move from hw/ to topdir 2010-05-10 11:36:03 -05:00
json-lexer.c json: fix PRId64 on Win32 2010-02-10 12:47:58 -06:00
json-lexer.h
json-parser.c json-parser: Output the content of invalid keyword 2010-03-27 13:51:01 +01:00
json-parser.h
json-streamer.c
json-streamer.h
keymaps.c Fix curses interaction with keymaps 2010-03-06 23:15:30 +01:00
keymaps.h Fix curses interaction with keymaps 2010-03-06 23:15:30 +01:00
kvm-all.c Do not stop VM if emulation failed in userspace. 2010-05-11 14:03:44 -03:00
kvm-stub.c provide a stub version of kvm-all.c if !CONFIG_KVM 2010-04-19 18:59:30 +00:00
kvm.h Do not stop VM if emulation failed in userspace. 2010-05-11 14:03:44 -03:00
libfdt_env.h
linux-aio.c linux-aio: Fix typo in read() EINTR check 2010-04-23 16:21:57 +02:00
m68k-dis.c m68k-dis: fix unused return value, spotted by clang 2010-04-23 19:22:17 +00:00
m68k-semi.c
m68k.ld
microblaze-dis.c microblaze: fix custom fprintf 2010-04-27 18:56:11 +00:00
migration-exec.c remove useless cast 2010-03-19 15:27:27 -05:00
migration-fd.c remove useless cast 2010-03-19 15:27:27 -05:00
migration-tcp.c migration: Clear fd also in error cases 2010-03-17 11:16:15 -05:00
migration-unix.c migration: unix migration should obey autostart are the other ones 2010-03-17 11:16:15 -05:00
migration.c Monitor: Convert do_migrate() to cmd_new_ret() 2010-02-19 15:18:17 -06:00
migration.h Monitor: Convert do_migrate() to cmd_new_ret() 2010-02-19 15:18:17 -06:00
mips-dis.c mips-dis: Add missing static attributes 2010-05-09 06:47:20 +00:00
mips.ld
module.c
module.h
monitor.c sparc: Fix lazy flag calculation on interrupts, refactor 2010-05-09 20:19:04 +00:00
monitor.h QMP: Introduce RESUME event 2010-05-03 12:39:12 -05:00
nbd.c
nbd.h
net-checksum.c
net.c monitor: Convert do_set_link() to QObject, QError 2010-04-18 23:55:19 +02:00
net.h monitor: Convert do_set_link() to QObject, QError 2010-04-18 23:55:19 +02:00
notify.c Add support for generic notifier lists 2010-03-19 15:27:32 -05:00
notify.h Add support for generic notifier lists 2010-03-19 15:27:32 -05:00
osdep.c documentation: qemu_write_full don't work with non-blocking fd's 2010-03-09 11:23:00 -06:00
osdep.h qdev: move DO_UPCAST() into osdep.h 2009-12-03 09:41:29 -06:00
path.c path.c fix warning with _FORTIFY_SOURCE 2009-12-25 18:19:15 +00:00
pci-ids.txt
poison.h move targphys.h and hw/poison.h inclusion to cpu-common.h 2010-04-09 18:55:55 +02:00
posix-aio-compat.c posix-aio-compat.c: fix warning with _FORTIFY_SOURCE 2010-01-26 14:59:19 -06:00
ppc-dis.c
ppc.ld
ppc64.ld
qbool.c
qbool.h
qdict-test-data.txt
qdict.c Replace assert(0) with abort() or cpu_abort() 2010-03-18 18:41:57 +00:00
qdict.h QDict: New qdict_get_double() 2010-02-03 12:36:25 -06:00
qemu-aio.h
qemu-barrier.h kvm-all.c: define smp_wmb and use it for coalesced mmio 2010-02-22 19:04:13 +02:00
qemu-binfmt-conf.sh target-alpha: Add binfmt entry. 2009-12-13 20:32:36 +01:00
qemu-char.c stash away SCM_RIGHTS fd until a getfd command arrives 2010-04-26 16:36:31 -03:00
qemu-char.h Always notify consumers of char devices if they're open 2010-04-09 22:03:22 +02:00
qemu-common.h port qemu-kvm's on_vcpu code 2010-05-11 14:02:22 -03:00
qemu-config.c virtio-9p: Create a syntactic shortcut for the file-system pass-thru 2010-05-03 12:17:39 -05:00
qemu-config.h virtio-9p: Create a syntactic shortcut for the file-system pass-thru 2010-05-03 12:17:39 -05:00
qemu-doc.texi Fix manpage errors 2010-03-18 18:41:49 +00:00
qemu-error.c error: Move qerror_report() from qemu-error.[ch] to qerror.[ch] 2010-03-27 14:30:38 +01:00
qemu-error.h error: Move qerror_report() from qemu-error.[ch] to qerror.[ch] 2010-03-27 14:30:38 +01:00
qemu-img-cmds.hx qemu-img: Add 'resize' command to grow/shrink disk images 2010-05-03 10:07:32 +02:00
qemu-img.c qemu-img rebase: Fix output image corruption 2010-05-03 10:07:32 +02:00
qemu-img.texi qemu-img: Add 'resize' command to grow/shrink disk images 2010-05-03 10:07:32 +02:00
qemu-io.c block: get rid of the BDRV_O_FILE flag 2010-04-23 16:08:46 +02:00
qemu-lock.h
qemu-log.h
qemu-malloc.c Simplify qemu_realloc() 2010-02-23 22:36:19 +01:00
qemu-monitor.hx doc: Clean up monitor command function index 2010-05-10 11:36:04 -05:00
qemu-nbd.c qemu-nbd: Improve error reporting 2010-05-17 10:20:04 +02:00
qemu-nbd.texi qemu-nbd: Fix wrong description in qemu-nbd.texi 2010-03-06 23:03:50 +01:00
qemu-objects.h Introduce qemu-objects.h header file 2009-12-12 07:59:45 -06:00
qemu-option.c Fix tiny leak in qemu_opts_parse 2010-05-03 12:09:48 -05:00
qemu-option.h qemu-option: Move the implied first name into QemuOptsList 2010-03-16 17:45:34 +01:00
qemu-options.hx virtio-9p: Create a syntactic shortcut for the file-system pass-thru 2010-05-03 12:17:39 -05:00
qemu-queue.h Import a simple queue implementation from NetBSD 2009-12-03 10:48:52 -06:00
qemu-sockets.c move socket_init to qemu-sockets.c 2010-04-09 18:55:54 +02:00
qemu-tech.texi Documentation: Use UTF-8 encoding and fix one wrong encoding 2010-02-10 12:43:04 -06:00
qemu-thread.c
qemu-thread.h
qemu-timer.c Compile qemu-timer only once 2010-03-29 19:24:00 +00:00
qemu-timer.h Implement cpu_get_real_ticks for Alpha. 2010-04-27 05:50:42 +02:00
qemu-tool.c error: Link qemu-img, qemu-nbd, qemu-io with qemu-error.o 2010-03-27 14:30:38 +01:00
qemu-x509.h move x509 file name defines to qemu-x509.h 2010-03-08 11:30:09 -06:00
qemu.sasl
qemu_socket.h move socket_init to qemu-sockets.c 2010-04-09 18:55:54 +02:00
qerror.c QError: Improve QERR_QMP_BAD_INPUT_OBJECT desc 2010-04-26 11:17:14 -03:00
qerror.h QError: New QERR_QMP_BAD_INPUT_OBJECT_MEMBER 2010-04-26 11:17:02 -03:00
qfloat.c
qfloat.h
qint.c
qint.h
qjson.c qjson: Improve debugging 2010-02-10 13:46:17 -06:00
qjson.h QJSON: Introduce qobject_from_jsonv() 2009-12-03 09:41:18 -06:00
qlist.c
qlist.h QList: Introduce QLIST_FOREACH_ENTRY() 2010-01-26 15:42:01 -06:00
qobject.h Introduce QError 2009-12-03 09:41:20 -06:00
qstring.c QString: Introduce qstring_from_substr() 2009-12-03 09:41:19 -06:00
qstring.h QString: Introduce qstring_from_substr() 2009-12-03 09:41:19 -06:00
readline.c cope with printf macro definition in readline.c 2010-02-08 12:12:40 +03:00
readline.h
rules.mak fix whitespace bogon in some versions of make 2010-05-03 12:39:53 -05:00
rwhandler.c Don't compile rwhandler.c for user targets 2010-02-20 09:27:38 +00:00
rwhandler.h rwhandler: simplified way to register for mem/io 2010-02-14 16:10:53 +02:00
s390-dis.c
s390.ld
savevm.c vmstate: Add support for alias ID 2010-05-15 14:23:31 +00:00
sdl.c Revert "Convert atexit users to exit_notifier" 2010-03-21 14:13:02 -05:00
sdl_keysym.h
sdl_zoom.c
sdl_zoom.h
sdl_zoom_template.h
sh4-dis.c sh4: Fix compiler warning (fprintf format string) 2010-04-14 01:04:02 +02:00
softmmu-semi.h
softmmu_defs.h
softmmu_exec.h sparc64: handle asi referencing nucleus and secondary MMU contexts 2010-05-06 23:14:26 +03:00
softmmu_header.h
softmmu_template.h Split TLB addend and target_phys_addr_t 2010-04-05 00:28:53 +01:00
sparc-dis.c sparc64: more ultrasparc asi extensions for disassembler 2010-05-06 20:13:02 +00:00
sparc.ld
sparc64.ld
sysemu.h Monitor: Return before exiting with 'quit' 2010-04-26 16:36:01 -03:00
targphys.h Split TLB addend and target_phys_addr_t 2010-04-05 00:28:53 +01:00
tcg-runtime.c tcg: add div/rem 32-bit helpers 2010-03-14 22:04:50 +01:00
texi2pod.pl
thunk.c
thunk.h
translate-all.c remove TARGET_* defines from translate-all.c 2010-04-08 21:34:12 +02:00
uboot_image.h
usb-bsd.c qdev: Replace device names containing whitespace 2009-12-12 07:59:38 -06:00
usb-linux.c Changes to usb-linux to conform to coding style 2010-05-03 12:39:53 -05:00
usb-stub.c
vgafont.h
vl.c Fix cpu list("-cpu ?") breakage, spotted by TeLeMan 2010-05-04 19:55:35 +00:00
vnc-auth-sasl.c vnc: Fix compile error on x86_64 with -D_VNC_DEBUG=1 2010-05-03 12:09:22 -05:00
vnc-auth-sasl.h
vnc-auth-vencrypt.c
vnc-auth-vencrypt.h
vnc-encoding-hextile.c vnc: split encoding in specific files 2010-05-03 12:09:47 -05:00
vnc-encoding-zlib.c vnc: split encoding in specific files 2010-05-03 12:09:47 -05:00
vnc-tls.c move x509 file name defines to qemu-x509.h 2010-03-08 11:30:09 -06:00
vnc-tls.h
vnc.c vnc: set the right prefered encoding 2010-05-10 11:36:03 -05:00
vnc.h vnc: split encoding in specific files 2010-05-03 12:09:47 -05:00
vnc_keysym.h
vnchextile.h vnc: Fix artifacts in hextile decoding 2010-01-07 07:55:34 -06:00
x86_64.ld Fix missing symbols in .rel/.rela.plt sections 2010-02-06 22:22:27 +01:00
x_keymap.c
x_keymap.h

README

Read the documentation in qemu-doc.html.

Fabrice Bellard.