|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH] Fix cpu hotplug bug of mtrr update inconsistency
Fix cpu hotplug bug of mtrr update inconsistency
c/s 20021 changes some mtrr update logic.
A bug is, when a cpu hot-add and then mtrr update, another cpu hot-add may
break cpu_online_map
consistency and result in deadlock.
This patch is used to fix the bug. It move 'mtrr_ap_init' back to bp-ap sync
stage protected by
CPU_STATE_CALLOUT and CPU_STATE_CALLIN, and then keep consistency.
Signed-off-by: Liu, Jinsong <jinsong.liu@xxxxxxxxx>
diff -r 96917cf25bf3 xen/arch/x86/smpboot.c
--- a/xen/arch/x86/smpboot.c Fri May 28 10:54:07 2010 +0100
+++ b/xen/arch/x86/smpboot.c Tue Jun 01 13:58:44 2010 +0800
@@ -202,6 +202,8 @@ void smp_callin(void)
/* Save our processor parameters. */
smp_store_cpu_info(cpu);
+ mtrr_ap_init();
+
if ( (rc = hvm_cpu_up()) != 0 )
{
extern void (*dead_idle) (void);
@@ -374,7 +376,6 @@ void start_secondary(void *unused)
/* We can take interrupts now: we're officially "up". */
local_irq_enable();
- mtrr_ap_init();
microcode_resume_cpu(cpu);
fix-cpu-hotplug-mtrr.patch
Description: fix-cpu-hotplug-mtrr.patch
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] [PATCH] Fix cpu hotplug bug of mtrr update inconsistency,
Liu, Jinsong <=
|
|
|
|
|