qemu-e2k/hw/block
Stefan Hajnoczi 48ff269272 dataplane: replace internal thread with IOThread
Today virtio-blk dataplane uses a 1:1 device-per-thread model.  Now that
IOThreads have been introduced we can generalize this to N:M devices per
threads.

This patch drops thread code from dataplane in favor of running inside
an IOThread AioContext.

As a bonus we solve the case where a guest keeps submitting I/O requests
while dataplane is trying to stop.  Previously the dataplane thread
would continue to process requests until the request gave it a break.
Now we can shut down in bounded time thanks to
aio_context_acquire/release.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2014-03-13 14:42:24 +01:00
..
dataplane dataplane: replace internal thread with IOThread 2014-03-13 14:42:24 +01:00
block.c
cdrom.c bswap.h: Remove cpu_to_be32wu() 2013-11-05 19:57:47 -08:00
ecc.c
fdc.c qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
hd-geometry.c
m25p80.c blockdev: Remove IF_* check for read-only blockdev_init 2013-10-11 16:50:01 +02:00
Makefile.objs pc_sysfw: do not make it a device anymore 2013-08-12 09:31:14 -05:00
nand.c nand: Don't use qdev_create() in nand_init() 2014-02-14 16:22:31 +01:00
nvme.c hw: set interrupts using pci irq wrappers 2013-10-14 17:11:45 +03:00
nvme.h NVMe: Initial commit for new storage interface 2013-06-17 17:47:59 +02:00
onenand.c onenand: QOM cast cleanup 2013-07-29 21:05:58 +02:00
pflash_cfi01.c Fix NOR flash device ID reading 2013-12-17 19:42:27 +00:00
pflash_cfi02.c pflash_cfi02.c: fix debug macro 2013-09-01 19:32:42 +04:00
tc58128.c shix: Don't require firmware presence for qtest 2013-11-05 17:47:29 +01:00
virtio-blk.c block: rename buffer_alignment to guest_block_size 2014-01-24 17:40:01 +01:00
xen_blkif.h hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
xen_disk.c Block patches 2014-02-25 10:50:11 +00:00