提交 1cd91c18 编写于 作者: U Ulises Brindis 提交者: Eduardo Valentin

thermal: of: fix cleanup when building a thermal zone

of_node_put is iterating through all terms in the tbps array even though
the bind has failed. We need to only iterate through the terms that have
already passed the binding step.

Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Cc: linux-pm@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: NUlises Brindis <brindisu@lab126.com>
Signed-off-by: NEduardo Valentin <edubezval@gmail.com>
上级 c212ed91
......@@ -906,7 +906,7 @@ __init *thermal_of_build_thermal_zone(struct device_node *np)
return tz;
free_tbps:
for (i = 0; i < tz->num_tbps; i++)
for (i = i - 1; i >= 0; i--)
of_node_put(tz->tbps[i].cooling_device);
kfree(tz->tbps);
free_trips:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册