[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <1469696505-30833-3-git-send-email-bob.liu@oracle.com>
Date: Thu, 28 Jul 2016 17:01:44 +0800
From: Bob Liu <bob.liu@...cle.com>
To: linux-kernel@...r.kernel.org
Cc: xen-devel@...ts.xenproject.org, konrad.wilk@...cle.com,
roger.pau@...rix.com, Bob Liu <bob.liu@...cle.com>
Subject: [PATCH 3/3] xen-blkfront: free resources if xlvbd_alloc_gendisk fails
Current code forgets to free resources in the failure path of
xlvbd_alloc_gendisk(), this patch fix it.
Signed-off-by: Bob Liu <bob.liu@...cle.com>
---
drivers/block/xen-blkfront.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c
index d5ed60b..d8429d4 100644
--- a/drivers/block/xen-blkfront.c
+++ b/drivers/block/xen-blkfront.c
@@ -2446,7 +2446,7 @@ static void blkfront_connect(struct blkfront_info *info)
if (err) {
xenbus_dev_fatal(info->xbdev, err, "xlvbd_add at %s",
info->xbdev->otherend);
- return;
+ goto fail;
}
xenbus_switch_state(info->xbdev, XenbusStateConnected);
@@ -2459,6 +2459,11 @@ static void blkfront_connect(struct blkfront_info *info)
add_disk(info->gd);
info->is_ready = 1;
+ return;
+
+fail:
+ blkif_free(info, 0);
+ return;
}
/**
--
1.7.10.4
Powered by blists - more mailing lists