Subject: Re: split LFS vnode locks
To: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>
From: David Laight <david@l8s.co.uk>
List: tech-kern
Date: 12/17/2002 10:19:16
On Tue, Dec 17, 2002 at 01:58:53PM +0900, YAMAMOTO Takashi wrote:
> > I agree that the train-wreck behavior of the current vnode locking design
> > is poor, but that's how it is.  if you want to avoid that, we should discuss
> > changing the vnode locking design such it doesn't have that problem.
> > the SVR4 vnode locking design would be a good place to start, since it
> > doesn't intrinsically have this problem.
> 
> do you have any pointer to description of SVR4 locking design?

Do you mean the Solaris one of the Unixware one?
The vnops are very different, I did try to work out what solaris
was doing, but couldn't see the wood for the trees.
The UW stuff is relatively simple.  Almost everything only
relies on VNHOLD/VNRELE to ensure inodes dont disappear.
You can read/write lock a section of the file - but this
might be for flock().  I was only writing a layered fs, so
didn't have to worry about block allocation.  However I
assume that was done file FS specific locks, not a vnode lock.

	David

-- 
David Laight: david@l8s.co.uk