From: Joe Thornber <ejt@redhat.com>
Date: Tue, 11 Mar 2014 16:46:25 +0000 (+0000)
Subject: dm era: check for a non-NULL metadata object before closing it
X-Git-Tag: v3.16-rc1~28^2~4
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=989f26f5ad308f40a95f280bf9cd75e558d4f18d;p=users%2Fjedix%2Flinux-maple.git

dm era: check for a non-NULL metadata object before closing it

era_ctr() may call era_destroy() before era->md is initialized so
era_destory() must only close the metadata object if it is not NULL.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Naohiro Aota <naota@elisp.net>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Cc: stable@vger.kernel.org # 3.15+
---

diff --git a/drivers/md/dm-era-target.c b/drivers/md/dm-era-target.c
index 414dad4cb49b..ad913cd4aded 100644
--- a/drivers/md/dm-era-target.c
+++ b/drivers/md/dm-era-target.c
@@ -1391,7 +1391,8 @@ static int era_is_congested(struct dm_target_callbacks *cb, int bdi_bits)
 
 static void era_destroy(struct era *era)
 {
-	metadata_close(era->md);
+	if (era->md)
+		metadata_close(era->md);
 
 	if (era->wq)
 		destroy_workqueue(era->wq);