diff --git a/xen/arch/x86/acpi/cpu_idle.c b/xen/arch/x86/acpi/cpu_idle.c index 226059cbfd..7ecf443562 100644 --- a/xen/arch/x86/acpi/cpu_idle.c +++ b/xen/arch/x86/acpi/cpu_idle.c @@ -842,6 +842,9 @@ int cpuidle_init_cpu(unsigned int cpu) acpi_power->states[i].idx = i; acpi_power->cpu = cpu; + + spin_lock_init(&acpi_power->stat_lock); + processor_powers[cpu] = acpi_power; } @@ -849,7 +852,6 @@ int cpuidle_init_cpu(unsigned int cpu) acpi_power->states[1].type = ACPI_STATE_C1; acpi_power->states[1].entry_method = ACPI_CSTATE_EM_HALT; acpi_power->safe_state = &acpi_power->states[1]; - spin_lock_init(&acpi_power->stat_lock); return 0; }