[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] x86 acpi: Fix crash in enable_nonboot_cpus() on wakeup from S3/S4



# HG changeset patch
# User Keir Fraser <keir@xxxxxxx>
# Date 1295014711 0
# Node ID 0e693052c7918734e85efd26bfbe382ed518f5bc
# Parent  bb0d0141ebf7f4ffec54c0c5775e964a41978a4c
x86 acpi: Fix crash in enable_nonboot_cpus() on wakeup from S3/S4

Bringing a CPU back online can require RCU work to be flushed, because
the per-cpu data from last time the CPU was online may not yet be
deallocated. Use the new rcu_barrier() interface function to achieve
this.

Signed-off-by: Keir Fraser <keir@xxxxxxx>
---
 xen/arch/x86/acpi/power.c |    1 +
 1 files changed, 1 insertion(+)

diff -r bb0d0141ebf7 -r 0e693052c791 xen/arch/x86/acpi/power.c
--- a/xen/arch/x86/acpi/power.c Fri Jan 14 14:16:42 2011 +0000
+++ b/xen/arch/x86/acpi/power.c Fri Jan 14 14:18:31 2011 +0000
@@ -206,6 +206,7 @@ static int enter_state(u32 state)
  enable_cpu:
     cpufreq_add_cpu(0);
     microcode_resume_cpu(0);
+    rcu_barrier();
     mtrr_aps_sync_begin();
     enable_nonboot_cpus();
     mtrr_aps_sync_end();

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.