]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commitdiff
regulator: bq257xx: Fix device node reference leak in bq257xx_reg_dt_parse_gpio()
authorFelix Gu <ustc.gu@gmail.com>
Tue, 24 Feb 2026 11:19:03 +0000 (19:19 +0800)
committerMark Brown <broonie@kernel.org>
Tue, 24 Feb 2026 17:31:55 +0000 (17:31 +0000)
In bq257xx_reg_dt_parse_gpio(), if fails to get subchild, it returns
without calling of_node_put(child), causing the device node reference
leak.

Fixes: 981dd162b635 ("regulator: bq257xx: Add bq257xx boost regulator driver")
Signed-off-by: Felix Gu <ustc.gu@gmail.com>
Link: https://patch.msgid.link/20260224-bq257-v1-1-8ebbc731c1c3@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/bq257xx-regulator.c

index fc1ccede446882a1eda24ad5f9d2739cba89b9cb..dab8f1ab44503e57a906a44e9d1bb88d3cd46eaa 100644 (file)
@@ -115,11 +115,10 @@ static void bq257xx_reg_dt_parse_gpio(struct platform_device *pdev)
                return;
 
        subchild = of_get_child_by_name(child, pdata->desc.of_match);
+       of_node_put(child);
        if (!subchild)
                return;
 
-       of_node_put(child);
-
        pdata->otg_en_gpio = devm_fwnode_gpiod_get_index(&pdev->dev,
                                                         of_fwnode_handle(subchild),
                                                         "enable", 0,