Subject: Re: CVS commit: src/sys
To: None <>
From: YAMAMOTO Takashi <>
List: source-changes
Date: 12/28/2005 14:13:56
> > > One thing I noted in this change is that vget() will now call 
> > > VOP_INACTIVE() on vnodes that were never activated. Will this cause issues 
> > > with other file systems?
> > 
> > what kind of issues?
> > afaik, vn_lock fails only when the vnode is being reclaimed.
> > in that case, calling vrele doesn't hurt.
> I'm also suspicious of this change.  this change doesn't seem related
> to the purpose given in the check-in comment, is it?  if you really want
> to reduce the amount of duplicate code, why not just split it into
> multiple functions?

well, it might not be strictly related to the rest of the commit, right.

i think VOP_INACTIVE should be called here,
at least when LK_SLEEPFAIL is involved.  (checkalias)
(i don't think using LK_SLEEPFAIL is a good idea,
but it's a separate topic.)

> also, do we really another flag that means the same thing as VXLOCK?
> why not just use VXLOCK?  this would mean rearranging vgonel(), vclean(),
> etc, a bit, but the result would be much nicer.

do you mean eg. introducing another flag to make vclean exclusive?

i agree it would be nicer.  however, as i have a plan to create
a branch to separate vgone from vnode lock, and it can change this code,
i don't want to work so hard to make this nicer at this point.