[xen-3.2-testing] x86: Fix reboot failure after S3

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[xen-3.2-testing] x86: Fix reboot failure after S3

Xen patchbot-3.2-testing
# HG changeset patch
# User Keir Fraser <[hidden email]>
# Date 1212161765 -3600
# Node ID 89193df0ec1ca2b94bef17152db0c3e9da15f8d6
# Parent  84196133c9e5a1e4ac84a04cb3c48737159d1878
x86: Fix reboot failure after S3

"warm reset vector" is used to start APs. At booting time, it is set
by BP, and cleared after all APs have started. When do S3, similar
work need to do. However, when enable non-boot CPUs after S3, Xen just
sets this vector, but forgets to clear it after APs startup.

Signed-off-by: Huacai Chen <[hidden email]>
xen-unstable changeset:   17751:564c9be76aa496fda12923ffca5c4ca41a6c395f
xen-unstable date:        Thu May 29 09:42:59 2008 +0100
---
 xen/arch/x86/smpboot.c |    5 +++++
 1 files changed, 5 insertions(+)

diff -r 84196133c9e5 -r 89193df0ec1c xen/arch/x86/smpboot.c
--- a/xen/arch/x86/smpboot.c Wed May 28 16:36:13 2008 +0100
+++ b/xen/arch/x86/smpboot.c Fri May 30 16:36:05 2008 +0100
@@ -1362,6 +1362,11 @@ void enable_nonboot_cpus(void)
  panic("Not enough cpus");
  }
  cpus_clear(frozen_cpus);
+
+ /*
+ * Cleanup possible dangling ends after sleep...
+ */
+ smpboot_restore_warm_reset_vector();
 }
 #else /* ... !CONFIG_HOTPLUG_CPU */
 int __cpu_disable(void)

_______________________________________________
Xen-changelog mailing list
[hidden email]
http://lists.xensource.com/xen-changelog