From owner-cvs-src@FreeBSD.ORG Thu Jul 27 22:32:30 2006 Return-Path: X-Original-To: cvs-src@FreeBSD.org Delivered-To: cvs-src@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C448216A4DD; Thu, 27 Jul 2006 22:32:30 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 89A1643D46; Thu, 27 Jul 2006 22:32:30 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k6RMWUtA034773; Thu, 27 Jul 2006 22:32:30 GMT (envelope-from jhb@repoman.freebsd.org) Received: (from jhb@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k6RMWUq2034772; Thu, 27 Jul 2006 22:32:30 GMT (envelope-from jhb) Message-Id: <200607272232.k6RMWUq2034772@repoman.freebsd.org> From: John Baldwin Date: Thu, 27 Jul 2006 22:32:30 +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/amd64/amd64 trap.c src/sys/amd64/ia32 ia32_syscall.c src/sys/arm/arm trap.c src/sys/conf files src/sys/i386/i386 trap.c src/sys/ia64/ia32 ia32_trap.c src/sys/ia64/ia64 trap.c src/sys/powerpc/powerpc trap.c ... 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: Thu, 27 Jul 2006 22:32:30 -0000 jhb 2006-07-27 22:32:30 UTC FreeBSD src repository Modified files: sys/amd64/amd64 trap.c sys/amd64/ia32 ia32_syscall.c sys/arm/arm trap.c sys/conf files sys/i386/i386 trap.c sys/ia64/ia32 ia32_trap.c sys/ia64/ia64 trap.c sys/powerpc/powerpc trap.c sys/sparc64/sparc64 trap.c Log: Unify the checking for lock misbehavior in the various syscall() implementations and adjust some of the checks while I'm here: - Add a new check to make sure we don't return from a syscall in a critical section. - Add a new explicit check before userret() to make sure we don't return with any locks held. The advantage here is that we can include the syscall number and name in syscall() whereas that info is not available in userret(). - Drop the mtx_assert()'s of sched_lock and Giant. They are replaced by the more general checks just added. MFC after: 2 weeks Revision Changes Path 1.305 +13 -7 src/sys/amd64/amd64/trap.c 1.14 +13 -5 src/sys/amd64/ia32/ia32_syscall.c 1.25 +12 -4 src/sys/arm/arm/trap.c 1.1134 +1 -1 src/sys/conf/files 1.293 +13 -7 src/sys/i386/i386/trap.c 1.10 +13 -7 src/sys/ia64/ia32/ia32_trap.c 1.121 +13 -7 src/sys/ia64/ia64/trap.c 1.59 +13 -5 src/sys/powerpc/powerpc/trap.c 1.83 +13 -5 src/sys/sparc64/sparc64/trap.c