diff mbox series

[V2] thermal: imx: Add missing of_node_put()

Message ID 1585232945-23368-1-git-send-email-Anson.Huang@nxp.com (mailing list archive)
State Mainlined
Commit b45fd13be340e4ed0a2a9673ba299eb2a71ba829
Headers show
Series [V2] thermal: imx: Add missing of_node_put() | expand

Commit Message

Anson Huang March 26, 2020, 2:29 p.m. UTC
After finishing using cpu node got from of_get_cpu_node(), of_node_put()
needs to be called.

Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
---
Changes since V1:
	- improve the logic, no need to use got.
---
 drivers/thermal/imx_thermal.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

Comments

Amit Kucheria April 28, 2020, 8:28 p.m. UTC | #1
On Thu, Mar 26, 2020 at 8:06 PM Anson Huang <Anson.Huang@nxp.com> wrote:
>
> After finishing using cpu node got from of_get_cpu_node(), of_node_put()
> needs to be called.
>
> Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
> ---
> Changes since V1:
>         - improve the logic, no need to use got.
> ---
>  drivers/thermal/imx_thermal.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
> index e761c9b..1b84ea6 100644
> --- a/drivers/thermal/imx_thermal.c
> +++ b/drivers/thermal/imx_thermal.c
> @@ -649,7 +649,7 @@ MODULE_DEVICE_TABLE(of, of_imx_thermal_match);
>  static int imx_thermal_register_legacy_cooling(struct imx_thermal_data *data)
>  {
>         struct device_node *np;
> -       int ret;
> +       int ret = 0;
>
>         data->policy = cpufreq_cpu_get(0);
>         if (!data->policy) {
> @@ -664,11 +664,12 @@ static int imx_thermal_register_legacy_cooling(struct imx_thermal_data *data)
>                 if (IS_ERR(data->cdev)) {
>                         ret = PTR_ERR(data->cdev);
>                         cpufreq_cpu_put(data->policy);

You could move this policy release outside the if block too, no?

> -                       return ret;
>                 }
>         }
>
> -       return 0;
> +       of_node_put(np);
> +
> +       return ret;
>  }
>
>  static void imx_thermal_unregister_legacy_cooling(struct imx_thermal_data *data)
> --
> 2.7.4
>
Anson Huang April 29, 2020, 2 a.m. UTC | #2
Hi, Amit


> Subject: Re: [PATCH V2] thermal: imx: Add missing of_node_put()
> 
> On Thu, Mar 26, 2020 at 8:06 PM Anson Huang <Anson.Huang@nxp.com>
> wrote:
> >
> > After finishing using cpu node got from of_get_cpu_node(),
> > of_node_put() needs to be called.
> >
> > Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
> > ---
> > Changes since V1:
> >         - improve the logic, no need to use got.
> > ---
> >  drivers/thermal/imx_thermal.c | 7 ++++---
> >  1 file changed, 4 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/thermal/imx_thermal.c
> > b/drivers/thermal/imx_thermal.c index e761c9b..1b84ea6 100644
> > --- a/drivers/thermal/imx_thermal.c
> > +++ b/drivers/thermal/imx_thermal.c
> > @@ -649,7 +649,7 @@ MODULE_DEVICE_TABLE(of,
> of_imx_thermal_match);
> > static int imx_thermal_register_legacy_cooling(struct imx_thermal_data
> > *data)  {
> >         struct device_node *np;
> > -       int ret;
> > +       int ret = 0;
> >
> >         data->policy = cpufreq_cpu_get(0);
> >         if (!data->policy) {
> > @@ -664,11 +664,12 @@ static int
> imx_thermal_register_legacy_cooling(struct imx_thermal_data *data)
> >                 if (IS_ERR(data->cdev)) {
> >                         ret = PTR_ERR(data->cdev);
> >                         cpufreq_cpu_put(data->policy);
> 
> You could move this policy release outside the if block too, no?

Looks like yes, the policy can be put before function return anyway, I will do it in V3.

Thanks,
Anson
diff mbox series

Patch

diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
index e761c9b..1b84ea6 100644
--- a/drivers/thermal/imx_thermal.c
+++ b/drivers/thermal/imx_thermal.c
@@ -649,7 +649,7 @@  MODULE_DEVICE_TABLE(of, of_imx_thermal_match);
 static int imx_thermal_register_legacy_cooling(struct imx_thermal_data *data)
 {
 	struct device_node *np;
-	int ret;
+	int ret = 0;
 
 	data->policy = cpufreq_cpu_get(0);
 	if (!data->policy) {
@@ -664,11 +664,12 @@  static int imx_thermal_register_legacy_cooling(struct imx_thermal_data *data)
 		if (IS_ERR(data->cdev)) {
 			ret = PTR_ERR(data->cdev);
 			cpufreq_cpu_put(data->policy);
-			return ret;
 		}
 	}
 
-	return 0;
+	of_node_put(np);
+
+	return ret;
 }
 
 static void imx_thermal_unregister_legacy_cooling(struct imx_thermal_data *data)