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@xen.org>
This commit is contained in:
Keir Fraser committed 2011-01-14 14:18:31 +00:00
1 parent 24273c92be
commit 9d9af7dca8
1 file changed
+1
+1
View File
@@ -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();
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.