On Thu, Mar 26, 2020 at 8:06 PM Anson Huang <[email protected]> wrote: > > After finishing using cpu node got from of_get_cpu_node(), of_node_put() > needs to be called. > > Signed-off-by: Anson Huang <[email protected]> > --- > 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 >

