Date: Wed, 01 May 2002 16:15:35 -0400 (EDT) From: John Baldwin <jhb@FreeBSD.org> To: Terry Lambert <tlambert2@mindspring.com> Cc: freebsd-smp@freebsd.org, Andrew Gallatin <gallatin@cs.duke.edu> Subject: Re: hlt when idle? Message-ID: <XFMail.20020501161535.jhb@FreeBSD.org> In-Reply-To: <3CD022A2.FACD21E9@mindspring.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 01-May-2002 Terry Lambert wrote: > Andrew Gallatin wrote: >> Can somebody remind me why we do not hlt in the idle loop on MP x86s? > > Halting with "giant" and/or "the scheduler lock" held is bad. Considering the idle loop doesn't hold any locks this doesn't apply. >> Do both CPUs get clock interrupts on x86? > > The clock interrupts may or may not be routed via the APIC; > routing of the clock interrupt is one of the most common > bogosities that you have to handle on x86 SMP systems; there > is a special printf for complaining about having to work > around broken BIOS and/or motherboard circuitry. You don't know what you are talking about. All the interrupts come through the APIC. The hack that we do is to abuse the fact that the normal AT PIC routes through the APIC to piggy back the clock interrupt onto that (via routing it to the AT PIC). However, the interrupt still comes to the CPU from the I/O APIc. -- John Baldwin <jhb@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ 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?XFMail.20020501161535.jhb>