adding Irix (and, to a lesser extent, Solaris) userland emulation to QEMU
Go to file
Kevin Wolf 6fd82592ce 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>
(cherry picked from commit f21dc3a465)

Conflicts:

	block/vdi.c

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2010-07-14 11:50:47 +02:00
QMP QMP: Update spec file 2009-12-19 08:26:28 -06:00
audio audio/alsa: Spelling typo (paramters) 2010-06-30 23:39:08 +02:00
block block/vdi: Fix image opening and creation for odd disk sizes 2010-07-14 11:50:47 +02:00
bsd-user user: move CPU reset call to main.c for x86/PPC/Sparc 2009-11-07 10:37:06 +00:00
darwin-user user: move CPU reset call to main.c for x86/PPC/Sparc 2009-11-07 10:37:06 +00:00
default-configs sh_pci: fix memory and I/O access 2010-04-14 00:54:38 +02:00
fpu Add support for GNU/kFreeBSD 2009-11-29 18:00:41 +01:00
gdb-xml
hw Correct definitions for FD_CMD_SAVE and FD_CMD_RESTORE 2010-06-15 22:50:47 +02:00
linux-user linux-user: switch default ppc64 CPU to 970fx from 970 2010-04-09 18:40:39 +02:00
net net: Fix bogus "Warning: vlan 0 with no nics" with -device 2010-02-23 14:07:58 -06:00
pc-bios Fix multiboot compilation 2010-06-09 12:36:11 +02:00
roms pc-bios: update to newer version of (stable) seabios 2010-02-23 14:07:57 -06:00
slirp don't dereference NULL after failed strdup 2010-02-23 14:07:58 -06:00
target-alpha alpha: fix compile 2009-12-20 10:27:44 +00:00
target-arm target-arm : fix parallel saturated subtraction implementation 2010-07-01 23:57:36 +02:00
target-cris CRIS: Segmented addressing only for kernel mode. 2009-10-10 17:34:27 +02:00
target-i386 target-i386: fix xchg rax,r8 2010-07-01 23:56:32 +02:00
target-m68k Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
target-microblaze microblaze: Restore env when raising unmapped bus access. 2009-11-12 02:14:45 +01:00
target-mips target-mips: fix DINSU instruction 2010-06-30 23:38:04 +02:00
target-ppc target-ppc: fix RFI by clearing some bits of MSR 2010-05-31 22:26:37 +02:00
target-s390x target-s390: Fail on unknown instructions 2009-12-18 16:36:37 +01:00
target-sh4 target-sh4: MMU: fix store queue addresses 2010-04-09 18:22:38 +02:00
target-sparc Sparc64: handle MMU global bit and nucleus context 2009-12-05 11:14:55 +00:00
tcg tcp/mips: Change TCG_AREG0 (fp -> s0) 2010-04-14 01:02:24 +02:00
tests tests: missing ; in if 0 2009-10-02 17:59:10 +00:00
.gitignore Add new config-devices.mak for each target 2009-10-08 21:17:10 -05:00
.gitmodules Switch pc bios from pc-bios to seabios 2009-10-30 09:42:36 -05:00
CODING_STYLE Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
COPYING
COPYING.LIB
Changelog Update for 0.12.4 release 2010-05-04 09:17:19 -05:00
LICENSE
MAINTAINERS Add S390 maintainer information 2009-12-05 17:36:06 +01:00
Makefile Fix a make -j race 2009-12-17 18:27:27 +01:00
Makefile.hw Built network devices once 2009-11-19 16:42:45 +00:00
Makefile.target Add S390x virtio machine description 2009-12-05 17:36:05 +01:00
Makefile.user user_only: compile everything with -fpie 2009-12-20 11:35:57 +02:00
README
TODO
VERSION Update for 0.12.4 release 2010-05-04 09:17:19 -05:00
a.out.h
acl.c Fix sys-queue.h conflict for good 2009-09-12 07:36:22 +00:00
acl.h Fix sys-queue.h conflict for good 2009-09-12 07:36:22 +00:00
aes.c
aes.h
aio.c block: fix aio_flush segfaults for read-only protocols (e.g. curl) 2010-05-27 13:58:57 +02:00
alpha-dis.c Remove PARAMS() macro 2009-09-25 19:53:21 +00:00
alpha.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
arm-dis.c bdf: Remove last users of FALSE/TRUE 2009-10-05 09:32:44 -05:00
arm-semi.c
arm.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
async.c Introduce contexts for asynchronous callbacks 2009-10-27 12:28:59 -05:00
balloon.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
block-migration.c block migration: Skip zero-sized disks 2009-12-03 11:45:39 -06:00
block-migration.h block migration: Report progress also via info migration 2009-12-03 10:48:53 -06:00
block.c block: Fix multiwrite with overlapping requests 2010-06-09 18:36:09 +02:00
block.h block: Convert bdrv_info_stats() to QObject 2009-12-12 08:17:32 -06:00
block_int.h qemu-img: There is more than one host device driver 2009-12-03 11:45:50 -06:00
bswap.h rename WORDS_BIGENDIAN to HOST_WORDS_BIGENDIAN 2009-07-27 14:09:21 -05:00
bt-host.c
bt-host.h
bt-vhci.c
buffered_file.c Block live migration 2009-11-17 08:49:30 -06:00
buffered_file.h
cache-utils.c
cache-utils.h
check-qdict.c QDict: Fix size update 2009-12-19 08:26:21 -06:00
check-qfloat.c Add unit test for QFloat 2009-11-17 08:49:38 -06:00
check-qint.c Fix and improve qint_from_int64_test 2009-09-26 21:26:26 +02:00
check-qjson.c Add test suite for json marshalling 2009-11-17 08:49:40 -06:00
check-qlist.c Introduce QList unit-tests 2009-10-08 21:17:18 -05:00
check-qstring.c utests: Add qstring_from_substr() unit-test 2009-12-03 09:41:19 -06:00
cmd.c Fix OpenBSD build of qemu-io 2009-11-21 09:06:46 +00:00
cmd.h
cocoa.m
config.h Makefile dependencies for device configs 2009-11-22 21:24:54 +00:00
configure user_only: compile everything with -fpie 2009-12-20 11:35:57 +02:00
console.c vc: colorize chardev title line with blue background. 2009-12-12 08:17:29 -06:00
console.h VNC: Convert do_info_vnc() to QObject 2009-12-12 08:17:33 -06:00
cpu-all.h cpu-all.h: fix cpu_get_real_ticks() #ifdef 2009-12-20 21:47:03 +01:00
cpu-common.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
cpu-defs.h Revert "kvm: x86: Save/restore exception_index" 2009-12-19 08:26:24 -06:00
cpu-exec.c kvm: Fix eflags corruption in kvm mode 2010-02-23 14:07:57 -06:00
create_config Configurable block format whitelist 2009-11-09 08:43:02 -06:00
cris-dis.c bdf: Remove last users of FALSE/TRUE 2009-10-05 09:32:44 -05:00
curses.c Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
curses_keys.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
cutils.c Probe for fdatasync() 2009-09-20 06:56:26 +00:00
d3des.c
d3des.h
def-helper.h def-helper.h allow helpers returning pointers 2009-08-22 17:23:55 +00:00
device_tree.c Fix device tree compile broken by ca20cf32ab 2009-09-23 08:41:45 +02:00
device_tree.h
dis-asm.h bdf: Remove last users of FALSE/TRUE 2009-10-05 09:32:44 -05:00
disas.c sh4 disasm fixes 2009-11-14 01:19:12 +01:00
disas.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
dma-helpers.c Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
dma.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
dyngen-exec.h tcp/mips: Change TCG_AREG0 (fp -> s0) 2010-04-14 01:02:24 +02:00
elf.h Avoid name clashes with symbols that leak from system headers 2009-07-18 13:16:51 +04:00
envlist.c Fix sys-queue.h conflict for good 2009-09-12 07:36:22 +00:00
envlist.h linux-user: compile envlist.c only once 2009-08-15 08:47:42 +00:00
exec-all.h tcg: increase TCG_MAX_OP_SIZE to 192 2009-12-01 00:06:15 +00:00
exec.c win32: pair qemu_memalign() with qemu_vfree() 2010-01-26 18:09:22 -06:00
feature_to_c.sh Fix Sparse warnings: "Using plain integer as NULL pointer" 2009-07-31 21:16:51 +00:00
gdbstub.c S390 GDB stub 2009-12-05 17:36:06 +01:00
gdbstub.h
gen-icount.h target-arm: remove cpu_T for ARM once and for all 2009-10-17 23:52:18 +02:00
host-utils.c user: compile host-utils.c only once 2009-08-16 08:03:26 +00:00
host-utils.h target-alpha: Fix generic ctz64. 2009-12-17 18:24:59 +01:00
hostregs_helper.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
hpet.h
hppa-dis.c
hppa.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
hxtool
i386-dis.c
i386.ld Fix missing symbols in .rel/.rela.plt sections 2010-06-02 20:45:03 +02:00
ia64.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
ioport-user.c Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
ioport.c Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
ioport.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
json-lexer.c json: fix PRId64 on Win32 2010-02-23 14:07:58 -06:00
json-lexer.h Add a lexer for JSON 2009-11-17 08:49:39 -06:00
json-parser.c json-parser: Fix segfault on malformed input 2010-04-09 18:41:59 +02:00
json-parser.h Add a JSON parser 2009-11-17 08:49:39 -06:00
json-streamer.c Add a JSON message boundary identifier 2009-11-17 08:49:39 -06:00
json-streamer.h Add a JSON message boundary identifier 2009-11-17 08:49:39 -06:00
keymaps.c Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
keymaps.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
kvm-all.c kvm: x86: Add support for VCPU event states 2009-12-03 15:25:57 -06:00
kvm.h kvm: x86: Add support for VCPU event states 2009-12-03 15:25:57 -06:00
libfdt_env.h
linux-aio.c linux-aio: Honour AsyncContext 2009-10-27 12:28:59 -05:00
m68k-dis.c
m68k-semi.c Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
m68k.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
microblaze-dis.c bdf: Remove last users of FALSE/TRUE 2009-10-05 09:32:44 -05:00
migration-exec.c live migration: Propagate output monitor to callback handler 2009-12-03 10:48:53 -06:00
migration-fd.c live migration: Propagate output monitor to callback handler 2009-12-03 10:48:53 -06:00
migration-tcp.c Don't leak file descriptors 2009-12-03 11:45:50 -06:00
migration-unix.c Avoid permanently disabled QEMU monitor when UNIX migration fails 2009-12-19 08:26:20 -06:00
migration.c Revert "monitor: Convert do_migrate_set_speed() to QObject" 2009-12-19 08:26:28 -06:00
migration.h Revert "monitor: Convert do_migrate_set_speed() to QObject" 2009-12-19 08:26:28 -06:00
mips-dis.c
mips.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
module.c Fix sys-queue.h conflict for good 2009-09-12 07:36:22 +00:00
module.h
monitor.c QMP: Fix asynchronous events delivery 2010-01-20 08:53:24 -06:00
monitor.h Revert "monitor: Command-line flag to enable control mode" 2009-12-12 08:17:29 -06:00
nbd.c
nbd.h
net-checksum.c
net.c net: remove broken net_set_boot_mask() boot device validation 2010-04-11 12:33:21 +02:00
net.h net: remove broken net_set_boot_mask() boot device validation 2010-04-11 12:33:21 +02:00
osdep.c osdep.c: Fix accept4 fallback 2010-01-13 17:22:33 -06:00
osdep.h qdev: move DO_UPCAST() into osdep.h 2009-12-03 09:41:29 -06:00
path.c user: compile path.c only once 2009-08-15 07:51:59 +00:00
pci-ids.txt
posix-aio-compat.c posix-aio-compat: Fix error check 2009-12-03 15:26:00 -06:00
ppc-dis.c Work around OpenSolaris sys/regset.h namespace pollution 2009-09-12 12:36:11 +00:00
ppc.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
ppc64.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
qbool.c Add a QBool type 2009-11-17 08:49:39 -06:00
qbool.h Add a QBool type 2009-11-17 08:49:39 -06:00
qdict-test-data.txt Introduce QDict test data file 2009-09-04 09:37:34 -05:00
qdict.c QDict: Fix size update 2009-12-19 08:26:21 -06:00
qdict.h QDict: Introduce qdict_get_qlist() 2009-12-12 08:17:31 -06:00
qemu-aio.h Add qemu_aio_process_queue() 2009-10-27 12:28:59 -05:00
qemu-binfmt-conf.sh
qemu-char.c Fix corner case in chardev udp: parameter 2010-03-16 08:40:50 +01:00
qemu-char.h char: Convert qemu_chr_info() to QObject 2009-12-12 08:17:32 -06:00
qemu-common.h block: avoid creating too large iovecs in multiwrite_merge 2010-04-09 18:41:59 +02:00
qemu-config.c rework -monitor handling, switch to QemuOpts 2009-12-12 08:17:30 -06:00
qemu-config.h defaults: update device_list[] 2009-12-19 08:26:21 -06:00
qemu-doc.texi ARM PBX-A9 board support 2009-11-19 16:45:21 +00:00
qemu-img-cmds.hx Documentation: Don't mention old qemu-img options 2009-11-09 08:43:12 -06:00
qemu-img.c qemu-img: use the heap instead of the huge stack array for win32 2010-05-07 09:07:42 +02:00
qemu-img.texi Documentation: Add options to image format descriptions 2009-11-09 08:43:12 -06:00
qemu-io.c qemu-io: Fix memory leak 2009-12-19 08:26:20 -06:00
qemu-lock.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
qemu-log.h
qemu-malloc.c Do not abort on qemu_malloc(0) in production builds 2009-12-12 08:17:26 -06:00
qemu-monitor.hx Fix typo in balloon help 2010-05-28 22:59:04 +02:00
qemu-nbd.c win32: pair qemu_memalign() with qemu_vfree() 2010-01-26 18:09:22 -06:00
qemu-nbd.texi
qemu-objects.h Introduce qemu-objects.h header file 2009-12-12 08:17:31 -06:00
qemu-option.c QemuOpts: allow larger option values. 2009-12-12 08:17:30 -06:00
qemu-option.h Add qemu_opts_validate() for post parsing validation 2009-10-06 14:36:11 -05:00
qemu-options.hx qemu-options: add documentation for stdio signal=on|off 2010-07-13 21:18:13 +02:00
qemu-queue.h Import a simple queue implementation from NetBSD 2009-12-03 10:48:52 -06:00
qemu-sockets.c qemu-sockets: avoid strlen of NULL pointer 2010-05-27 15:52:42 +02:00
qemu-tech.texi Unbreak large mem support by removing kqemu 2009-08-24 08:02:55 -05:00
qemu-thread.c qemu-thread: use pthread_equal 2009-07-22 10:58:49 -05:00
qemu-thread.h
qemu-timer.h Introduce QEMU_CLOCK_HOST 2009-10-05 09:32:45 -05:00
qemu-tool.c QMP: Asynchronous events infrastructure 2009-12-03 09:41:23 -06:00
qemu.sasl
qemu_socket.h Don't leak file descriptors 2009-12-03 11:45:50 -06:00
qerror.c QMP: add human-readable description to error response 2009-12-07 16:36:50 -06:00
qerror.h Fix recently added QERR_ definitions 2009-12-12 08:17:28 -06:00
qfloat.c Add a QFloat datatype 2009-11-17 08:49:38 -06:00
qfloat.h Add a QFloat datatype 2009-11-17 08:49:38 -06:00
qint.c Shuffle lines to avoid gcc 3 warning about redundant redeclaration 2009-09-04 17:43:37 +00:00
qint.h Introduce QInt 2009-09-04 09:37:29 -05:00
qjson.c Introduce QError 2009-12-03 09:41:20 -06:00
qjson.h QJSON: Introduce qobject_from_jsonv() 2009-12-03 09:41:18 -06:00
qlist.c Add operations to qlist to allow it to be used as a stack 2009-11-17 08:49:38 -06:00
qlist.h Add operations to qlist to allow it to be used as a stack 2009-11-17 08:49:38 -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
readline.h
rules.mak qemu: delete rule target on error 2009-12-07 16:36:50 -06:00
s390-dis.c
s390.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
savevm.c fix savevm command without id or tag 2010-01-26 15:59:11 -06:00
sdl.c win32/sdl: Fix toggle full screen 2010-01-26 18:09:32 -06:00
sdl_keysym.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
sdl_zoom.c
sdl_zoom.h
sdl_zoom_template.h
sh4-dis.c sh4 disasm fixes 2009-11-14 01:19:12 +01:00
softmmu-semi.h
softmmu_defs.h
softmmu_exec.h
softmmu_header.h Remove dead i386 assembly code from softmmu_header.h 2009-07-16 17:28:50 -05:00
softmmu_template.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
sparc-dis.c Fix Sparse warnings: "Using plain integer as NULL pointer" 2009-07-31 21:16:51 +00:00
sparc.ld Fix sparc.ld 2009-09-13 19:38:43 +00:00
sparc64.ld set SEARCH_PATH for the linker script from output of ld --verbose -v 2009-07-27 14:10:56 -05:00
sysemu.h PCI: Convert pci_device_hot_add() to QObject 2009-12-12 08:17:32 -06:00
targphys.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
tcg-runtime.c Compile TCG runtime library only once 2009-09-20 19:06:34 +00:00
texi2pod.pl
thunk.c
thunk.h
translate-all.c
uboot_image.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
usb-bsd.c qdev: Replace device names containing whitespace 2009-12-12 08:17:28 -06:00
usb-linux.c Fix QEMU_WARN_UNUSED_RESULT 2010-01-19 16:42:03 -06:00
usb-stub.c
vgafont.h
vl.c Fix incoming migration with iothread 2010-04-14 00:10:24 +02:00
vnc-auth-sasl.c
vnc-auth-sasl.h
vnc-auth-vencrypt.c
vnc-auth-vencrypt.h
vnc-tls.c
vnc-tls.h
vnc.c Fix SIGFPE for vnc display of width/height = 1 2010-04-11 13:34:43 +02:00
vnc.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
vnc_keysym.h Revert "Get rid of _t suffix" 2009-10-01 16:12:16 -05:00
vnchextile.h vnc: Fix artifacts in hextile decoding 2010-01-07 07:59:28 -06:00
x86_64.ld Fix missing symbols in .rel/.rela.plt sections 2010-06-02 20:45:03 +02:00
x_keymap.c
x_keymap.h

README

Read the documentation in qemu-doc.html.

Fabrice Bellard.