Date: Tue, 3 Feb 2009 09:01:45 +0000 (UTC) From: Joseph Koshy <jkoshy@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/amd64/amd64 exception.S machdep.c mp_machdep.c src/sys/amd64/include intr_machdep.h Message-ID: <200902030901.n1391uxR083975@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jkoshy 2009-02-03 09:01:45 UTC FreeBSD src repository Modified files: sys/amd64/amd64 exception.S machdep.c mp_machdep.c sys/amd64/include intr_machdep.h Log: SVN rev 188065 on 2009-02-03 09:01:45Z by jkoshy Improve robustness of NMI handling, for NMIs recognized in kernel mode. - Make the NMI handler run on its own stack (TSS_IST2). - Store the GSBASE value for each CPU just before the start of each NMI stack, permitting efficient retrieval using %rsp-relative addressing. - For NMIs taken from kernel mode, program MSR_GSBASE explicitly since one or both of MSR_GSBASE and MSR_KGSBASE can be potentially invalid. The current contents of MSR_GSBASE are saved and restored at exit. - For NMIs handled from user mode, continue to use 'swapgs' to load the per-CPU GSBASE. Reviewed by: jeff Debugging help: jeff Tested by: gnn, Artem Belevich <artemb at gmail dot com> Revision Changes Path 1.137 +52 -25 src/sys/amd64/amd64/exception.S 1.691 +13 -1 src/sys/amd64/amd64/machdep.c 1.297 +10 -0 src/sys/amd64/amd64/mp_machdep.c 1.21 +9 -0 src/sys/amd64/include/intr_machdep.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200902030901.n1391uxR083975>