summaryrefslogtreecommitdiff
path: root/drivers/bus/qcom-ebi2.c
diff options
context:
space:
mode:
authorPan Bian <bianpan2016@163.com>2021-01-21 14:49:07 +0300
committerBjorn Andersson <bjorn.andersson@linaro.org>2021-03-30 06:01:27 +0300
commitac6ad7c2a862d682bb584a4bc904d89fa7721af8 (patch)
treea4f491a3caf7930ca08a5569f837d081ba622b8e /drivers/bus/qcom-ebi2.c
parentddd6b7267fe6e3c5a48e2e4eda18f354595c6d65 (diff)
downloadlinux-ac6ad7c2a862d682bb584a4bc904d89fa7721af8.tar.xz
bus: qcom: Put child node before return
Put child node before return to fix potential reference count leak. Generally, the reference count of child is incremented and decremented automatically in the macro for_each_available_child_of_node() and should be decremented manually if the loop is broken in loop body. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Fixes: 335a12754808 ("bus: qcom: add EBI2 driver") Signed-off-by: Pan Bian <bianpan2016@163.com> Link: https://lore.kernel.org/r/20210121114907.109267-1-bianpan2016@163.com Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Diffstat (limited to 'drivers/bus/qcom-ebi2.c')
-rw-r--r--drivers/bus/qcom-ebi2.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/bus/qcom-ebi2.c b/drivers/bus/qcom-ebi2.c
index 03ddcf426887..0b8f53a688b8 100644
--- a/drivers/bus/qcom-ebi2.c
+++ b/drivers/bus/qcom-ebi2.c
@@ -353,8 +353,10 @@ static int qcom_ebi2_probe(struct platform_device *pdev)
/* Figure out the chipselect */
ret = of_property_read_u32(child, "reg", &csindex);
- if (ret)
+ if (ret) {
+ of_node_put(child);
return ret;
+ }
if (csindex > 5) {
dev_err(dev,