]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
fixes for 4.14
authorSasha Levin <sashal@kernel.org>
Mon, 26 Aug 2019 19:26:35 +0000 (15:26 -0400)
committerSasha Levin <sashal@kernel.org>
Mon, 26 Aug 2019 19:26:35 +0000 (15:26 -0400)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-4.14/dm-zoned-fix-potential-null-dereference-in-dmz_do_re.patch [new file with mode: 0644]
queue-4.14/series

diff --git a/queue-4.14/dm-zoned-fix-potential-null-dereference-in-dmz_do_re.patch b/queue-4.14/dm-zoned-fix-potential-null-dereference-in-dmz_do_re.patch
new file mode 100644 (file)
index 0000000..1363386
--- /dev/null
@@ -0,0 +1,45 @@
+From b241e84b8353b92545472fa66da57a4ae3b51256 Mon Sep 17 00:00:00 2001
+From: Dan Carpenter <dan.carpenter@oracle.com>
+Date: Mon, 19 Aug 2019 12:58:14 +0300
+Subject: dm zoned: fix potential NULL dereference in dmz_do_reclaim()
+
+[ Upstream commit e0702d90b79d430b0ccc276ead4f88440bb51352 ]
+
+This function is supposed to return error pointers so it matches the
+dmz_get_rnd_zone_for_reclaim() function.  The current code could lead to
+a NULL dereference in dmz_do_reclaim()
+
+Fixes: b234c6d7a703 ("dm zoned: improve error handling in reclaim")
+Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
+Reviewed-by: Dmitry Fomichev <dmitry.fomichev@wdc.com>
+Signed-off-by: Mike Snitzer <snitzer@redhat.com>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ drivers/md/dm-zoned-metadata.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/md/dm-zoned-metadata.c b/drivers/md/dm-zoned-metadata.c
+index ccf17eb6adaa2..b322821a6323b 100644
+--- a/drivers/md/dm-zoned-metadata.c
++++ b/drivers/md/dm-zoned-metadata.c
+@@ -1579,7 +1579,7 @@ static struct dm_zone *dmz_get_seq_zone_for_reclaim(struct dmz_metadata *zmd)
+       struct dm_zone *zone;
+       if (list_empty(&zmd->map_seq_list))
+-              return NULL;
++              return ERR_PTR(-EBUSY);
+       list_for_each_entry(zone, &zmd->map_seq_list, link) {
+               if (!zone->bzone)
+@@ -1588,7 +1588,7 @@ static struct dm_zone *dmz_get_seq_zone_for_reclaim(struct dmz_metadata *zmd)
+                       return zone;
+       }
+-      return NULL;
++      return ERR_PTR(-EBUSY);
+ }
+ /*
+-- 
+2.20.1
+
index 41eba2ba91939d9b9b7feadb10382219360795b9..669671ebdd3f12681ddaa8387bcd0827d733ef1a 100644 (file)
@@ -58,3 +58,4 @@ mm-page_owner-handle-thp-splits-correctly.patch
 mm-zsmalloc.c-migration-can-leave-pages-in-zs_empty-indefinitely.patch
 mm-zsmalloc.c-fix-race-condition-in-zs_destroy_pool.patch
 xfs-fix-missing-ilock-unlock-when-xfs_setattr_nonsize-fails-due-to-edquot.patch
+dm-zoned-fix-potential-null-dereference-in-dmz_do_re.patch