Date: Sun, 5 Oct 2003 13:17:14 -0700 (PDT) From: Don Lewis <truckman@FreeBSD.org> To: jroberson@chesapeake.net Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern vfs_subr.c Message-ID: <200310052017.h95KHEN1049884@gw.catspoiler.org> In-Reply-To: <20031005155831.K99666-100000@mail.chesapeake.net>
next in thread | previous in thread | raw e-mail | index | archive | help
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?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200310052017.h95KHEN1049884>