]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/acpi/processor_idle.c
Merge branch 'master'
[linux-2.6-omap-h63xx.git] / drivers / acpi / processor_idle.c
index be2dae52f6fa47a6b74dbca63c47a553236cfd27..eb730a80952c6bc58c0cf3b0be80b9daf4aaf993 100644 (file)
@@ -94,7 +94,9 @@ static int set_max_cstate(struct dmi_system_id *id)
        return 0;
 }
 
-static struct dmi_system_id __initdata processor_power_dmi_table[] = {
+/* Actually this shouldn't be __cpuinitdata, would be better to fix the
+   callers to only run once -AK */
+static struct dmi_system_id __cpuinitdata processor_power_dmi_table[] = {
        { set_max_cstate, "IBM ThinkPad R40e", {
          DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
          DMI_MATCH(DMI_BIOS_VERSION,"1SET60WW")}, (void *)1},
@@ -899,7 +901,7 @@ static int acpi_processor_power_verify(struct acpi_processor *pr)
                case ACPI_STATE_C3:
                        acpi_processor_power_verify_c3(pr, cx);
 #ifdef ARCH_APICTIMER_STOPS_ON_C3
-                       if (c->x86_vendor == X86_VENDOR_INTEL) {
+                       if (cx->valid && c->x86_vendor == X86_VENDOR_INTEL) {
                                on_each_cpu(switch_APIC_timer_to_ipi,
                                                &mask, 1, 1);
                        }