2020-09-25 23:57:38

by Tobias Jordan

[permalink] [raw]
Subject: [PATCH] bus: arm: integrator: fix device node iterator leak

In the for_each_available_child_of_node loop of integrator_lm_populate,
add a call to of_node_put to avoid leaking the iterator if we bail out.

Fixes: ccea5e8a5918 ("bus: Add driver for Integrator/AP logic modules")
Signed-off-by: Tobias Jordan <[email protected]>
---
drivers/bus/arm-integrator-lm.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/bus/arm-integrator-lm.c b/drivers/bus/arm-integrator-lm.c
index 845b6c43fef8..cb6da80d1c7d 100644
--- a/drivers/bus/arm-integrator-lm.c
+++ b/drivers/bus/arm-integrator-lm.c
@@ -53,6 +53,7 @@ static int integrator_lm_populate(int num, struct device *dev)
base);
ret = of_platform_default_populate(child, NULL, dev);
if (ret) {
+ of_node_put(child);
dev_err(dev, "failed to populate module\n");
return ret;
}
--
2.20.1


2020-09-30 08:32:47

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] bus: arm: integrator: fix device node iterator leak

On Sat, Sep 26, 2020 at 1:55 AM Tobias Jordan <[email protected]> wrote:

> In the for_each_available_child_of_node loop of integrator_lm_populate,
> add a call to of_node_put to avoid leaking the iterator if we bail out.
>
> Fixes: ccea5e8a5918 ("bus: Add driver for Integrator/AP logic modules")
> Signed-off-by: Tobias Jordan <[email protected]>

Incidentally, Sumera Priyadarsini has already fixed this.
Thanks anyway!

Yours,
Linus Walleij