[CPUFREQ] Bugfix: Call driver exit in cpufreq_add_dev error path
A minor fix for cpufreq_add_dev() error path. We need to call driver->exit() if driver_init() call has succeeded. Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> Signed-off-by: Dave Jones <davej@redhat.com>
This commit is contained in:
parent
6b39374a27
commit
8085e1f1f0
1 changed files with 5 additions and 1 deletions
|
@ -627,7 +627,7 @@ static int cpufreq_add_dev (struct sys_device * sys_dev)
|
||||||
|
|
||||||
ret = kobject_register(&policy->kobj);
|
ret = kobject_register(&policy->kobj);
|
||||||
if (ret)
|
if (ret)
|
||||||
goto err_out;
|
goto err_out_driver_exit;
|
||||||
|
|
||||||
/* set up files for this cpu device */
|
/* set up files for this cpu device */
|
||||||
drv_attr = cpufreq_driver->attr;
|
drv_attr = cpufreq_driver->attr;
|
||||||
|
@ -673,6 +673,10 @@ static int cpufreq_add_dev (struct sys_device * sys_dev)
|
||||||
kobject_unregister(&policy->kobj);
|
kobject_unregister(&policy->kobj);
|
||||||
wait_for_completion(&policy->kobj_unregister);
|
wait_for_completion(&policy->kobj_unregister);
|
||||||
|
|
||||||
|
err_out_driver_exit:
|
||||||
|
if (cpufreq_driver->exit)
|
||||||
|
cpufreq_driver->exit(policy);
|
||||||
|
|
||||||
err_out:
|
err_out:
|
||||||
kfree(policy);
|
kfree(policy);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue