Re: [PATCH -next] remoteproc: qcom_wcnss: Add missing of_node_put() in qcom_iris_probe()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxx>
> Signed-off-by: Bixuan Cui <cuibixuan@xxxxxxxxxx>
> ---
>  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
> 



[Index of Archives]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux