From owner-cvs-src@FreeBSD.ORG Wed Jun 18 21:10:57 2003 Return-Path: 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 B44CD37B401; Wed, 18 Jun 2003 21:10:57 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4C89343FA3; Wed, 18 Jun 2003 21:10:57 -0700 (PDT) (envelope-from truckman@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h5J4Av0U064994; Wed, 18 Jun 2003 21:10:57 -0700 (PDT) (envelope-from truckman@repoman.freebsd.org) Received: (from truckman@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h5J4AuoR064990; Wed, 18 Jun 2003 21:10:56 -0700 (PDT) Message-Id: <200306190410.h5J4AuoR064990@repoman.freebsd.org> From: Don Lewis Date: Wed, 18 Jun 2003 21:10:56 -0700 (PDT) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/kern vfs_syscalls.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 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, 19 Jun 2003 04:10:58 -0000 truckman 2003/06/18 21:10:56 PDT FreeBSD src repository Modified files: sys/kern vfs_syscalls.c Log: FILE_LOCK() uses a pool mutex, as does the vnode v_vnlock. Since pool mutexes are supposed to only be used as leaf mutexes, and what appear to be separate pool mutexes could be aliased together, it is bad idea for a thread to attempt to hold two pool mutexes at the same time. Slightly rearrange the code in kern_open() so that FILE_UNLOCK() is called before calling VOP_GETVOBJECT(), which will grab the v_vnlock mutex. Revision Changes Path 1.320 +5 -5 src/sys/kern/vfs_syscalls.c