From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:35342) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SAz3c-0003Cs-V8 for qemu-devel@nongnu.org; Fri, 23 Mar 2012 03:37:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SAz3a-0004aJ-9V for qemu-devel@nongnu.org; Fri, 23 Mar 2012 03:37:08 -0400 Received: from mail-wi0-f181.google.com ([209.85.212.181]:43163) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SAz3a-0004Z5-0N for qemu-devel@nongnu.org; Fri, 23 Mar 2012 03:37:06 -0400 Received: by wibhr17 with SMTP id hr17so1572473wib.10 for ; Fri, 23 Mar 2012 00:37:03 -0700 (PDT) From: =?UTF-8?q?Beno=C3=AEt=20Canet?= Date: Fri, 23 Mar 2012 08:36:51 +0100 Message-Id: <1332488214-4685-5-git-send-email-benoit.canet@gmail.com> In-Reply-To: <1332488214-4685-1-git-send-email-benoit.canet@gmail.com> References: <1332488214-4685-1-git-send-email-benoit.canet@gmail.com> Subject: [Qemu-devel] [PATCH V3 4/7] qed: add bdrv_invalidate_cache to be called after incoming live migration List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, pbonzini@redhat.com, =?UTF-8?q?Beno=C3=AEt=20Canet?= , stefanha@linux.vnet.ibm.com The QED image is reopened to flush metadata and check consistency. Signed-off-by: Benoit Canet --- block/qed.c | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/block/qed.c b/block/qed.c index a041d31..e32f598 100644 --- a/block/qed.c +++ b/block/qed.c @@ -1516,6 +1516,15 @@ static int bdrv_qed_change_backing_file(BlockDriverState *bs, return ret; } +static void bdrv_qed_invalidate_cache(BlockDriverState *bs) +{ + BDRVQEDState *s = bs->opaque; + + bdrv_qed_close(bs); + memset(s, 0, sizeof(BDRVQEDState)); + bdrv_qed_open(bs, bs->open_flags); +} + static int bdrv_qed_check(BlockDriverState *bs, BdrvCheckResult *result) { BDRVQEDState *s = bs->opaque; @@ -1568,6 +1577,7 @@ static BlockDriver bdrv_qed = { .bdrv_getlength = bdrv_qed_getlength, .bdrv_get_info = bdrv_qed_get_info, .bdrv_change_backing_file = bdrv_qed_change_backing_file, + .bdrv_invalidate_cache = bdrv_qed_invalidate_cache, .bdrv_check = bdrv_qed_check, }; -- 1.7.7.6