[PATCH 3/3] input: misc: pm8941-pwrkey: avoid potential null pointer dereference

From: Anjelique Melendez
Date: Thu Jan 20 2022 - 15:45:19 EST


From: David Collins <collinsd@xxxxxxxxxxxxxx>

Add a null check for the pwrkey->data pointer after it is assigned
in pm8941_pwrkey_probe(). This avoids a potential null pointer
dereference when pwrkey->data->has_pon_pbs is accessed later in
the probe function.

Change-Id: I589c4851e544d79a1863fd110b32a0b45ac03caf
Signed-off-by: David Collins <collinsd@xxxxxxxxxxxxxx>
Signed-off-by: Anjelique Melendez <quic_amelende@xxxxxxxxxxx>
---
drivers/input/misc/pm8941-pwrkey.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/input/misc/pm8941-pwrkey.c b/drivers/input/misc/pm8941-pwrkey.c
index 0ce00736e695..ac08ed025802 100644
--- a/drivers/input/misc/pm8941-pwrkey.c
+++ b/drivers/input/misc/pm8941-pwrkey.c
@@ -263,6 +263,10 @@ static int pm8941_pwrkey_probe(struct platform_device *pdev)

pwrkey->dev = &pdev->dev;
pwrkey->data = of_device_get_match_data(&pdev->dev);
+ if (!pwrkey->data) {
+ dev_err(&pdev->dev, "match data not found\n");
+ return -ENODEV;
+ }

parent = pdev->dev.parent;
regmap_node = pdev->dev.of_node;
--
2.34.1