Date: Thu, 23 Dec 2004 19:47:59 +0000 (UTC) From: John Baldwin <jhb@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/i386/i386 local_apic.c src/sys/i386/include apicvar.h Message-ID: <200412231947.iBNJlxjJ075572@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jhb 2004-12-23 19:47:59 UTC FreeBSD src repository Modified files: sys/i386/i386 local_apic.c sys/i386/include apicvar.h Log: - Add a function to set the Task Priority Register (TPR) of the local APIC. Currently this is only used to initiailize the TPR to 0 during initial setup. - Reallocate vectors for the local APIC timer, error, and thermal LVT entries. The timer entry is allocated from the top of the I/O interrupt range reducing the number of vectors available for hardware interrupts to 191. Linux happens to use the same exact vector for its timer interrupt as well. If the timer vector shared the same priority queue as the IPI handlers, then the frequency that the timer vector will eventually be firing at can interact badly with the IPIs resulting in the queue filling and the dreaded IPI stuck panics, hence it being located at the top of the previous priority queue instead. - Fixup various minor nits in comments. Revision Changes Path 1.10 +25 -8 src/sys/i386/i386/local_apic.c 1.10 +14 -10 src/sys/i386/include/apicvar.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412231947.iBNJlxjJ075572>