Re: 2.6.19-rc5-mm2

From: Mattia Dongili
Date: Wed Nov 15 2006 - 12:47:59 EST


On Wed, Nov 15, 2006 at 06:09:47AM -0800, Pallipadi, Venkatesh wrote:
[...]
> >data->cpu_feature == ACPI_ADR_SPACE_FIXED_HARDWARE.
>
> Yes. Patch from Mattia is indeed required for acpi-cpufreq.
> Mattia: Can you please send the patch towards Andrew (With signed off
> etc) for inclusion.

Venki, I'm a little worried about the switch/case in question (line
702): the data->cpu_feature is set either to SYSTEM_IO_CAPABLE or
SYSTEM_INTEL_MSR_CAPABLE just a few lines above so it seems the switch
variable is wrong and none of the 2 cases will ever get a chance to
execute.

Unfortunately I don't have enough knowledge to tell if it's simply
necessary to fix the switch variable as

- switch (data->cpu_feature) {
+ switch (perf->control_register.space_id) {
case ACPI_ADR_SPACE_SYSTEM_IO:

or if change it more dramatically like:

diff --git a/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c b/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c
index 18f4715..428ac5b 100644
--- a/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c
+++ b/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.c
@@ -699,18 +699,8 @@ static int acpi_cpufreq_cpu_init(struct
if (result)
goto err_freqfree;

- switch (data->cpu_feature) {
- case ACPI_ADR_SPACE_SYSTEM_IO:
- /* Current speed is unknown and not detectable by IO port */
- policy->cur = acpi_cpufreq_guess_freq(data, policy->cpu);
- break;
- case ACPI_ADR_SPACE_FIXED_HARDWARE:
- acpi_cpufreq_driver.get = get_cur_freq_on_cpu;
- get_cur_freq_on_cpu(cpu);
- break;
- default:
- break;
- }
+ acpi_cpufreq_driver.get = get_cur_freq_on_cpu;
+ policy->cur = get_cur_freq_on_cpu(cpu);

/* notify BIOS that we exist */
acpi_processor_notify_smm(THIS_MODULE);


Thoughts?
--
mattia
:wq!
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/