soc: qcom: smsm: Fix refcount leak bugs in qcom_smsm_probe()
authorLiang He <windhl@126.com>
Thu, 21 Jul 2022 13:52:16 +0000 (21:52 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 26 Oct 2022 10:34:58 +0000 (12:34 +0200)
commit96e0028debdd07a6d582f0dfadf9a3ec2b5fffff
tree9d253b2735cd5d7925819fa286ddf92a0ffab8dd
parenta29b6eb959bd5c3cbb2dd0ed7c982a10c93734d4
soc: qcom: smsm: Fix refcount leak bugs in qcom_smsm_probe()

[ Upstream commit af8f6f39b8afd772fda4f8e61823ef8c021bf382 ]

There are two refcount leak bugs in qcom_smsm_probe():

(1) The 'local_node' is escaped out from for_each_child_of_node() as
the break of iteration, we should call of_node_put() for it in error
path or when it is not used anymore.
(2) The 'node' is escaped out from for_each_available_child_of_node()
as the 'goto', we should call of_node_put() for it in goto target.

Fixes: c97c4090ff72 ("soc: qcom: smsm: Add driver for Qualcomm SMSM")
Signed-off-by: Liang He <windhl@126.com>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220721135217.1301039-1-windhl@126.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/soc/qcom/smsm.c