cpufreq: Avoid double kobject_put() for the same kobject in error code path
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Sat, 3 Aug 2013 23:19:41 +0000 (01:19 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 7 Aug 2013 21:02:50 +0000 (23:02 +0200)
commit10659ab7b50e963429f1a681882404ca37aa584c
treea72a4499d7a8034342a4d498ab120b78249bf17d
parent71c3461ef7c67024792d283b88630245a6c169ba
cpufreq: Avoid double kobject_put() for the same kobject in error code path

The only case triggering a jump to the err_out_unregister label in
__cpufreq_add_dev() is when cpufreq_add_dev_interface() fails.
However, if cpufreq_add_dev_interface() fails, it calls kobject_put()
for the policy kobject in its error code path and since that causes
the kobject's refcount to become 0, the additional kobject_put() for
the same kobject under err_out_unregister and the
wait_for_completion() following it are pointless, so drop them.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
drivers/cpufreq/cpufreq.c