From owner-cvs-src@FreeBSD.ORG Mon Mar 28 09:24:51 2005 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 17B1B16A4CE; Mon, 28 Mar 2005 09:24:51 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F21E043D1F; Mon, 28 Mar 2005 09:24:50 +0000 (GMT) (envelope-from jeff@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j2S9Oo99025188; Mon, 28 Mar 2005 09:24:50 GMT (envelope-from jeff@repoman.freebsd.org) Received: (from jeff@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j2S9Ook1025187; Mon, 28 Mar 2005 09:24:50 GMT (envelope-from jeff) Message-Id: <200503280924.j2S9Ook1025187@repoman.freebsd.org> From: Jeff Roberson Date: Mon, 28 Mar 2005 09:24:50 +0000 (UTC) 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_lookup.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: Mon, 28 Mar 2005 09:24:51 -0000 jeff 2005-03-28 09:24:50 UTC FreeBSD src repository Modified files: sys/kern vfs_lookup.c Log: - Get rid of PDIRUNLOCK, instead, we fixup the lock state immediately after calling VOP_LOOKUP(). Rather than having each filesystem check the LOCKPARENT flag, we simply check it once here and unlock as required. The only unusual case is ISDOTDOT, where we require an unlocked vnode on return. Relocking this vnode with the child locked is allowed since the child is actually its parent. - Add a few asserts for some unusual conditions that I do not believe can happen. These will later go away and turn into implementations for these conditions. Sponsored by: Isilon Systems, Inc. Revision Changes Path 1.73 +51 -13 src/sys/kern/vfs_lookup.c