cvs commit: src/sys/fs/fdescfs fdesc_vnops.c

Robert Watson rwatson at FreeBSD.org
Tue Feb 26 12:40:38 UTC 2008


On Tue, 26 Feb 2008, Konstantin Belousov wrote:

> kib         2008-02-26 10:10:55 UTC
>
>  FreeBSD src repository
>
>  Modified files:
>    sys/fs/fdescfs       fdesc_vnops.c
>  Log:
>  Rename fdescfs vnode from "fdesc" to "fdescfs" to avoid name collision
>  of the vnode lock with the fdesc_mtx mutex. Having different kinds of
>  locks with the same name confuses witness.

I was wondering about this also--introducing locks implicitly named the same 
as the vnode type will cause other related problems over time.  At the very 
least, we should be doing some name munging, I think, so that the lock name 
becomes foo_vnode_mtx.  I realize this is somewhat complicated by the fact 
that WITNESS stores a pointer to the name rather than the name itself.  I ran 
into a related problem with Coda when unloading the Coda module -- because 
vnodes were left around, presumably in a deadfs state, on module unload, 
WITNESS was panicking when it bumped into one of the locks on those vnodes as 
it tried to compare string names to a string in the Coda module...

Robert N M Watson
Computer Laboratory
University of Cambridge


More information about the cvs-src mailing list