qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/3] potentially broken drive-mirror/drive-backup in bdrv_co_discard
@ 2016-06-16  6:58 Denis V. Lunev
  2016-06-16  6:58 ` [Qemu-devel] [PATCH 1/3] block: fixed BdrvTrackedRequest filling " Denis V. Lunev
                   ` (3 more replies)
  0 siblings, 4 replies; 12+ messages in thread
From: Denis V. Lunev @ 2016-06-16  6:58 UTC (permalink / raw)
  To: qemu-devel, qemu-block
  Cc: den, Vladimir Sementsov-Ogievskiy, Stefan Hajnoczi, Fam Zheng,
	Kevin Wolf, Max Reitz

Actually I have found this problem running iotest 132 for active async
mirror I have sent yesturday. Anyway, the problem is actual for current
backup/mirror implementation.

bdrv_co_discard must mark areas dirty after writing zeroes, it must call
before_write_notifier chain to push underlying data to backup and it also
must properly fill tracked request information.

Signed-off-by: Denis V. Lunev <den@openvz.org>
CC: Vladimir Sementsov-Ogievskiy<vsementsov@virtuozzo.com>
CC: Stefan Hajnoczi <stefanha@redhat.com>
CC: Fam Zheng <famz@redhat.com>
CC: Kevin Wolf <kwolf@redhat.com>
CC: Max Reitz <mreitz@redhat.com>

^ permalink raw reply	[flat|nested] 12+ messages in thread
* [Qemu-devel] [PATCH v2 0/3] potentially broken drive-mirror/drive-backup in bdrv_co_discard
@ 2016-06-16 16:09 Denis V. Lunev
  2016-06-16 16:09 ` [Qemu-devel] [PATCH 1/3] block: fixed BdrvTrackedRequest filling " Denis V. Lunev
  0 siblings, 1 reply; 12+ messages in thread
From: Denis V. Lunev @ 2016-06-16 16:09 UTC (permalink / raw)
  To: qemu-devel, qemu-block; +Cc: den, Stefan Hajnoczi, Kevin Wolf, Max Reitz

Actually I have found this problem running iotest 132 for active async
mirror I have sent yesturday. Anyway, the problem is actual for current
backup/mirror implementation.

bdrv_co_discard must mark areas dirty after writing zeroes, it must call
before_write_notifier chain to push underlying data to backup and it also
must properly fill tracked request information.

Changes from v1:
- fixed problem in patch as pointed out by Vova
- ported to current (was made on top of active block mirror)
- minor spelling changes in commit messages

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Vladimir Sementsov-Ogievskiy<vsementsov@virtuozzo.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
CC: Stefan Hajnoczi <stefanha@redhat.com>
CC: Kevin Wolf <kwolf@redhat.com>
CC: Max Reitz <mreitz@redhat.com>

Denis V. Lunev (3):
  block: fixed BdrvTrackedRequest filling in bdrv_co_discard
  block: fix race in bdrv_co_discard with drive-mirror
  block: process before_write_notifiers in bdrv_co_discard

 block/io.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2016-06-16 18:00 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-06-16  6:58 [Qemu-devel] [PATCH 0/3] potentially broken drive-mirror/drive-backup in bdrv_co_discard Denis V. Lunev
2016-06-16  6:58 ` [Qemu-devel] [PATCH 1/3] block: fixed BdrvTrackedRequest filling " Denis V. Lunev
2016-06-16  7:33   ` Fam Zheng
2016-06-16  6:58 ` [Qemu-devel] [PATCH 2/3] block: fix race in bdrv_co_discard with drive-mirror Denis V. Lunev
2016-06-16  7:38   ` Fam Zheng
2016-06-16  9:34   ` Vladimir Sementsov-Ogievskiy
2016-06-16  9:39     ` Denis V. Lunev
2016-06-16  6:58 ` [Qemu-devel] [PATCH 3/3] block: process before_write_notifiers in bdrv_co_discard Denis V. Lunev
2016-06-16  7:38   ` Fam Zheng
2016-06-16 18:00 ` [Qemu-devel] [PATCH 0/3] potentially broken drive-mirror/drive-backup " Paolo Bonzini
  -- strict thread matches above, loose matches on Subject: below --
2016-06-16 16:09 [Qemu-devel] [PATCH v2 " Denis V. Lunev
2016-06-16 16:09 ` [Qemu-devel] [PATCH 1/3] block: fixed BdrvTrackedRequest filling " Denis V. Lunev
2016-06-16 17:39   ` Eric Blake

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).