From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56722) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aktjy-0000HN-BC for qemu-devel@nongnu.org; Tue, 29 Mar 2016 09:31:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aktju-0006yB-DC for qemu-devel@nongnu.org; Tue, 29 Mar 2016 09:31:26 -0400 From: Kevin Wolf Date: Tue, 29 Mar 2016 15:30:46 +0200 Message-Id: <1459258257-17767-10-git-send-email-kwolf@redhat.com> In-Reply-To: <1459258257-17767-1-git-send-email-kwolf@redhat.com> References: <1459258257-17767-1-git-send-email-kwolf@redhat.com> Subject: [Qemu-devel] [PATCH v2 09/20] block: Handle flush error in bdrv_pwrite_sync() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-block@nongnu.org Cc: kwolf@redhat.com, qemu-devel@nongnu.org, mreitz@redhat.com We don't want to silently ignore a flush error. Also, there is little point in avoiding the flush for writethrough modes and once WCE is moved to the BB layer, we definitely need the flush here because bdrv_pwrite() won't involve one any more. Signed-off-by: Kevin Wolf Reviewed-by: Max Reitz --- block/io.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/block/io.c b/block/io.c index c447db2..9663db6 100644 --- a/block/io.c +++ b/block/io.c @@ -745,9 +745,9 @@ int bdrv_pwrite_sync(BlockDriverState *bs, int64_t offset, return ret; } - /* No flush needed for cache modes that already do it */ - if (bs->enable_write_cache) { - bdrv_flush(bs); + ret = bdrv_flush(bs); + if (ret < 0) { + return ret; } return 0; -- 1.8.3.1