qemu/block
Stefan Hajnoczi dc88a467ec block: count bdrv_co_rw_vmstate() requests
Call bdrv_inc/dec_in_flight() for vmstate reads/writes.  This seems
unnecessary at first glance because vmstate reads/writes are done
synchronously while the guest is stopped.  But we need the bdrv_wakeup()
in bdrv_dec_in_flight() so the main loop sees request completion.
Besides, it's cleaner to count vmstate reads/writes like ordinary
read/write requests.

The bdrv_wakeup() partially fixes a 'savevm' hang with -object iothread.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2017-06-26 14:51:13 +02:00
..
accounting.c block: make accounting thread-safe 2017-06-16 07:55:00 +08:00
backup.c blockjob: introduce block_job_early_fail 2017-05-24 16:38:51 -04:00
blkdebug.c qapi: merge QInt and QFloat in QNum 2017-06-20 14:31:31 +02:00
blkreplay.c
blkverify.c qobject: Use simpler QDict/QList scalar insertion macros 2017-05-09 09:13:51 +02:00
block-backend.c block: split BlockAcctStats creation and setup 2017-06-16 07:55:00 +08:00
bochs.c
cloop.c
commit.c commit: Fix completion with extra reference 2017-06-26 14:51:12 +02:00
crypto.c crypto: move 'opaque' parameter to (nearly) the end of parameter list 2017-05-09 14:41:47 +01:00
curl.c curl: do not do aio_poll when waiting for a free CURLState 2017-05-16 10:34:50 -04:00
dirty-bitmap.c block: protect modification of dirty bitmaps with a mutex 2017-06-16 07:55:00 +08:00
dmg-bz2.c
dmg.c
dmg.h
file-posix.c block/file-*: *_parse_filename() and colons 2017-05-29 15:39:54 +02:00
file-win32.c block/file-*: *_parse_filename() and colons 2017-05-29 15:39:54 +02:00
gluster.c block/gluster.c: Handle qdict_array_entries() failure 2017-06-09 08:41:29 -04:00
io.c block: count bdrv_co_rw_vmstate() requests 2017-06-26 14:51:13 +02:00
iscsi-opts.c
iscsi.c block/iscsi: enable filename option and parsing 2017-06-14 17:39:46 -04:00
linux-aio.c
Makefile.objs
mirror.c block: protect modification of dirty bitmaps with a mutex 2017-06-16 07:55:00 +08:00
nbd-client.c nbd: rename read_sync and friends 2017-06-15 11:04:06 +02:00
nbd-client.h
nbd.c qapi: merge QInt and QFloat in QNum 2017-06-20 14:31:31 +02:00
nfs.c QAPI patches for 2017-06-09 2017-06-22 11:34:39 +01:00
null.c qobject: Use simpler QDict/QList scalar insertion macros 2017-05-09 09:13:51 +02:00
parallels.c
qapi.c QAPI patches for 2017-06-09 2017-06-22 11:34:39 +01:00
qcow.c block/qcow.c: Fix memory leak in qcow_create() 2017-06-09 13:46:20 +02:00
qcow2-cache.c
qcow2-cluster.c block: Tweak error message related to qemu-img amend 2017-05-29 15:39:54 +02:00
qcow2-refcount.c qcow2: Make distinction between zero cluster types obvious 2017-05-11 14:28:07 +02:00
qcow2-snapshot.c qcow2: Discard/zero clusters by byte count 2017-05-11 14:28:07 +02:00
qcow2.c qcow2: remove extra local_error variable 2017-05-29 15:39:53 +02:00
qcow2.h qcow2: Discard/zero clusters by byte count 2017-05-11 14:28:07 +02:00
qed-check.c
qed-cluster.c
qed-gencb.c
qed-l2-cache.c
qed-table.c
qed.c migration: migration.h was not needed 2017-05-18 19:20:59 +02:00
qed.h
quorum.c qapi: merge QInt and QFloat in QNum 2017-06-20 14:31:31 +02:00
raw-format.c
rbd.c block/rbd: enable filename option and parsing 2017-06-14 17:39:46 -04:00
replication.c block: Make 'replication_state' an enum 2017-05-07 09:57:51 +03:00
sheepdog.c QAPI patches for 2017-06-09 2017-06-22 11:34:39 +01:00
snapshot.c qobject: Use simpler QDict/QList scalar insertion macros 2017-05-09 09:13:51 +02:00
ssh.c qapi: merge QInt and QFloat in QNum 2017-06-20 14:31:31 +02:00
stream.c stream: fix crash in stream_start() when block_job_create() fails 2017-05-26 16:48:21 +02:00
throttle-groups.c throttle-groups: protect throttled requests with a CoMutex 2017-06-16 07:55:00 +08:00
trace-events
vdi.c migration: Create migration/blocker.h 2017-05-17 12:04:59 +02:00
vhdx-endian.c
vhdx-log.c
vhdx.c migration: Create migration/blocker.h 2017-05-17 12:04:59 +02:00
vhdx.h
vmdk.c migration: Create migration/blocker.h 2017-05-17 12:04:59 +02:00
vpc.c migration: Create migration/blocker.h 2017-05-17 12:04:59 +02:00
vvfat.c qapi: merge QInt and QFloat in QNum 2017-06-20 14:31:31 +02:00
vxhs.c qobject: Use simpler QDict/QList scalar insertion macros 2017-05-09 09:13:51 +02:00
win32-aio.c
write-threshold.c