misc: tps6594-pfsm: Add NULL pointer check in tps6594_pfsm_probe()
authorChenyuan Yang <chenyuan0y@gmail.com>
Tue, 11 Mar 2025 01:05:11 +0000 (20:05 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 15 Apr 2025 14:13:55 +0000 (16:13 +0200)
The returned value, pfsm->miscdev.name, from devm_kasprintf()
could be NULL.
A pointer check is added to prevent potential NULL pointer dereference.
This is similar to the fix in commit 3027e7b15b02
("ice: Fix some null pointer dereference issues in ice_ptp.c").

This issue is found by our static analysis tool.

Signed-off-by: Chenyuan Yang <chenyuan0y@gmail.com>
Link: https://lore.kernel.org/r/20250311010511.1028269-1-chenyuan0y@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/misc/tps6594-pfsm.c

index 0a24ce44cc37c412165b71a36a2bc2c6c111ef52..6db1c9d48f8fcf267b34d95974a361aff5c41962 100644 (file)
@@ -281,6 +281,9 @@ static int tps6594_pfsm_probe(struct platform_device *pdev)
        pfsm->miscdev.minor = MISC_DYNAMIC_MINOR;
        pfsm->miscdev.name = devm_kasprintf(dev, GFP_KERNEL, "pfsm-%ld-0x%02x",
                                            tps->chip_id, tps->reg);
+       if (!pfsm->miscdev.name)
+               return -ENOMEM;
+
        pfsm->miscdev.fops = &tps6594_pfsm_fops;
        pfsm->miscdev.parent = dev->parent;
        pfsm->chip_id = tps->chip_id;