No description
Find a file
Stefan Hajnoczi 392808b49b virtio-blk: add x-data-plane=on|off performance feature
The virtio-blk-data-plane feature is easy to integrate into
hw/virtio-blk.c.  The data plane can be started and stopped similar to
vhost-net.

Users can take advantage of the virtio-blk-data-plane feature using the
new -device virtio-blk-pci,x-data-plane=on property.

The x-data-plane name was chosen because at this stage the feature is
experimental and likely to see changes in the future.

If the VM configuration does not support virtio-blk-data-plane an error
message is printed.  Although we could fall back to regular virtio-blk,
I prefer the explicit approach since it prompts the user to fix their
configuration if they want the performance benefit of
virtio-blk-data-plane.

Limitations:
 * Only format=raw is supported
 * Live migration is not supported
 * Block jobs, hot unplug, and other operations fail with -EBUSY
 * I/O throttling limits are ignored
 * Only Linux hosts are supported due to Linux AIO usage

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-01-02 16:08:51 +01:00
audio softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
backends softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
block raw-posix: add raw_get_aio_fd() for virtio-blk-data-plane 2013-01-02 15:31:39 +01:00
bsd-user misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
default-configs
disas
docs
fpu fpu: move public header file to include/fpu 2012-12-19 08:32:46 +01:00
fsdev misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
gdb-xml
hw virtio-blk: add x-data-plane=on|off performance feature 2013-01-02 16:08:51 +01:00
include iov: add qemu_iovec_concat_iov() 2013-01-02 15:58:09 +01:00
ldscripts
libcacard misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
linux-headers
linux-user Merge remote-tracking branch 'bonzini/header-dirs' into staging 2012-12-19 17:15:39 -06:00
net net: add missing include file 2012-12-22 12:06:48 +00:00
pc-bios
pixman@97336fad32
qapi misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qga misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
QMP
qom misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
roms
scripts build: Use separate makefile for "trace/" 2012-12-23 14:28:02 -06:00
slirp softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
stubs softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
sysconfigs/target
target-alpha Merge branch 'master' of git://git.qemu.org/qemu into qom-cpu 2012-12-23 00:40:49 +01:00
target-arm Merge branch 'master' of git://git.qemu.org/qemu into qom-cpu 2012-12-23 00:40:49 +01:00
target-cris misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
target-i386 Merge branch 'qom-cpu' of git://repo.or.cz/qemu/afaerber 2012-12-28 16:08:23 +00:00
target-lm32 misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
target-m68k Merge branch 'master' of git://git.qemu.org/qemu into qom-cpu 2012-12-23 00:40:49 +01:00
target-microblaze fpu: move public header file to include/fpu 2012-12-19 08:32:46 +01:00
target-mips target-mips: Use EXCP_SC rather than a magic number 2013-01-01 12:02:24 +01:00
target-openrisc fpu: move public header file to include/fpu 2012-12-19 08:32:46 +01:00
target-ppc Merge branch 'master' of git://git.qemu.org/qemu into qom-cpu 2012-12-23 00:40:49 +01:00
target-s390x Merge branch 'master' of git://git.qemu.org/qemu into qom-cpu 2012-12-23 00:40:49 +01:00
target-sh4 fpu: move public header file to include/fpu 2012-12-19 08:32:46 +01:00
target-sparc fpu: move public header file to include/fpu 2012-12-19 08:32:46 +01:00
target-unicore32 configure: allow disabling pixman if not needed 2012-12-23 14:38:52 -06:00
target-xtensa target-xtensa: fix search_pc for the last TB opcode 2012-12-22 12:09:24 +00:00
tcg tcg-hppa: Fix typo in brcond2 2012-12-29 12:21:53 +00:00
tests test-iov: add iov_discard_front/back() testcases 2013-01-02 15:58:09 +01:00
trace build: Use separate makefile for "trace/" 2012-12-23 14:28:02 -06:00
ui build: fix includes for VNC 2012-12-22 12:04:00 +00:00
.exrc
.gitignore build: Use separate makefile for "trace/" 2012-12-23 14:28:02 -06:00
.gitmodules
.mailmap
acl.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
aes.c block: move include files to include/block/ 2012-12-19 08:31:31 +01:00
aio-posix.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
aio-win32.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
arch_init.c ram: refactor ram_save_block() return value 2012-12-20 23:09:40 +01:00
async.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
balloon.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
bitmap.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
bitops.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
block-migration.c savevm: New save live migration method: pending 2012-12-20 23:09:25 +01:00
block.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
blockdev-nbd.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
blockdev.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
blockjob.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
bt-host.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
bt-vhci.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
cache-utils.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
Changelog
cmd.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
cmd.h
CODING_STYLE
compatfd.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
configure configure: add CONFIG_VIRTIO_BLK_DATA_PLANE 2013-01-02 15:31:39 +01: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 block: move include files to include/block/ 2012-12-19 08:31:31 +01:00
coroutine-ucontext.c block: move include files to include/block/ 2012-12-19 08:31:31 +01:00
coroutine-win32.c block: move include files to include/block/ 2012-12-19 08:31:31 +01:00
cpu-exec.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
cpus.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
cputlb.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
cutils.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
device_tree.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
disas.c monitor: move include files to include/monitor/ 2012-12-19 08:31:32 +01:00
dma-helpers.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
dump-stub.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
dump.c exec: change RAM list to a TAILQ 2012-12-20 23:08:47 +01:00
envlist.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
error.c
event_notifier-posix.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
event_notifier-win32.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
exec.c protect the ramlist with a separate mutex 2012-12-20 23:08:47 +01:00
gdbstub.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
HACKING
hmp-commands.hx
hmp.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
hmp.h
host-utils.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
iohandler.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
ioport.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
iov.c iov: add qemu_iovec_concat_iov() 2013-01-02 15:58:09 +01:00
json-lexer.c
json-parser.c
json-streamer.c
kvm-all.c Merge branch 'master' of git://git.qemu.org/qemu into qom-cpu 2012-12-23 00:40:49 +01:00
kvm-stub.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
LICENSE
main-loop.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
MAINTAINERS Merge branch 'qom-cpu' of git://repo.or.cz/qemu/afaerber 2012-12-28 16:08:23 +00:00
Makefile build: Use separate makefile for "trace/" 2012-12-23 14:28:02 -06:00
Makefile.objs build: Use separate makefile for "trace/" 2012-12-23 14:28:02 -06:00
Makefile.target build: fix includes for VNC 2012-12-22 12:04:00 +00:00
memory.c memory: introduce memory_region_test_and_clear_dirty 2012-12-20 23:09:39 +01:00
memory_mapping-stub.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
memory_mapping.c exec: change RAM list to a TAILQ 2012-12-20 23:08:47 +01:00
migration-exec.c migration: make writes blocking 2012-12-20 23:09:25 +01:00
migration-fd.c migration: make writes blocking 2012-12-20 23:09:25 +01:00
migration-tcp.c migration: make writes blocking 2012-12-20 23:09:25 +01:00
migration-unix.c migration: make writes blocking 2012-12-20 23:09:25 +01:00
migration.c migration: merge QEMUFileBuffered into MigrationState 2012-12-20 23:09:40 +01:00
module.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
monitor.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
nbd.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
notify.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
os-posix.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
os-win32.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
osdep.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
oslib-posix.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
oslib-win32.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
page_cache.c migration: move include files to include/migration/ 2012-12-19 08:31:32 +01:00
path.c
pci-ids.txt
qapi-schema-test.json
qapi-schema.json
qbool.c
qdict-test-data.txt
qdict.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-bridge-helper.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-char.c qemu-char: Inherit ptys and improve output from -serial pty 2012-12-23 09:11:19 -06:00
qemu-config.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-coroutine-io.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-coroutine-lock.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-coroutine-sleep.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-coroutine.c block: move include files to include/block/ 2012-12-19 08:31:31 +01:00
qemu-doc.texi
qemu-error.c monitor: move include files to include/monitor/ 2012-12-19 08:31:32 +01:00
qemu-img-cmds.hx
qemu-img.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
qemu-img.texi
qemu-io.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-log.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-nbd.c block: move include files to include/block/ 2012-12-19 08:31:31 +01:00
qemu-nbd.texi
qemu-option.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-options-wrapper.h
qemu-options.h
qemu-options.hx
qemu-progress.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
qemu-seccomp.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
qemu-sockets.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-tech.texi
qemu-thread-posix.c Fix semaphores fallback code 2012-12-29 12:27:36 +00:00
qemu-thread-win32.c win32: Switch thread abstraction to us TLS variable internally 2012-12-23 09:13:15 -06:00
qemu-timer-common.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu-timer.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
qemu-tool.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
qemu-user.c monitor: move include files to include/monitor/ 2012-12-19 08:31:32 +01:00
qemu.sasl
qerror.c monitor: move include files to include/monitor/ 2012-12-19 08:31:32 +01:00
qfloat.c
qint.c
qjson.c
qlist.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qmp-commands.hx
qmp.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
qstring.c
qtest.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
readline.c monitor: move include files to include/monitor/ 2012-12-19 08:31:32 +01:00
README
rules.mak
savevm.c savevm: New save live migration method: pending 2012-12-20 23:09:25 +01:00
spice-qemu-char.c Merge remote-tracking branch 'bonzini/header-dirs' into staging 2012-12-19 17:15:39 -06:00
tcg-runtime.c
tci.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
thread-pool.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
thunk.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00
TODO
trace-events dataplane: add virtio-blk data plane code 2013-01-02 16:08:47 +01:00
trace.h build: Use separate makefile for "trace/" 2012-12-23 14:28:02 -06:00
translate-all.c translate-all.c: Use tb1->phys_hash_next directly in tb_remove 2012-12-22 12:06:24 +00:00
translate-all.h
uri.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
user-exec.c Merge remote-tracking branch 'bonzini/header-dirs' into staging 2012-12-19 17:15:39 -06:00
VERSION
version.rc
vl.c softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
xen-all.c xen: add missing include 2012-12-22 12:04:44 +00:00
xen-mapcache.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00
xen-stub.c exec: move include files to include/exec/ 2012-12-19 08:31:31 +01:00

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

- QEMU team