* [PATCH] cpufreq: Explain the kobject_put() in cpufreq_policy_alloc()
@ 2019-05-10 10:35 Rafael J. Wysocki
2019-05-10 10:41 ` Viresh Kumar
0 siblings, 1 reply; 2+ messages in thread
From: Rafael J. Wysocki @ 2019-05-10 10:35 UTC (permalink / raw)
To: Linux PM; +Cc: Viresh Kumar, LKML
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
It may not be particularly clear why the kobject_put() after
failing kobject_init_and_add() in cpufreq_policy_alloc() is not
redundant, so add a comment to explain that.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
drivers/cpufreq/cpufreq.c | 5 +++++
1 file changed, 5 insertions(+)
Index: linux-pm/drivers/cpufreq/cpufreq.c
===================================================================
--- linux-pm.orig/drivers/cpufreq/cpufreq.c
+++ linux-pm/drivers/cpufreq/cpufreq.c
@@ -1133,6 +1133,11 @@ static struct cpufreq_policy *cpufreq_po
cpufreq_global_kobject, "policy%u", cpu);
if (ret) {
pr_err("%s: failed to init policy->kobj: %d\n", __func__, ret);
+ /*
+ * The entire policy object will be freed below, but the extra
+ * memory allocated for the kobject name needs to be freed by
+ * releasing the kobject.
+ */
kobject_put(&policy->kobj);
goto err_free_real_cpus;
}
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] cpufreq: Explain the kobject_put() in cpufreq_policy_alloc()
2019-05-10 10:35 [PATCH] cpufreq: Explain the kobject_put() in cpufreq_policy_alloc() Rafael J. Wysocki
@ 2019-05-10 10:41 ` Viresh Kumar
0 siblings, 0 replies; 2+ messages in thread
From: Viresh Kumar @ 2019-05-10 10:41 UTC (permalink / raw)
To: Rafael J. Wysocki; +Cc: Linux PM, LKML
On 10-05-19, 12:35, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
> It may not be particularly clear why the kobject_put() after
> failing kobject_init_and_add() in cpufreq_policy_alloc() is not
> redundant, so add a comment to explain that.
>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> ---
> drivers/cpufreq/cpufreq.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> Index: linux-pm/drivers/cpufreq/cpufreq.c
> ===================================================================
> --- linux-pm.orig/drivers/cpufreq/cpufreq.c
> +++ linux-pm/drivers/cpufreq/cpufreq.c
> @@ -1133,6 +1133,11 @@ static struct cpufreq_policy *cpufreq_po
> cpufreq_global_kobject, "policy%u", cpu);
> if (ret) {
> pr_err("%s: failed to init policy->kobj: %d\n", __func__, ret);
> + /*
> + * The entire policy object will be freed below, but the extra
> + * memory allocated for the kobject name needs to be freed by
> + * releasing the kobject.
> + */
> kobject_put(&policy->kobj);
> goto err_free_real_cpus;
> }
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
--
viresh
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-05-10 10:41 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-10 10:35 [PATCH] cpufreq: Explain the kobject_put() in cpufreq_policy_alloc() Rafael J. Wysocki
2019-05-10 10:41 ` Viresh Kumar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).