From 8a8f154ce9dc01c2c0f17ff3d355f2b8a9fc8bfe Mon Sep 17 00:00:00 2001 From: Coly Li Date: Apr 13 2024 06:53:00 +0000 Subject: bcache: check return value from btree_node_alloc_replacement() (git-fixes). --- diff --git a/patches.suse/bcache-check-return-value-from-btree_node_alloc_repl-7779.patch b/patches.suse/bcache-check-return-value-from-btree_node_alloc_repl-7779.patch new file mode 100644 index 0000000..18dd171 --- /dev/null +++ b/patches.suse/bcache-check-return-value-from-btree_node_alloc_repl-7779.patch @@ -0,0 +1,41 @@ +From 777967e7e9f6f5f3e153abffb562bffaf4430d26 Mon Sep 17 00:00:00 2001 +From: Coly Li +Date: Mon, 20 Nov 2023 13:24:55 +0800 +Subject: [PATCH] bcache: check return value from + btree_node_alloc_replacement() +Git-commit: 777967e7e9f6f5f3e153abffb562bffaf4430d26 +Patch-mainline: v6.7-rc3 +References: git-fixes + +In btree_gc_rewrite_node(), pointer 'n' is not checked after it returns +from btree_gc_rewrite_node(). There is potential possibility that 'n' is +a non NULL ERR_PTR(), referencing such error code is not permitted in +following code. Therefore a return value checking is necessary after 'n' +is back from btree_node_alloc_replacement(). + +Signed-off-by: Coly Li +Reported-by: Dan Carpenter +Cc: +Link: https://lore.kernel.org/r/20231120052503.6122-3-colyli@suse.de +Signed-off-by: Jens Axboe + +--- + drivers/md/bcache/btree.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/drivers/md/bcache/btree.c b/drivers/md/bcache/btree.c +index ae5cbb55861f..de8d552201dc 100644 +--- a/drivers/md/bcache/btree.c ++++ b/drivers/md/bcache/btree.c +@@ -1532,6 +1532,8 @@ static int btree_gc_rewrite_node(struct btree *b, struct btree_op *op, + return 0; + + n = btree_node_alloc_replacement(replace, NULL); ++ if (IS_ERR(n)) ++ return 0; + + /* recheck reserve after allocating replacement node */ + if (btree_check_reserve(b, NULL)) { +-- +2.35.3 + diff --git a/series.conf b/series.conf index d7d00cf..9173d71 100644 --- a/series.conf +++ b/series.conf @@ -44843,6 +44843,7 @@ patches.suse/HID-hid-asus-reset-the-backlight-brightness-level-on.patch patches.suse/HID-multitouch-Add-quirk-for-HONOR-GLO-GXXX-touchpad.patch patches.suse/bcache-avoid-oversize-memory-allocation-by-small-str-baf8.patch + patches.suse/bcache-check-return-value-from-btree_node_alloc_repl-7779.patch patches.suse/md-fix-bi_status-reporting-in-md_end_clone_io-45b4.patch patches.suse/s390-dasd-protect-device-queue-against-concurrent-access.patch patches.suse/nvmet-nul-terminate-the-NQNs-passed-in-the-connect-c.patch