From owner-cvs-src@FreeBSD.ORG Mon Aug 6 05:11:01 2007 Return-Path: Delivered-To: cvs-src@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9050F16A417; Mon, 6 Aug 2007 05:11:01 +0000 (UTC) (envelope-from marcel@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 7E42813C45E; Mon, 6 Aug 2007 05:11:01 +0000 (UTC) (envelope-from marcel@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id l765B1Sh023808; Mon, 6 Aug 2007 05:11:01 GMT (envelope-from marcel@repoman.freebsd.org) Received: (from marcel@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id l765B1Xa023807; Mon, 6 Aug 2007 05:11:01 GMT (envelope-from marcel) Message-Id: <200708060511.l765B1Xa023807@repoman.freebsd.org> From: Marcel Moolenaar Date: Mon, 6 Aug 2007 05:11:01 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/ia64/ia64 exception.S interrupt.c src/sys/ia64/include md_var.h X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Aug 2007 05:11:01 -0000 marcel 2007-08-06 05:11:01 UTC FreeBSD src repository Modified files: sys/ia64/ia64 exception.S interrupt.c sys/ia64/include md_var.h Log: Keep interrupts disabled while handling external interrupts. There's no advantage in allowing nested external interrupts. In fact, it leads to a potential stack overrun. While here, put the interrupt vector in the trapframe, so as to compensate for the 36 cycle latency of reading cr.ivr. Further simplify assembly code by dealing with ASTs from C. Approved by: re (blanket) Revision Changes Path 1.62 +22 -45 src/sys/ia64/ia64/exception.S 1.61 +41 -27 src/sys/ia64/ia64/interrupt.c 1.26 +1 -1 src/sys/ia64/include/md_var.h