kernel: bump 5.15 to 5.15.116
[openwrt/openwrt.git] / target / linux / generic / backport-5.15 / 404-v6.0-mtd-core-check-partition-before-dereference.patch
1 From 7ec4cdb321738d44ae5d405e7b6ac73dfbf99caa Mon Sep 17 00:00:00 2001
2 From: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
3 Date: Mon, 25 Jul 2022 22:49:25 +0900
4 Subject: [PATCH] mtd: core: check partition before dereference
5
6 syzbot is reporting NULL pointer dereference at mtd_check_of_node() [1],
7 for mtdram test device (CONFIG_MTD_MTDRAM) is not partition.
8
9 Link: https://syzkaller.appspot.com/bug?extid=fe013f55a2814a9e8cfd [1]
10 Reported-by: syzbot <syzbot+fe013f55a2814a9e8cfd@syzkaller.appspotmail.com>
11 Reported-by: kernel test robot <oliver.sang@intel.com>
12 Fixes: ad9b10d1eaada169 ("mtd: core: introduce of support for dynamic partitions")
13 Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
14 CC: stable@vger.kernel.org
15 Signed-off-by: Richard Weinberger <richard@nod.at>
16 ---
17 drivers/mtd/mtdcore.c | 2 ++
18 1 file changed, 2 insertions(+)
19
20 --- a/drivers/mtd/mtdcore.c
21 +++ b/drivers/mtd/mtdcore.c
22 @@ -577,6 +577,8 @@ static void mtd_check_of_node(struct mtd
23 return;
24
25 /* Check if a partitions node exist */
26 + if (!mtd_is_partition(mtd))
27 + return;
28 parent = mtd->parent;
29 parent_dn = dev_of_node(&parent->dev);
30 if (!parent_dn)