From owner-cvs-src@FreeBSD.ORG Sun Oct 5 13:17:28 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 027D816A4B3; Sun, 5 Oct 2003 13:17:28 -0700 (PDT) Received: from gw.catspoiler.org (217-ip-163.nccn.net [209.79.217.163]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1768143F93; Sun, 5 Oct 2003 13:17:27 -0700 (PDT) (envelope-from truckman@FreeBSD.org) Received: from FreeBSD.org (mousie.catspoiler.org [192.168.101.2]) by gw.catspoiler.org (8.12.9/8.12.9) with ESMTP id h95KHEN1049884; Sun, 5 Oct 2003 13:17:18 -0700 (PDT) (envelope-from truckman@FreeBSD.org) Message-Id: <200310052017.h95KHEN1049884@gw.catspoiler.org> Date: Sun, 5 Oct 2003 13:17:14 -0700 (PDT) From: Don Lewis To: jroberson@chesapeake.net In-Reply-To: <20031005155831.K99666-100000@mail.chesapeake.net> MIME-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii cc: cvs-src@FreeBSD.org cc: jeff@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern vfs_subr.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: Sun, 05 Oct 2003 20:17:28 -0000 On 5 Oct, Jeff Roberson wrote: > In vflush we do sleep on the vnode lock. The flags are LK_EXCLUSIVE | > LK_INTERLOCK. We dont pass in LK_NOWAIT. Ohhh ... I always thought we wouldn't sleep unless we specified LK_RETRY. The fine man page isn't terribly helpful about when to use some of the flags. If we hold a reference to an active vnode, can it ever be type VT_NON? And if it is of type VT_NON, could it ever morph into some other type while we hold the reference? If not, why would we want to specify the LK_RETRY flag for such a vnode? Does this mean that way too many users of vn_lock() are specifying the LK_RETRY flag?