mirror_qemu/include
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
..
block block: Replace in_use with operation blocker 2014-05-28 14:28:46 +02:00
disas disas: Implement disassembly output for A64 2014-02-08 14:50:48 +00:00
exec tcg-mips: Enable direct chaining of TBs 2014-05-24 08:48:37 -07:00
fpu softfloat: Introduce float32_to_uint64_round_to_zero 2014-04-08 11:20:00 +02:00
hw input: switch hid mouse and tablet to the new input layer api. 2014-05-26 08:42:43 +02:00
migration migration: expose xbzrle cache miss rate 2014-05-05 22:15:03 +02:00
monitor monitor: add Error-propagating monitor_handle_fd_param2() 2014-05-08 14:19:58 -04:00
net net: remove implicit peer from offload API 2014-02-25 14:31:05 +01:00
qapi purge error_is_set() 2014-05-22 18:14:01 +01:00
qemu bswap.h: Rename ldl_p, stl_p, etc to ldl_he_p, stl_he_p, etc 2014-05-24 00:07:29 +04:00
qom cpu: Avoid QOM casts for CPU() 2014-03-31 19:28:38 +02:00
sysemu s390x/virtio-ccw: wire up irq routing and irqfds 2014-05-20 13:05:58 +02:00
ui input: bind devices and input routing 2014-05-26 08:42:43 +02:00
config.h janitor: move remaining public headers to include/ 2012-12-19 08:32:46 +01:00
elf.h linux-user/elfload.c: Support ARM HWCAP2 flags 2014-05-02 21:59:36 +03:00
glib-compat.h glib: fix g_poll early timeout on windows 2014-05-09 20:57:35 +02:00
qemu-common.h util: add qemu_iovec_is_zero 2014-05-19 12:20:19 +02:00
qemu-io.h qemu-io: Fix warnings from static code analysis 2014-03-13 14:42:24 +01:00
trace.h build: some simplifications for "trace/Makefile.objs" 2013-01-12 18:42:51 +01:00