[PATCH v3 3/4] soc: qcom: smem_state: fix missing of_node_put in error path

From: Krzysztof Kozlowski
Date: Mon Dec 09 2024 - 06:56:58 EST


If of_parse_phandle_with_args() succeeds, the OF node reference should
be dropped, regardless of number of phandle arguments.

Cc: stable@xxxxxxxxxxxxxxx
Fixes: 9460ae2ff308 ("soc: qcom: Introduce common SMEM state machine code")
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>

---

Changes in v3:
1. Add Rb tag, combine from other series.
I don't quite get why rest of other series was applied, but not this fix.
https://lore.kernel.org/all/20240822164853.231087-1-krzysztof.kozlowski@xxxxxxxxxx/
---
drivers/soc/qcom/smem_state.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/soc/qcom/smem_state.c b/drivers/soc/qcom/smem_state.c
index d9bfac6c54fb..cc5be8019b6a 100644
--- a/drivers/soc/qcom/smem_state.c
+++ b/drivers/soc/qcom/smem_state.c
@@ -112,7 +112,8 @@ struct qcom_smem_state *qcom_smem_state_get(struct device *dev,

if (args.args_count != 1) {
dev_err(dev, "invalid #qcom,smem-state-cells\n");
- return ERR_PTR(-EINVAL);
+ state = ERR_PTR(-EINVAL);
+ goto put;
}

state = of_node_to_state(args.np);
--
2.43.0