yeahuh / rpms / qemu-kvm

Forked from rpms/qemu-kvm 2 years ago
Clone
05bba0
From b8bdf32509624cb5a040ccc788028761db8d80eb Mon Sep 17 00:00:00 2001
05bba0
From: Max Reitz <mreitz@redhat.com>
05bba0
Date: Sat, 13 Jun 2015 16:22:11 +0200
05bba0
Subject: [PATCH 17/42] qcow2: Fix leaks in dirty images
05bba0
MIME-Version: 1.0
05bba0
Content-Type: text/plain; charset=UTF-8
05bba0
Content-Transfer-Encoding: 8bit
05bba0
05bba0
Message-id: <1434212556-3927-18-git-send-email-mreitz@redhat.com>
05bba0
Patchwork-id: 66036
05bba0
O-Subject: [RHEL-7.2 qemu-kvm PATCH 17/42] qcow2: Fix leaks in dirty images
05bba0
Bugzilla: 1129893
05bba0
RH-Acked-by: Jeffrey Cody <jcody@redhat.com>
05bba0
RH-Acked-by: Fam Zheng <famz@redhat.com>
05bba0
RH-Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
05bba0
05bba0
BZ: 1129893
05bba0
05bba0
When opening dirty images, qcow2's repair function should not only
05bba0
repair errors but leaks as well.
05bba0
05bba0
Signed-off-by: Max Reitz <mreitz@redhat.com>
05bba0
Reviewed-by: Eric Blake <eblake@redhat.com>
05bba0
Reviewed-by: BenoƮt Canet <benoit.canet@nodalink.com>
05bba0
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
05bba0
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
05bba0
(cherry picked from commit 5b84106bd91bc67519738042c8890a09e2967513)
05bba0
05bba0
Signed-off-by: Max Reitz <mreitz@redhat.com>
05bba0
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
05bba0
---
05bba0
 block/qcow2.c | 2 +-
05bba0
 1 file changed, 1 insertion(+), 1 deletion(-)
05bba0
05bba0
diff --git a/block/qcow2.c b/block/qcow2.c
05bba0
index fae8b26..6c3c6bc 100644
05bba0
--- a/block/qcow2.c
05bba0
+++ b/block/qcow2.c
05bba0
@@ -764,7 +764,7 @@ static int qcow2_open(BlockDriverState *bs, QDict *options, int flags,
05bba0
         (s->incompatible_features & QCOW2_INCOMPAT_DIRTY)) {
05bba0
         BdrvCheckResult result = {0};
05bba0
 
05bba0
-        ret = qcow2_check(bs, &result, BDRV_FIX_ERRORS);
05bba0
+        ret = qcow2_check(bs, &result, BDRV_FIX_ERRORS | BDRV_FIX_LEAKS);
05bba0
         if (ret < 0) {
05bba0
             error_setg_errno(errp, -ret, "Could not repair dirty image");
05bba0
             goto fail;
05bba0
-- 
05bba0
1.8.3.1
05bba0