qemu/block
Denis V. Lunev 968d8b0627 block: fix race in bdrv_co_discard with drive-mirror
Actually we must set dirty bitmap dirty after we have written all our
zeroes for correct processing in drive mirror code. In the other case
we can face not zeroes in this area in mirror_iteration.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Vladimir Sementsov-Ogievskiy<vsementsov@virtuozzo.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-id: 1466093381-6120-3-git-send-email-den@openvz.org
CC: Stefan Hajnoczi <stefanha@redhat.com>
CC: Kevin Wolf <kwolf@redhat.com>
CC: Max Reitz <mreitz@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2016-06-20 11:44:12 +01:00
..
accounting.c block: Clean up includes 2016-01-20 13:36:23 +01:00
archipelago.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
backup.c backup: Use BlockBackend for I/O 2016-05-25 19:04:21 +02:00
blkdebug.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
blkreplay.c blkreplay: Convert to bdrv_co_pwrite_zeroes() 2016-06-08 10:21:08 +02:00
blkverify.c block: Propagate AioContext change to all children 2016-05-19 16:45:31 +02:00
block-backend.c block: Make blk_co_preadv/pwritev() public 2016-05-25 19:04:21 +02:00
bochs.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
cloop.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
commit.c block: Create the commit block job before reopening any image 2016-06-16 15:20:37 +02:00
crypto.c Block layer patches 2016-05-12 16:33:40 +01:00
curl.c block: always compile-check debug prints 2016-05-12 15:22:08 +02:00
dirty-bitmap.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
dmg.c all: Remove unnecessary glib.h includes 2016-06-07 18:19:24 +03:00
gluster.c gluster: Convert to bdrv_co_pwrite_zeroes() 2016-06-08 10:21:08 +02:00
io.c block: fix race in bdrv_co_discard with drive-mirror 2016-06-20 11:44:12 +01:00
iscsi.c iscsi: Convert to bdrv_co_pwrite_zeroes() 2016-06-08 10:21:08 +02:00
linux-aio.c linux-aio: Cancel BH if not needed 2016-06-16 15:19:55 +02:00
Makefile.objs replay: introduce block devices record/replay 2016-03-30 12:15:57 +02:00
mirror.c block/mirror: Fix target backing BDS 2016-06-16 15:20:37 +02:00
nbd-client.c nbd: Simplify client FUA handling 2016-05-12 15:22:09 +02:00
nbd-client.h nbd: Simplify client FUA handling 2016-05-12 15:22:09 +02:00
nbd.c nbd: Simplify client FUA handling 2016-05-12 15:22:09 +02:00
nfs.c block/nfs: add missing #include "qemu/cutils.h" 2016-03-30 16:50:39 -04:00
null.c block/null: Implement bdrv_refresh_filename() 2016-06-16 15:20:37 +02:00
parallels.c block: Switch bdrv_write_zeroes() to byte interface 2016-06-08 10:21:08 +02:00
qapi.c block: Don't return throttling info in query-named-block-nodes 2016-05-19 16:45:31 +02:00
qcow2-cache.c os-posix: include sys/mman.h 2016-06-16 18:39:03 +02:00
qcow2-cluster.c qcow2: Implement .bdrv_co_pwritev() 2016-06-16 15:19:55 +02:00
qcow2-refcount.c qcow/qcow2: Use DIV_ROUND_UP 2016-06-07 18:19:24 +03:00
qcow2-snapshot.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
qcow2.c qcow2: Let vmstate call qcow2_co_preadv/pwrite directly 2016-06-16 15:19:56 +02:00
qcow2.h qcow2: Implement .bdrv_co_pwritev() 2016-06-16 15:19:55 +02:00
qcow.c block: drop support for using qcow[2] encryption with system emulators 2016-06-16 15:19:55 +02:00
qed-check.c qed: Use DIV_ROUND_UP 2016-06-07 18:19:24 +03:00
qed-cluster.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-gencb.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-l2-cache.c block: Clean up includes 2016-01-20 13:36:23 +01:00
qed-table.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
qed.c qed: Convert to bdrv_co_pwrite_zeroes() 2016-06-08 10:21:08 +02:00
qed.h util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
quorum.c block: Propagate AioContext change to all children 2016-05-19 16:45:31 +02:00
raw_bsd.c raw_bsd: Convert to bdrv_co_pwrite_zeroes() 2016-06-08 10:21:08 +02:00
raw-aio.h raw-posix: Implement .bdrv_co_preadv/pwritev 2016-06-16 15:19:55 +02:00
raw-posix.c raw-posix: Implement .bdrv_co_preadv/pwritev 2016-06-16 15:19:55 +02:00
raw-win32.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
rbd.c rbd:change error_setg() to error_setg_errno() 2016-06-16 15:20:37 +02:00
sheepdog.c block: Make .bdrv_load_vmstate() vectored 2016-06-16 15:19:55 +02:00
snapshot.c block: Fix bdrv_all_delete_snapshot() error handling 2016-06-08 10:21:09 +02:00
ssh.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
stream.c stream: Use BlockBackend for I/O 2016-05-25 19:04:21 +02:00
throttle-groups.c block: Move I/O throttling configuration functions to BlockBackend 2016-05-19 16:45:30 +02:00
vdi.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
vhdx-endian.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
vhdx-log.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
vhdx.c all: Remove unnecessary glib.h includes 2016-06-07 18:19:24 +03:00
vhdx.h block: vhdx - update PAYLOAD_BLOCK_UNMAPPED value to match 1.00 spec 2014-12-12 15:42:22 +00:00
vmdk.c vmdk: Convert to bdrv_co_pwrite_zeroes() 2016-06-08 10:21:08 +02:00
vpc.c qemu-common: stop including qemu/bswap.h from qemu-common.h 2016-05-19 16:42:28 +02:00
vvfat.c block: Use DIV_ROUND_UP 2016-06-07 18:19:24 +03:00
win32-aio.c block: Clean up includes 2016-01-20 13:36:23 +01:00
write-threshold.c block: Clean up includes 2016-01-20 13:36:23 +01:00