soc: qcom: aoss: Fix refcount leak in qmp_cooling_devices_register
Every iteration of for_each_available_child_of_node() decrements
the reference count of the previous node.
When breaking early from a for_each_available_child_of_node() loop,
we need to explicitly call of_node_put() on the child node.
Add missing of_node_put() to avoid refcount leak.
Fixes: 05589b30b2
("soc: qcom: Extend AOSS QMP driver to support resources that are used to wake up the SoC.")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220606064252.42595-1-linmq006@gmail.com
This commit is contained in:
Родитель
a3e7259f9e
Коммит
e6e0951414
|
@ -399,8 +399,10 @@ static int qmp_cooling_devices_register(struct qmp *qmp)
|
||||||
continue;
|
continue;
|
||||||
ret = qmp_cooling_device_add(qmp, &qmp->cooling_devs[count++],
|
ret = qmp_cooling_device_add(qmp, &qmp->cooling_devs[count++],
|
||||||
child);
|
child);
|
||||||
if (ret)
|
if (ret) {
|
||||||
|
of_node_put(child);
|
||||||
goto unroll;
|
goto unroll;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!count)
|
if (!count)
|
||||||
|
|
Загрузка…
Ссылка в новой задаче