From owner-cvs-src-old@FreeBSD.ORG Tue Feb 3 09:01:57 2009 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1FAE41065672 for ; Tue, 3 Feb 2009 09:01:57 +0000 (UTC) (envelope-from jkoshy@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 0B4AE8FC20 for ; Tue, 3 Feb 2009 09:01:57 +0000 (UTC) (envelope-from jkoshy@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n1391uut083976 for ; Tue, 3 Feb 2009 09:01:56 GMT (envelope-from jkoshy@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n1391uxR083975 for cvs-src-old@freebsd.org; Tue, 3 Feb 2009 09:01:56 GMT (envelope-from jkoshy@repoman.freebsd.org) Message-Id: <200902030901.n1391uxR083975@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to jkoshy@repoman.freebsd.org using -f From: Joseph Koshy Date: Tue, 3 Feb 2009 09:01:45 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/amd64/amd64 exception.S machdep.c mp_machdep.c src/sys/amd64/include intr_machdep.h X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 03 Feb 2009 09:01:57 -0000 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 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