[CPUFREQ] powernow-k7: ACPI perflib unregistration cleanup The unregistration of the ACPI performance library should be done in the CPU exit function, and the cleanup too. Signed-off-by: Dominik Brodowski --- arch/i386/kernel/cpu/cpufreq/powernow-k7.c | 19 +++++++++++-------- 1 files changed, 11 insertions(+), 8 deletions(-) Index: 2.6.10-rc3/arch/i386/kernel/cpu/cpufreq/powernow-k7.c =================================================================== --- 2.6.10-rc3.orig/arch/i386/kernel/cpu/cpufreq/powernow-k7.c 2004-12-13 19:19:05.389643233 +0100 +++ 2.6.10-rc3/arch/i386/kernel/cpu/cpufreq/powernow-k7.c 2004-12-13 19:20:10.095605537 +0100 @@ -635,6 +635,17 @@ static int powernow_cpu_exit (struct cpufreq_policy *policy) { cpufreq_frequency_table_put_attr(policy->cpu); + +#ifdef CONFIG_X86_POWERNOW_K7_ACPI + if (acpi_processor_perf) { + acpi_processor_unregister_performance(acpi_processor_perf, 0); + kfree(acpi_processor_perf); + } +#endif + + if (powernow_table) + kfree(powernow_table); + return 0; } @@ -664,15 +675,7 @@ static void __exit powernow_exit (void) { -#ifdef CONFIG_X86_POWERNOW_K7_ACPI - if (acpi_processor_perf) { - acpi_processor_unregister_performance(acpi_processor_perf, 0); - kfree(acpi_processor_perf); - } -#endif cpufreq_unregister_driver(&powernow_driver); - if (powernow_table) - kfree(powernow_table); } module_param(acpi_force, int, 0444);