summaryrefslogtreecommitdiffstats
path: root/sys/i386
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>1997-09-05 17:54:07 +0000
committerpeter <peter@FreeBSD.org>1997-09-05 17:54:07 +0000
commit494026a5bc94d5cc525f7f8706cfeb565c00c90c (patch)
treefeb145906f113bb46c470790c24241a02d07b72c /sys/i386
parent088ca8113e7be1fdd188cbf121f3938e2f9bb30a (diff)
downloadFreeBSD-src-494026a5bc94d5cc525f7f8706cfeb565c00c90c.zip
FreeBSD-src-494026a5bc94d5cc525f7f8706cfeb565c00c90c.tar.gz
Argh, what was I thinking?? Don't (yet) halt the CPU in the idle loop
while waiting for an interrupt (rather than spinning on the runqueue status bits), since the other cpu can put stuff in there and the sleeping cpu may not get an interrupt for a while. When we have a reschedule IPI, this can come back. Pointed out by: fsmp
Diffstat (limited to 'sys/i386')
-rw-r--r--sys/i386/i386/swtch.s4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/i386/i386/swtch.s b/sys/i386/i386/swtch.s
index f749f03..c21ea8c 100644
--- a/sys/i386/i386/swtch.s
+++ b/sys/i386/i386/swtch.s
@@ -33,7 +33,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: swtch.s,v 1.59 1997/08/09 00:02:47 dyson Exp $
+ * $Id: swtch.s,v 1.60 1997/08/26 18:10:33 peter Exp $
*/
#include "npx.h"
@@ -384,7 +384,9 @@ idle_loop:
CROSSJUMPTARGET(_idle)
ENTRY(default_halt)
+#ifndef SMP /* until we have a wakeup IPI */
hlt
+#endif
ret
/*
OpenPOWER on IntegriCloud