Go to file
Stefan Hajnoczi b0f2027cde dataplane: refuse to start if device is already in use
Dataplane must check whether a block device is in use before launching
the dataplane thread.  This is necessary since the thread does not
synchronize with the main loop and I/O requests could cause corruption.

One example is when a drive is added and a block job is started before
hotplugging the virtio-blk-pci adapter.  In this case we must not use
dataplane mode.

Cc: qemu-stable@nongnu.org
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-07-29 17:19:15 +02:00
audio audio: Replace static functions in header file by macros, remove GCC_ATTR 2013-06-21 22:52:50 +04:00
backends rng-random: use error_setg_file_open() 2013-06-17 11:01:14 -04:00
block gluster: Add image resize support 2013-07-29 17:07:37 +02:00
bsd-user gdbstub: Change gdb_handlesig() argument to CPUState 2013-07-23 02:41:33 +02:00
default-configs default-configs/ppc64: add all components of i82378 SuperIO chip used by prep 2013-07-25 08:12:28 -05:00
disas tcg-arm: Implement division instructions 2013-04-27 02:16:44 +02:00
docs qapi: Anonymous unions 2013-07-26 21:10:11 +02:00
dtc@bc895d6d09 dtc: add submodule 2013-04-18 13:50:53 +02:00
fpu softfloat: Fix shift128Right for shift counts 64..127 2013-06-10 11:36:12 -05:00
fsdev fsdev: Fix potential memory leak 2013-07-09 13:38:56 -05:00
gdb-xml
hw dataplane: refuse to start if device is already in use 2013-07-29 17:19:15 +02:00
include dataplane: enable virtio-blk x-data-plane=on live migration 2013-07-29 17:19:07 +02:00
libcacard libcacard: Fix cppcheck warning and remove unneeded code 2013-06-21 22:52:50 +04:00
linux-headers linux-headers: Update to v3.10-rc5 2013-06-12 13:19:10 +04:00
linux-user Merge remote-tracking branch 'riku/linux-user-for-upstream' into staging 2013-07-25 15:56:06 -05:00
net net: add support of mac-programming over macvtap in QEMU side 2013-07-15 21:23:08 +03:00
pc-bios seabios: update to 1.7.3 2013-07-24 15:37:43 +02:00
pixman@97336fad32
po po/Makefile: Use macro quiet-command for nice looking messages 2013-07-23 15:45:24 -05:00
qapi qapi: Anonymous unions 2013-07-26 21:10:11 +02:00
qga qga: escape cmdline args when registering win32 service (CVE-2013-2231) 2013-07-25 14:49:04 -05:00
QMP net: add support of mac-programming over macvtap in QEMU side 2013-07-15 21:23:08 +03:00
qobject Implement qdict_flatten() 2013-07-26 22:01:31 +02:00
qom QOM CPUState refactorings 2013-07-10 10:54:16 -05:00
roms seabios: update to 1.7.3 2013-07-24 15:37:43 +02:00
scripts qapi: Anonymous unions 2013-07-26 21:10:11 +02:00
slirp slirp: remove mbuf(m_hdr,m_dat) indirection 2013-07-19 12:52:03 +04:00
stubs cpus: Add return value for vm_stop() 2013-07-15 09:51:38 +02:00
sysconfigs/target
target-alpha cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-arm gdbstub: Change gdb_register_coprocessor() argument to CPUState 2013-07-23 02:41:33 +02:00
target-cris cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-i386 Merge remote-tracking branch 'quintela/migration.next' into staging 2013-07-23 10:57:23 -05:00
target-lm32 cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-m68k gdbstub: Change gdb_register_coprocessor() argument to CPUState 2013-07-23 02:41:33 +02:00
target-microblaze cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-mips cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-moxie cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-openrisc cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-ppc gdbstub: Change gdb_register_coprocessor() argument to CPUState 2013-07-23 02:41:33 +02:00
target-s390x cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-sh4 cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-sparc cpu: Introduce CPUClass::memory_rw_debug() for target_memory_rw_debug() 2013-07-23 02:41:33 +02:00
target-unicore32 cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook 2013-07-23 02:41:33 +02:00
target-xtensa exec: Change cpu_memory_rw_debug() argument to CPUState 2013-07-23 02:41:33 +02:00
tcg tcg-arm: Implement tcg_register_jit 2013-07-09 07:15:25 -07:00
tests Add tests for sync modes 'TOP' and 'NONE' 2013-07-26 22:01:31 +02:00
trace trace: Add ftrace tracing backend 2013-05-03 13:58:09 +02:00
ui migration: fix spice migration 2013-07-29 17:19:02 +02:00
util QemuOpts: Add qemu_opt_unset() 2013-07-26 21:10:11 +02:00
.exrc
.gitignore gitignore: unignore *.patch 2013-06-11 23:45:43 +04:00
.gitmodules pc-bios: Update palcode-clipper 2013-07-18 08:17:42 -07:00
.mailmap
aio-posix.c aio: support G_IO_HUP and G_IO_ERR 2013-02-21 16:17:31 -06:00
aio-win32.c aio: Fix return value of aio_poll() 2013-01-17 10:51:42 +01:00
arch_init.c rdma: send pc.ram 2013-07-23 11:12:00 +02:00
async.c QEMUBH: make AioContext's bh re-entrant 2013-07-19 12:29:21 +08:00
balloon.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
block-migration.c block-migration: efficiently encode zero blocks 2013-07-19 12:29:21 +08:00
block.c block: Repair the throttling code. 2013-07-29 17:07:37 +02:00
blockdev-nbd.c hw: move headers to include/ 2013-04-08 18:13:10 +02:00
blockdev.c Implement sync modes for drive-backup. 2013-07-26 22:01:31 +02:00
blockjob.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
bt-host.c sysemu: avoid proliferation of include/ subdirectories 2013-04-15 18:19:25 +02:00
bt-vhci.c sysemu: avoid proliferation of include/ subdirectories 2013-04-15 18:19:25 +02:00
Changelog
CODING_STYLE
configure Merge remote-tracking branch 'riku/linux-user-for-upstream' into staging 2013-07-25 15:56:06 -05:00
COPYING
COPYING.LIB
coroutine-gthread.c block: move include files to include/block/ 2012-12-19 08:31:31 +01:00
coroutine-sigaltstack.c Merge remote-tracking branch 'kwolf/for-anthony' into staging 2013-02-26 07:44:39 -06:00
coroutine-ucontext.c Fix warnings suppressors to honor --disable-werror 2013-04-17 10:28:04 -05:00
coroutine-win32.c block: move include files to include/block/ 2012-12-19 08:31:31 +01:00
cpu-exec.c cpu: Move singlestep_enabled field from CPU_COMMON to CPUState 2013-07-23 02:41:32 +02:00
cpus.c exec: Change cpu_memory_rw_debug() argument to CPUState 2013-07-23 02:41:33 +02:00
cputlb.c cpu: Make first_cpu and next_cpu CPUState 2013-07-09 21:32:54 +02:00
device_tree.c device_tree: Add qemu_devtree_setprop_sized_cells() utility functions 2013-07-19 12:58:46 +01:00
device-hotplug.c hw: move device-hotplug.o to toplevel, compile it once 2013-03-01 13:57:13 +01:00
disas.c exec: Change cpu_memory_rw_debug() argument to CPUState 2013-07-23 02:41:33 +02:00
dma-helpers.c dma: keep a device alive while it has SGLists 2013-07-04 17:42:30 +02:00
dump.c cpu: Make first_cpu and next_cpu CPUState 2013-07-09 21:32:54 +02:00
exec.c Merge remote-tracking branch 'riku/linux-user-for-upstream' into staging 2013-07-25 15:56:06 -05:00
gdbstub.c gdbstub: Change gdb_register_coprocessor() argument to CPUState 2013-07-23 02:41:33 +02:00
HACKING HACKING: Document vaddr type usage 2013-07-23 02:41:31 +02:00
hmp-commands.hx block: add drive_backup HMP command 2013-07-15 09:49:00 +02:00
hmp.c rdma: account for the time spent in MIG_STATE_SETUP through QMP 2013-07-23 13:06:37 +02:00
hmp.h block: add drive_backup HMP command 2013-07-15 09:49:00 +02:00
iohandler.c iohandler: switch to GPollFD 2013-02-21 16:17:31 -06:00
ioport.c Revert "ioport: remove LITTLE_ENDIAN mark for portio" 2013-07-25 08:12:27 -05:00
kvm-all.c kvm: Change kvm_{insert,remove}_breakpoint() argument to CPUState 2013-07-23 02:41:32 +02:00
kvm-stub.c kvm: Change kvm_{insert,remove}_breakpoint() argument to CPUState 2013-07-23 02:41:32 +02:00
LICENSE
main-loop.c main-loop: do not include slirp/slirp.h, use libslirp.h instead 2013-06-12 18:43:08 +04:00
MAINTAINERS tcg: Add myself to general TCG maintainership 2013-07-08 22:03:59 -07:00
Makefile Makefile: pass include directives to dtc via CPPFLAGS, not CFLAGS 2013-06-21 22:52:50 +04:00
Makefile.objs rdma: core logic 2013-07-23 11:12:00 +02:00
Makefile.target build: do not use TARGET_ARCH 2013-06-14 15:33:10 +01:00
memory_mapping.c cpu: Make first_cpu and next_cpu CPUState 2013-07-09 21:32:54 +02:00
memory.c memory: check memory region endianness, not target's 2013-07-25 08:12:28 -05:00
migration-exec.c migration: eliminate s->migration_file 2013-03-11 13:32:03 +01:00
migration-fd.c migration: eliminate s->migration_file 2013-03-11 13:32:03 +01:00
migration-rdma.c rdma: core logic 2013-07-23 11:12:00 +02:00
migration-tcp.c migration: eliminate s->migration_file 2013-03-11 13:32:03 +01:00
migration-unix.c migration: eliminate s->migration_file 2013-03-11 13:32:03 +01:00
migration.c migration: fix spice migration 2013-07-29 17:19:02 +02:00
monitor.c exec: Change cpu_memory_rw_debug() argument to CPUState 2013-07-23 02:41:33 +02:00
nbd.c nbd: support large NBD requests 2013-05-03 13:05:49 +02:00
os-posix.c Add option to mlock qemu and guest memory 2013-04-22 08:52:23 -05:00
os-win32.c qemu-timer: move timeBeginPeriod/timeEndPeriod to os-win32 2013-04-12 18:27:16 +02:00
page_cache.c remove some double-includes 2013-05-18 16:35:12 +04:00
qapi-schema-test.json qapi: add native list coverage for QMP output visitor tests 2013-05-23 09:44:21 -04:00
qapi-schema.json migration: add autoconvergence documentation 2013-07-23 15:21:09 +02:00
qdev-monitor.c qdev: Let qdev_prop_parse() pass through Error 2013-05-06 19:40:44 +02:00
qdict-test-data.txt
qemu-bridge-helper.c qemu-bridge-helper: force usage of a very high MAC address for the bridge 2013-03-28 12:58:52 -05:00
qemu-char.c char: io_channel_send: don't lose written bytes 2013-07-18 11:22:56 -05:00
qemu-coroutine-io.c rdma: export yield_until_fd_readable() 2013-06-27 02:38:36 +02:00
qemu-coroutine-lock.c block: Repair the throttling code. 2013-07-29 17:07:37 +02:00
qemu-coroutine-sleep.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-coroutine.c coroutine: stop using AioContext in CoQueue 2013-05-24 16:17:56 +02:00
qemu-doc.texi doc: we use seabios, not bochs bios 2013-06-28 22:10:34 +04:00
qemu-img-cmds.hx qemu-img: Add compare subcommand 2013-02-22 21:21:10 +01:00
qemu-img.c block: Don't parse protocol from file.filename 2013-07-15 09:49:00 +02:00
qemu-img.texi qemu-img: Add compare subcommand 2013-02-22 21:21:10 +01:00
qemu-io-cmds.c qemu-io: Interface cleanup 2013-06-06 11:27:05 +02:00
qemu-io.c qemu-io: Use the qemu version for -V 2013-06-06 11:27:05 +02:00
qemu-log.c qemu-log: default to stderr for logging output 2013-02-26 13:31:47 -06:00
qemu-nbd.c Add -f FMT / --format FMT arg to qemu-nbd 2013-04-15 14:29:20 -05:00
qemu-nbd.texi Add -f FMT / --format FMT arg to qemu-nbd 2013-04-15 14:29:20 -05:00
qemu-options-wrapper.h
qemu-options.h
qemu-options.hx doc: monitor multiplexing rewording 2013-07-19 12:52:03 +04:00
qemu-seccomp.c seccomp: add the asynchronous I/O syscalls to the whitelist 2013-05-30 11:46:07 -05:00
qemu-tech.texi
qemu-timer.c qemu-timer: move timeBeginPeriod/timeEndPeriod to os-win32 2013-04-12 18:27:16 +02:00
qemu.sasl Fix command example in qemu.sasl 2013-07-19 12:52:03 +04:00
qmp-commands.hx Implement sync modes for drive-backup. 2013-07-26 22:01:31 +02:00
qmp.c QMP: Add cpu-add command 2013-05-01 13:06:07 +02:00
qtest.c qtest: Don't reset on qtest chardev connect 2013-07-18 13:27:46 -05:00
readline.c readline: Handle xterm escape sequences for Home/End keys 2013-05-14 08:53:22 -05:00
README
rules.mak win32: fix compilation again 2013-05-03 12:04:40 -05:00
savevm.c rdma: bugfix: ram_control_save_page() 2013-07-23 11:11:59 +02:00
spice-qemu-char.c qemu-char: don't issue CHR_EVENT_OPEN in a BH 2013-06-10 11:38:37 -05:00
tcg-runtime.c tcg: Implement multiword multiply helpers 2013-02-23 17:25:28 +00:00
tci.c tci: Make tcg temporaries local to tcg_qemu_tb_exec 2013-04-11 19:58:21 +02:00
thread-pool.c threadpool: drop global thread pool 2013-03-15 16:07:51 +01:00
thunk.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
tpm.c Move TPM passthrough specific command line options to backend structure 2013-04-23 10:40:40 -05:00
trace-events trace-events: Fix up source file comments 2013-07-18 11:44:42 +08:00
translate-all.c linux-user: Unlock mmap_lock when resuming guest from page_unprotect 2013-07-23 17:28:28 +03:00
translate-all.h cputlb: Pass CPUState to cpu_unlink_tb() 2013-02-16 14:51:00 +01:00
user-exec.c linux-user: fix segmentation fault passing with h2g(x) != x 2013-07-23 17:28:28 +03:00
VERSION Open up 1.6 development 2013-05-20 10:55:18 -05:00
version.rc
vl.c add timestamp to error_report() 2013-07-10 13:42:09 -04:00
xbzrle.c Move XBZRLE encoding code to a separate file to allow testing 2013-02-01 08:32:20 +01:00
xen-all.c memory: add ref/unref calls 2013-07-04 17:42:45 +02:00
xen-mapcache.c hw: move headers to include/ 2013-04-08 18:13:10 +02:00
xen-stub.c Allow use of pc machine type (accel=xen) for Xen HVM domains. 2013-06-25 12:00:48 +00:00

Read the documentation in qemu-doc.html or on http://wiki.qemu.org

- QEMU team