[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 0/4] fix image fleecing
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
Re: [Qemu-devel] [PATCH v3 0/4] fix image fleecing |
Date: |
Fri, 6 Jul 2018 16:41:50 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 |
06.07.2018 10:17, Fam Zheng wrote:
On Thu, 07/05 10:46, Vladimir Sementsov-Ogievskiy wrote:
Hi all.
This fixes image fleecing scheme for 3.0, details are in 04 patch.
Looks like this breaks 'test-replication':
http://patchew.org/QEMU/address@hidden/
test-replication: /stor/work/qemu/block/io.c:725: wait_serialising_requests:
Assertion `qemu_coroutine_self() != req->co' failed.
GTester: last random seed: R02Se49967625f19c5be9918a2503fb2fff5
test-replication: /stor/work/qemu/block/io.c:725: wait_serialising_requests:
Assertion `qemu_coroutine_self() != req->co' failed.
GTESTER tests/test-qht-par
GTester: last random seed: R02S8fad2bb2daddc51eb51623bb7c86cb67
test-replication: /stor/work/qemu/block/io.c:725: wait_serialising_requests:
Assertion `qemu_coroutine_self() != req->co' failed.
GTester: last random seed: R02S024718e9b1e2b1facafe254c43e1430b
Fam
interesting.
in gdb I see, that both requests are identical (i.e. their
BdrvTrackedRequeststructs, except list filed)writes (self and req)...
and it's actually the same request, duplicated in the ist, first it is
created in bdrv_co_copy_range_internal,
and than again,
#0 tracked_request_begin (req=0x7fffe8f9e7d0, bs=0x555555a43040,
offset=33554432, bytes=33554432, type=
BDRV_TRACKED_WRITE) at block/io.c:598
#1 0x00005555555f76bc in bdrv_co_copy_range_internal
(src=0x55555597ef80, src_offset=33882112,
dst=0x5555559f1d30, dst_offset=33554432, bytes=33554432,
read_flags=BDRV_REQ_NO_SERIALISING,
write_flags=BDRV_REQ_SERIALISING, recurse_src=true) at block/io.c:2949
#2 0x00005555555f78e9 in bdrv_co_copy_range_from (src=0x55555597ef80,
src_offset=33882112,
dst=0x5555559f1d30, dst_offset=33554432, bytes=33554432,
read_flags=BDRV_REQ_NO_SERIALISING,
write_flags=BDRV_REQ_SERIALISING) at block/io.c:2995
#3 0x00005555555ae931 in qcow2_co_copy_range_from (bs=0x555555977ff0,
src=0x5555559f14d0,
src_offset=33554432, dst=0x5555559f1d30, dst_offset=33554432,
bytes=33554432,
read_flags=BDRV_REQ_NO_SERIALISING,
write_flags=BDRV_REQ_SERIALISING) at block/qcow2.c:3311
#4 0x00005555555f77cf in bdrv_co_copy_range_internal
(src=0x5555559f14d0, src_offset=33554432,
dst=0x5555559f1d30, dst_offset=33554432, bytes=33554432,
read_flags=BDRV_REQ_NO_SERIALISING,
write_flags=BDRV_REQ_SERIALISING, recurse_src=true) at block/io.c:2966
so, it's actually bug in copy_range architecture.
--
Best regards,
Vladimir
- [Qemu-devel] [PATCH v3 0/4] fix image fleecing, Vladimir Sementsov-Ogievskiy, 2018/07/05
- [Qemu-devel] [PATCH v3 3/4] block: add BDRV_REQ_SERIALISING flag, Vladimir Sementsov-Ogievskiy, 2018/07/05
- [Qemu-devel] [PATCH v3 1/4] block: disallow BDRV_REQ_NO_SERIALISING for write, Vladimir Sementsov-Ogievskiy, 2018/07/05
- [Qemu-devel] [PATCH v3 4/4] block/backup: fix fleecing scheme: use serialized writes, Vladimir Sementsov-Ogievskiy, 2018/07/05
- [Qemu-devel] [PATCH v3 2/4] block: split flags in copy_range, Vladimir Sementsov-Ogievskiy, 2018/07/05
- Re: [Qemu-devel] [PATCH v3 0/4] fix image fleecing, Fam Zheng, 2018/07/06
- Re: [Qemu-devel] [PATCH v3 0/4] fix image fleecing,
Vladimir Sementsov-Ogievskiy <=