Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Apr 2000 09:26:05 -0600
From:      Steve Passe <smp@csn.net>
To:        djb@ifa.au.dk
Cc:        Alfred Perlstein <bright@wintelcom.net>, freebsd-smp@FreeBSD.ORG
Subject:   Re: hlt instructions and temperature issues 
Message-ID:  <200004271526.JAA24484@Ilsa.StevesCafe.com>
In-Reply-To: Your message of "Thu, 27 Apr 2000 16:38:51 %2B0200." <20000427163851.A8149@relativity.student.utwente.nl> 

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,

switch.s:

ENTRY(default_halt)
	sti
#ifndef SMP
	hlt					/* XXX:	 until a wakeup IPI */
#endif
	ret

I think the reason we don't hlt is that it is problematic to get the CPU 
running again without an INT to wake it up.  So the scheduler has a process
for it, but its not given a chance to run it as the CPU is hlt'd.  As the 
comment suggests a wakeup IPI (inter-processor INT) could wake it, but the
more complicated code is that which hands off the process from the signaling
CPU to the recently woken CPU.
--
Steve Passe	| powered by 
smp@csn.net	|            Symmetric MultiProcessor FreeBSD




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200004271526.JAA24484>