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

From: Zeng Jingxiang
Date: Wed Jul 27 2022 - 02:03:19 EST


From: Zeng Jingxiang <linuszeng@xxxxxxxxxxx>

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 <linuszeng@xxxxxxxxxxx>
---
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