Source-Changes-D archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src/sys/kern
On Tue Aug 17 2010 at 16:26:10 +0200, Juergen Hannken-Illjes wrote:
> > > > It's not obvious from your commit message what prevents it from gaining
> > > > a reference after the lock is dropped.
> > >
> > > The interlock is taken before the freelist lock is dropped and vnodes on
> > > the free lists should never appear on other lists.
> >
> > Not even the name cache?
> >
> > (I can't remember off the top of my head, but IIRC there's something
> > sneaky about it)
>
> Name cache does vtryget() then vget(). As the usecount is zero, vtryget()
> fails and vget() gets called with the interlock held and needs the freelist
> lock to proceed.
>
> I still don't see a race here.
Ok, it wasn't clear what you meant by "other lists".
Your commit message makes sense now.
Home |
Main Index |
Thread Index |
Old Index