2022-07-27 06:08:05

by Zeng Jingxiang

[permalink] [raw]
Subject: [PATCH] mtd: physmap-core: Fix NULL pointer dereferencing in of_select_probe_type()

From: Zeng Jingxiang <[email protected]>

Coverity complains of a possible NULL dereference:

in of_select_probe_type():
1. returned_null: of_match_device() returns NULL.
2. var_assigned: match = NULL return value from of_match_device()
309 match = of_match_device(of_flash_match, &dev->dev);

3.dereference: Dereferencing the NULL pointer match.
310 probe_type = match->data;

Signed-off-by: Zeng Jingxiang <[email protected]>
---
drivers/mtd/maps/physmap-core.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/mtd/maps/physmap-core.c b/drivers/mtd/maps/physmap-core.c
index 4f63b8430c71..69d0ab1f6f94 100644
--- a/drivers/mtd/maps/physmap-core.c
+++ b/drivers/mtd/maps/physmap-core.c
@@ -307,6 +307,9 @@ static const char *of_select_probe_type(struct platform_device *dev)
const char *probe_type;

match = of_match_device(of_flash_match, &dev->dev);
+ if (!match)
+ return NULL;
+
probe_type = match->data;
if (probe_type)
return probe_type;
--
2.27.0


2022-09-19 17:15:29

by Miquel Raynal

[permalink] [raw]
Subject: Re: [PATCH] mtd: physmap-core: Fix NULL pointer dereferencing in of_select_probe_type()

On Wed, 2022-07-27 at 06:03:02 UTC, Zeng Jingxiang wrote:
> From: Zeng Jingxiang <[email protected]>
>
> Coverity complains of a possible NULL dereference:
>
> in of_select_probe_type():
> 1. returned_null: of_match_device() returns NULL.
> 2. var_assigned: match = NULL return value from of_match_device()
> 309 match = of_match_device(of_flash_match, &dev->dev);
>
> 3.dereference: Dereferencing the NULL pointer match.
> 310 probe_type = match->data;
>
> Signed-off-by: Zeng Jingxiang <[email protected]>

Applied to https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git mtd/next, thanks.

Miquel