Message ID | 20210911081347.33929-1-cuibixuan@huawei.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | [-next] remoteproc: qcom_wcnss: Add missing of_node_put() in qcom_iris_probe() | expand |
On Sat 11 Sep 03:13 CDT 2021, Bixuan Cui wrote: > Add missing of_node_put() in qcom_iris_probe() before return. > > Reported-by: Hulk Robot <hulkci@huawei.com> > Signed-off-by: Bixuan Cui <cuibixuan@huawei.com> > --- > drivers/remoteproc/qcom_wcnss_iris.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/remoteproc/qcom_wcnss_iris.c b/drivers/remoteproc/qcom_wcnss_iris.c > index 09720ddddc85..f77ab49a9cae 100644 > --- a/drivers/remoteproc/qcom_wcnss_iris.c > +++ b/drivers/remoteproc/qcom_wcnss_iris.c > @@ -140,6 +140,7 @@ struct qcom_iris *qcom_iris_probe(struct device *parent, bool *use_48mhz_xo) > ret = device_add(&iris->dev); > if (ret) { > put_device(&iris->dev); > + of_node_put(of_node); We store "of_node" in iris->dev, so put_device() will invoke qcom_iris_release() which of_node_put(iris->dev.of_node); So I think this is a false alarm, but please correct me if I'm wrong. Thanks, Bjorn > return ERR_PTR(ret); > } > > @@ -192,10 +193,12 @@ struct qcom_iris *qcom_iris_probe(struct device *parent, bool *use_48mhz_xo) > > *use_48mhz_xo = data->use_48mhz_xo; > > + of_node_put(of_node); > return iris; > > err_device_del: > device_del(&iris->dev); > + of_node_put(of_node); > > return ERR_PTR(ret); > } > -- > 2.17.1 >
diff --git a/drivers/remoteproc/qcom_wcnss_iris.c b/drivers/remoteproc/qcom_wcnss_iris.c index 09720ddddc85..f77ab49a9cae 100644 --- a/drivers/remoteproc/qcom_wcnss_iris.c +++ b/drivers/remoteproc/qcom_wcnss_iris.c @@ -140,6 +140,7 @@ struct qcom_iris *qcom_iris_probe(struct device *parent, bool *use_48mhz_xo) ret = device_add(&iris->dev); if (ret) { put_device(&iris->dev); + of_node_put(of_node); return ERR_PTR(ret); } @@ -192,10 +193,12 @@ struct qcom_iris *qcom_iris_probe(struct device *parent, bool *use_48mhz_xo) *use_48mhz_xo = data->use_48mhz_xo; + of_node_put(of_node); return iris; err_device_del: device_del(&iris->dev); + of_node_put(of_node); return ERR_PTR(ret); }
Add missing of_node_put() in qcom_iris_probe() before return. Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Bixuan Cui <cuibixuan@huawei.com> --- drivers/remoteproc/qcom_wcnss_iris.c | 3 +++ 1 file changed, 3 insertions(+)