Re: [PATCH] cpufreq: tegra124: add missing of_node_put()
On Mon, Feb 04, 2019 at 01:35:01AM -0500, Yangtao Li wrote: > of_cpu_device_node_get() will increase the refcount of device_node, > it is necessary to call of_node_put() at the end to release the > refcount. > > Signed-off-by: Yangtao Li > --- > drivers/cpufreq/tegra124-cpufreq.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/cpufreq/tegra124-cpufreq.c > b/drivers/cpufreq/tegra124-cpufreq.c > index 43530254201a..140a9266b64a 100644 > --- a/drivers/cpufreq/tegra124-cpufreq.c > +++ b/drivers/cpufreq/tegra124-cpufreq.c > @@ -118,6 +118,8 @@ static int tegra124_cpufreq_probe(struct platform_device > *pdev) > goto out_put_pllx_clk; > } > > + of_node_put(np); > + > ret = tegra124_cpu_switch_to_dfll(priv); > if (ret) > goto out_put_pllp_clk; I think this needs to move to the very end of the function, for example after the call to platform_set_drvdata(), to avoid releasing it twice in error paths. Thierry signature.asc Description: PGP signature
Re: [PATCH] cpufreq: tegra124: add missing of_node_put()
On Mon, Feb 4, 2019 at 3:18 PM Viresh Kumar wrote: > > On 04-02-19, 15:00, Frank Lee wrote: > > On Mon, Feb 4, 2019 at 2:36 PM Viresh Kumar wrote: > > > > > > On 04-02-19, 01:35, Yangtao Li wrote: > > > > of_cpu_device_node_get() will increase the refcount of device_node, > > > > it is necessary to call of_node_put() at the end to release the > > > > refcount. > > > > > > > > Signed-off-by: Yangtao Li > > > > --- > > > > drivers/cpufreq/tegra124-cpufreq.c | 2 ++ > > > > 1 file changed, 2 insertions(+) > > > > > > > > diff --git a/drivers/cpufreq/tegra124-cpufreq.c > > > > b/drivers/cpufreq/tegra124-cpufreq.c > > > > index 43530254201a..140a9266b64a 100644 > > > > --- a/drivers/cpufreq/tegra124-cpufreq.c > > > > +++ b/drivers/cpufreq/tegra124-cpufreq.c > > > > @@ -118,6 +118,8 @@ static int tegra124_cpufreq_probe(struct > > > > platform_device *pdev) > > > > goto out_put_pllx_clk; > > > > } > > > > > > > > + of_node_put(np); > > > > + > > > > ret = tegra124_cpu_switch_to_dfll(priv); > > > > if (ret) > > > > goto out_put_pllp_clk; > > > > > > Fixes and stable tags ? > > Hi viresh, > > > > Like this? > > > > Fixes: 9eb15dbbfa1a2 ("cpufreq: Add cpufreq driver for Tegra124") > > Cc: sta...@vger.kernel.org > > This needs to be something like: > > Cc: 4.5+ sta...@vger.kernel.org #4.5+ > > Also I don't think your patch is entirely correct as we will end up > doing of_node_put() twice in error path. Thanks for your reminder, I will modify it immediately. MBR, Yangtao > > -- > viresh
Re: [PATCH] cpufreq: tegra124: add missing of_node_put()
On 04-02-19, 15:00, Frank Lee wrote: > On Mon, Feb 4, 2019 at 2:36 PM Viresh Kumar wrote: > > > > On 04-02-19, 01:35, Yangtao Li wrote: > > > of_cpu_device_node_get() will increase the refcount of device_node, > > > it is necessary to call of_node_put() at the end to release the > > > refcount. > > > > > > Signed-off-by: Yangtao Li > > > --- > > > drivers/cpufreq/tegra124-cpufreq.c | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > diff --git a/drivers/cpufreq/tegra124-cpufreq.c > > > b/drivers/cpufreq/tegra124-cpufreq.c > > > index 43530254201a..140a9266b64a 100644 > > > --- a/drivers/cpufreq/tegra124-cpufreq.c > > > +++ b/drivers/cpufreq/tegra124-cpufreq.c > > > @@ -118,6 +118,8 @@ static int tegra124_cpufreq_probe(struct > > > platform_device *pdev) > > > goto out_put_pllx_clk; > > > } > > > > > > + of_node_put(np); > > > + > > > ret = tegra124_cpu_switch_to_dfll(priv); > > > if (ret) > > > goto out_put_pllp_clk; > > > > Fixes and stable tags ? > Hi viresh, > > Like this? > > Fixes: 9eb15dbbfa1a2 ("cpufreq: Add cpufreq driver for Tegra124") > Cc: sta...@vger.kernel.org This needs to be something like: Cc: 4.5+ sta...@vger.kernel.org #4.5+ Also I don't think your patch is entirely correct as we will end up doing of_node_put() twice in error path. -- viresh
Re: [PATCH] cpufreq: tegra124: add missing of_node_put()
On Mon, Feb 4, 2019 at 2:36 PM Viresh Kumar wrote: > > On 04-02-19, 01:35, Yangtao Li wrote: > > of_cpu_device_node_get() will increase the refcount of device_node, > > it is necessary to call of_node_put() at the end to release the > > refcount. > > > > Signed-off-by: Yangtao Li > > --- > > drivers/cpufreq/tegra124-cpufreq.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/drivers/cpufreq/tegra124-cpufreq.c > > b/drivers/cpufreq/tegra124-cpufreq.c > > index 43530254201a..140a9266b64a 100644 > > --- a/drivers/cpufreq/tegra124-cpufreq.c > > +++ b/drivers/cpufreq/tegra124-cpufreq.c > > @@ -118,6 +118,8 @@ static int tegra124_cpufreq_probe(struct > > platform_device *pdev) > > goto out_put_pllx_clk; > > } > > > > + of_node_put(np); > > + > > ret = tegra124_cpu_switch_to_dfll(priv); > > if (ret) > > goto out_put_pllp_clk; > > Fixes and stable tags ? Hi viresh, Like this? Fixes: 9eb15dbbfa1a2 ("cpufreq: Add cpufreq driver for Tegra124") Cc: sta...@vger.kernel.org MBR, Yangtao > > -- > viresh
Re: [PATCH] cpufreq: tegra124: add missing of_node_put()
On 04-02-19, 01:35, Yangtao Li wrote: > of_cpu_device_node_get() will increase the refcount of device_node, > it is necessary to call of_node_put() at the end to release the > refcount. > > Signed-off-by: Yangtao Li > --- > drivers/cpufreq/tegra124-cpufreq.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/cpufreq/tegra124-cpufreq.c > b/drivers/cpufreq/tegra124-cpufreq.c > index 43530254201a..140a9266b64a 100644 > --- a/drivers/cpufreq/tegra124-cpufreq.c > +++ b/drivers/cpufreq/tegra124-cpufreq.c > @@ -118,6 +118,8 @@ static int tegra124_cpufreq_probe(struct platform_device > *pdev) > goto out_put_pllx_clk; > } > > + of_node_put(np); > + > ret = tegra124_cpu_switch_to_dfll(priv); > if (ret) > goto out_put_pllp_clk; Fixes and stable tags ? -- viresh