All of lore.kernel.org
 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; 11+ 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] 11+ 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 2/3] block: fix race in bdrv_co_discard with drive-mirror Denis V. Lunev
  0 siblings, 1 reply; 11+ 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] 11+ messages in thread

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

Thread overview: 11+ 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 2/3] block: fix race in bdrv_co_discard with drive-mirror Denis V. Lunev

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.