qemu-e2k/hw
Kevin Wolf 680f200217 virtio-blk: Increase in_flight for request restart BH
virtio_blk_dma_restart_bh() submits new requests, so in order to make
sure that these requests are not started inside a drained section of the
attached BlockBackend, we need to make sure that draining the
BlockBackend waits for the BH to be executed.

This BH is still questionable because its scheduled in the main thread
instead of the configured iothread. Leave a FIXME comment for this.

But with this fix, enabling the data plane at least waits for these
requests (in bdrv_set_aio_context()) instead of changing the AioContext
under their feet and making them run in the wrong thread, causing
crashes and failures (e.g. due to missing locking).

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2019-02-25 15:03:19 +01:00
..
9pfs
acpi qdev: pass an Object * to qbus_set_hotplug_handler() 2019-02-17 21:54:02 +11:00
adc
alpha hw/alpha/Makefile.objs: Create CONFIG_* for alpha 2019-02-05 16:50:20 +01:00
arm hw/arm/armsse: Make 0x5... alias region work for per-CPU devices 2019-02-21 18:17:48 +00:00
audio
block virtio-blk: Increase in_flight for request restart BH 2019-02-25 15:03:19 +01:00
bt char: allow specifying a GMainContext at opening time 2019-02-13 14:23:39 +01:00
char hw/char/pl011: Use '0x' prefix when logging hex numbers 2019-02-21 18:17:46 +00:00
core qdev: pass an Object * to qbus_set_hotplug_handler() 2019-02-17 21:54:02 +11:00
cpu hw/cpu/cluster: Mark the cpu-cluster device with user_creatable = false 2019-02-06 15:55:56 +01:00
cris hw/cris/Makefile.objs: Create CONFIG_* for cris 2019-02-05 16:50:20 +01:00
display vga: bugfixes and edid support for virtio-vga 2019-02-25 12:49:07 +00:00
dma hw/dma/i8257: Use qemu_log_mask(UNIMP) instead of fprintf 2019-02-14 11:46:30 +01:00
gpio
hppa hw/hppa/dino: mask out lower 2 bits of PCI config addr 2019-02-21 10:16:19 -08:00
hyperv
i2c hw/i2c/Makefile.objs: Create new CONFIG_* variables for EEPROM and ACPI controller 2019-02-05 16:50:21 +01:00
i386 * cpu-exec fixes (Emilio, Laurent) 2019-02-05 19:39:22 +00:00
ide ide: split ioport registration to a separate file 2019-02-05 16:50:19 +01:00
input pckbd: Convert DPRINTF->trace 2019-02-14 11:46:30 +01:00
intc xics: Drop the KVM ICS class 2019-02-18 10:52:08 +11:00
ipack
ipmi
isa char: allow specifying a GMainContext at opening time 2019-02-13 14:23:39 +01:00
lm32 hw/lm32/Makefile.objs: Conditionally build lm32 and milkmyst 2019-02-05 16:50:20 +01:00
m68k hw/m68k/Makefile.objs: Conditionally build boards 2019-02-05 16:50:19 +01:00
mem
microblaze hw/microblaze/Makefile.objs: Create configs for petalogix and xilinx boards 2019-02-05 16:50:19 +01:00
mips target/mips: fulong2e: Dynamically generate SPD EEPROM data 2019-02-21 19:36:47 +01:00
misc MIPS queue for February 21st, 2019, v2 2019-02-22 11:26:17 +00:00
moxie hw/moxie/Makefile.objs: Conditionally build moxie 2019-02-05 16:50:20 +01:00
net hw/pci-host/Makefile.objs: make CONFIGS clear for PCI EXPRESS 2019-02-05 16:50:19 +01:00
nios2 hw/nios2/Makefile.objs: Conditionally build nios2 2019-02-05 16:50:20 +01:00
nvram fw_cfg: fix the life cycle and the name of "qemu_extra_params_fw" 2019-02-05 10:58:33 -05:00
openrisc hw/openrisc/Makefile.objs: Create CONFIG_* for openrisc 2019-02-05 16:50:21 +01:00
pci qdev: pass an Object * to qbus_set_hotplug_handler() 2019-02-17 21:54:02 +11:00
pci-bridge
pci-host hw/pci-host/bonito.c: Add PCI mem region mapped at the correct address 2019-02-21 19:36:47 +01:00
pcmcia
ppc ppc patch queue 2019-02-19 2019-02-18 16:20:13 +00:00
rdma
riscv riscv: Ensure the kernel start address is correctly cast 2019-02-11 15:56:22 -08:00
s390x ppc patch queue 2019-02-19 2019-02-18 16:20:13 +00:00
scsi qdev: pass an Object * to qbus_set_hotplug_handler() 2019-02-17 21:54:02 +11:00
sd
sh4 * cpu-exec fixes (Emilio, Laurent) 2019-02-05 19:39:22 +00:00
smbios
sparc qemu-sparc queue 2019-02-07 16:49:30 +00:00
sparc64 hw/sparc64: Explicitly set default_display = "std" 2019-02-14 11:46:30 +01:00
ssi
timer hw/timer/pl031: Convert to using trace events 2019-02-21 18:17:46 +00:00
tpm
tricore hw/tricore/Makefile.objs: Create CONFIG_* for tricore 2019-02-05 16:50:21 +01:00
unicore32 hw/unicore32/puv3: Drop useless inclusion of "hw/i386/pc.h" 2019-02-06 15:54:12 +01:00
usb usb: remove unnecessary NULL device check from usb_ep_get() 2019-02-20 09:41:23 +01:00
vfio hw/vfio/common: Refactor container initialization 2019-02-21 21:07:03 -07:00
virtio hw/virtio: Use CONFIG_VIRTIO_PCI switch instead of CONFIG_PCI 2019-02-05 10:58:33 -05:00
watchdog
xen xen: fix xen-bus state model to allow frontend re-connection 2019-02-04 11:04:49 +00:00
xenpv
xtensa hw/xtensa/Makefile.objs: Build xtensa_sim and xtensa_fpga conditionally 2019-02-05 16:50:20 +01:00
Makefile.objs hw/vfio/Makefile.objs: Create new CONFIG_* variables for VFIO core and PCI 2019-02-05 16:50:21 +01:00