Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-devel

[Xen-devel] [PATCH] make SMP boot again with gcc 4

To: xen-devel@xxxxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH] make SMP boot again with gcc 4
From: Rik van Riel <riel@xxxxxxxxxx>
Date: Mon, 28 Mar 2005 15:34:42 -0500 (EST)
Delivery-date: Tue, 29 Mar 2005 06:59:27 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-archive: <http://sourceforge.net/mailarchive/forum.php?forum=xen-devel>
List-help: <mailto:xen-devel-request@lists.sourceforge.net?subject=help>
List-id: List for Xen developers <xen-devel.lists.sourceforge.net>
List-post: <mailto:xen-devel@lists.sourceforge.net>
List-subscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=subscribe>
List-unsubscribe: <https://lists.sourceforge.net/lists/listinfo/xen-devel>, <mailto:xen-devel-request@lists.sourceforge.net?subject=unsubscribe>
Sender: xen-devel-admin@xxxxxxxxxxxxxxxxxxxxx
For unknown reasons, this bug doesn't show up when Xen is compiled
with gcc-3.4, so I was off on a wild goose chase for a few days.
With this barrier added, the system boots fine again.

Note that we should probably move barrier into cpu_relax, but that's
a story for another patch.

Signed-off-by: Rik van Riel <riel@xxxxxxxxxx>

--- xen-unstable/xen/arch/x86/smpboot.c.barrier 2005-03-28 15:17:11.000000000 
-0500
+++ xen-unstable/xen/arch/x86/smpboot.c 2005-03-28 15:32:30.000000000 -0500
@@ -413,8 +413,10 @@ void __init start_secondary(void)
 
     smp_callin();
 
-    while (!atomic_read(&smp_commenced))
-        rep_nop();
+    while (!atomic_read(&smp_commenced)) {
+        cpu_relax();
+        barrier();
+    }
 
 #ifdef __i386__
     /*


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel

<Prev in Thread] Current Thread [Next in Thread>