aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAkinobu Mita <akinobu.mita@gmail.com>2008-07-13 22:59:44 -0400
committerDave Jones <davej@redhat.com>2008-10-09 13:52:42 -0400
commit847aef6ffd85787b62395b64719f8f7c5975bf1b (patch)
treeb0bbc10bd911ca6d6cfbe98ed1f691db4c40a8b1
parent8d2d2051e50c4ca0207a42b243369e22f7d90a5c (diff)
[CPUFREQ] acpi-cpufreq: add error handling for cpufreq_register_driver() error
add error handling for cpufreq_register_driver() error Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Cc: cpufreq@lists.linux.org.uk Signed-off-by: Dave Jones <davej@redhat.com>
-rw-r--r--arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c b/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c
index dd097b835839..1def5b06fa4a 100644
--- a/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c
+++ b/arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c
@@ -785,7 +785,11 @@ static int __init acpi_cpufreq_init(void)
785 if (ret) 785 if (ret)
786 return ret; 786 return ret;
787 787
788 return cpufreq_register_driver(&acpi_cpufreq_driver); 788 ret = cpufreq_register_driver(&acpi_cpufreq_driver);
789 if (ret)
790 free_percpu(acpi_perf_data);
791
792 return ret;
789} 793}
790 794
791static void __exit acpi_cpufreq_exit(void) 795static void __exit acpi_cpufreq_exit(void)
@@ -795,8 +799,6 @@ static void __exit acpi_cpufreq_exit(void)
795 cpufreq_unregister_driver(&acpi_cpufreq_driver); 799 cpufreq_unregister_driver(&acpi_cpufreq_driver);
796 800
797 free_percpu(acpi_perf_data); 801 free_percpu(acpi_perf_data);
798
799 return;
800} 802}
801 803
802module_param(acpi_pstate_strict, uint, 0644); 804module_param(acpi_pstate_strict, uint, 0644);