qemu-e2k/hw
Fam Zheng 3718d8ab65 block: Replace in_use with operation blocker
This drops BlockDriverState.in_use with op_blockers:

  - Call bdrv_op_block_all in place of bdrv_set_in_use(bs, 1).

  - Call bdrv_op_unblock_all in place of bdrv_set_in_use(bs, 0).

  - Check bdrv_op_is_blocked() in place of bdrv_in_use(bs).

    The specific types are used, e.g. in place of starting block backup,
    bdrv_op_is_blocked(bs, BLOCK_OP_TYPE_BACKUP, ...).

    There is one exception in block_job_create, where
    bdrv_op_blocker_is_empty() is used, because we don't know the operation
    type here. This doesn't matter because in a few commits away we will drop
    the check and move it to callers that _do_ know the type.

  - Check bdrv_op_blocker_is_empty() in place of assert(!bs->in_use).

Note: there is only bdrv_op_block_all and bdrv_op_unblock_all callers at
this moment. So although the checks are specific to op types, this
changes can still be seen as identical logic with previously with
in_use. The difference is error message are improved because of blocker
error info.

Signed-off-by: Fam Zheng <famz@redhat.com>
Reviewed-by: Jeff Cody <jcody@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2014-05-28 14:28:46 +02:00
..
9pfs hw/9pfs: Add include file for exported symbol 2014-05-07 21:00:43 +04:00
acpi acpi/pcihp.c: Rewrite acpi_pcihp_get_bsel using object_property_get_int 2014-05-07 12:13:42 +03:00
alpha exec: Make stq_*_phys input an AddressSpace 2014-02-11 22:57:12 +10:00
arm hw/arm/stellaris: Correct handling of GPTM TAR register 2014-05-13 16:09:39 +01:00
audio hw/audio/intel-hda: Avoid shift into sign bit 2014-05-20 08:49:21 +02:00
block block: Replace in_use with operation blocker 2014-05-28 14:28:46 +02:00
bt Preparation for usb-bt-dongle conditional build 2013-09-10 11:14:41 +02:00
char input: sparc32 kbd: claim en-us layout 2014-05-16 08:30:12 +02:00
core savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
cpu icc_bus: QOM'ify ICC 2013-12-24 18:02:18 +01:00
cris cris: Remove the CRIS PIC glue 2014-02-03 14:04:00 +00:00
display jazz_led: Add missing break in switch case 2014-05-24 00:07:56 +04:00
dma migration/next for 20140515 2014-05-15 17:29:03 +01:00
gpio savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
i2c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
i386 pc: port 92 reset requires a low->high transition 2014-05-13 13:22:29 +02:00
ide savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
input input: switch hid mouse and tablet to the new input layer api. 2014-05-26 08:42:43 +02:00
intc s390x/virtio-ccw: wire up irq routing and irqfds 2014-05-20 13:05:58 +02:00
ipack savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
isa PortioList: Store PortioList in device state 2014-05-05 20:58:33 +02:00
lm32 hw/lm32: print error if cpu model is not found 2014-02-04 19:47:39 +01:00
m68k an5206: Don't enforce use of kernel for qtest 2013-11-05 17:47:29 +01:00
microblaze microblaze: boot: Don't hack the elf entry point 2014-05-13 09:12:40 +10:00
mips hw/mips: Add missing 'static' and 'const' attributes 2014-05-07 21:00:43 +04:00
misc lm32: remove lm32_sys 2014-05-24 19:43:52 +02:00
moxie moxie: fix load_elf() usage 2014-03-05 03:06:46 +01:00
net net: cadence_gem: Fix top comment 2014-05-26 10:41:22 +04:00
nvram savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
openrisc openrisc-timer: Reduce overhead, Separate clock update functions 2013-11-20 21:46:45 +08:00
pci pci: move dereferencing of root only after verifying valid root pointer 2014-05-24 00:10:29 +04:00
pci-bridge pci/shpc: convert SHPC hotplug to use hotplug-handler API 2014-02-10 10:27:00 +02:00
pci-host savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
pcmcia qom: Add check() argument to object_property_add_link() 2014-03-19 22:23:13 +01:00
ppc hw: Add missing 'static' attributes 2014-05-07 21:00:43 +04:00
s390x s390x/virtio-ccw: wire up irq routing and irqfds 2014-05-20 13:05:58 +02:00
scsi Merge remote-tracking branch 'remotes/bonzini/scsi-next' into staging 2014-05-22 15:27:46 +01:00
sd savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
sh4 cputlb: Change tlb_flush() argument to CPUState 2014-03-13 19:52:47 +01:00
sparc sun4m: Add Sun CG3 framebuffer initialisation function 2014-02-27 10:01:41 +00:00
sparc64 pc,pci,virtio fixes and cleanups 2013-09-03 12:31:07 -05:00
ssi savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
timer qapi: Replace uncommon use of the error API by the common one 2014-05-15 14:00:46 -04:00
tpm aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
unicore32 console: add head to index to qemu consoles. 2014-03-05 09:52:04 +01:00
usb usb: add input routing support for tablet and keyboard 2014-05-26 08:42:43 +02:00
virtio qapi: Replace uncommon use of the error API by the common one 2014-05-15 14:00:46 -04:00
watchdog PortioList: Store PortioList in device state 2014-05-05 20:58:33 +02:00
xen trivial patches for 2014-05-07 2014-05-07 18:38:39 +01:00
xenpv xen: move Xen PV machine files to hw/xenpv 2014-05-07 16:14:50 +00:00
xtensa hw/xtensa: add support for ML605 and KC705 FPGA board 2014-02-24 04:47:01 +04:00
Makefile.objs hw/9pfs: Include virtio-9p-device.o in build 2014-03-04 09:20:49 +05:30