From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53273) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bDZrz-0004Ok-2G for qemu-devel@nongnu.org; Thu, 16 Jun 2016 12:10:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bDZru-0007sf-B2 for qemu-devel@nongnu.org; Thu, 16 Jun 2016 12:10:14 -0400 From: "Denis V. Lunev" Date: Thu, 16 Jun 2016 19:09:38 +0300 Message-Id: <1466093381-6120-1-git-send-email-den@openvz.org> Subject: [Qemu-devel] [PATCH v2 0/3] potentially broken drive-mirror/drive-backup in bdrv_co_discard List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org, qemu-block@nongnu.org Cc: den@openvz.org, 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 Reviewed-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Fam Zheng CC: Stefan Hajnoczi CC: Kevin Wolf CC: Max Reitz 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