On Fri, Aug 26, 2011 at 08:33:47AM +0000, YAMAMOTO Takashi wrote: > > What happens if vn_lock(vp, LK_EXCLUSIVE|LK_RETRY) is called on a > > LK_SHARED locked vnode? I would expect it to sleep until the shared lock > > is released. > > a recursive locking attempt is an error.
We have no way to upgrade a lock from shared to exclusive? > if we go this route, it's cleaner to use a puffs internal lock, or change > the locking protocol to require at least LK_SHARED for VOP_GETATTR. > cf. vfs_syscalls.c rev.1.350.2.3 I will need an exclusive lock. Of course I can add a PUFFS mutex, but I will have to use it for a lot of calls, it is a bit frustrating to not use the vnode lock. -- Emmanuel Dreyfus m...@netbsd.org