Re: fixing the vnode lifecycle

2013-09-26 Thread David Laight
On Wed, Sep 25, 2013 at 10:22:36PM -0400, Mouse wrote: Expect some file systems to use a key size != sizeof(ino_t) -- nfs for example uses file handles up to 64 bytes. IIRC all file systems provide a filehandle generation routine, There was a time when fh generation was needed only for

Re: fixing the vnode lifecycle

2013-09-26 Thread Mouse
IIRC all file systems provide a filehandle generation routine, There was a time when fh generation was needed only for the filesystem to be NFS-exportable. Is it now actually required for all filesystems? Doesn't posix (more or less) require files to have inode numbers? Sure, but what's

Re: fixing the vnode lifecycle

2013-09-25 Thread J. Hannken-Illjes
On Sep 22, 2013, at 5:28 AM, David Holland dholland-t...@netbsd.org wrote: snip First, obviously the vfs-level vnode cache code should provide vnode lookup so file systems don't need to maintain their own vnode tables. Killing off the fs-level vnode tables not only simplifies the world but

Re: fixing the vnode lifecycle

2013-09-25 Thread Brett Lymn
On Wed, Sep 25, 2013 at 02:33:43PM +0200, J. Hannken-Illjes wrote: On Sep 22, 2013, at 5:28 AM, David Holland dholland-t...@netbsd.org wrote: snip First, obviously the vfs-level vnode cache code should provide vnode lookup so file systems don't need to maintain their own vnode tables.

Re: fixing the vnode lifecycle

2013-09-25 Thread Mouse
Expect some file systems to use a key size != sizeof(ino_t) -- nfs for example uses file handles up to 64 bytes. IIRC all file systems provide a filehandle generation routine, There was a time when fh generation was needed only for the filesystem to be NFS-exportable. Is it now actually

Re: fixing the vnode lifecycle

2013-09-23 Thread Matt W. Benjamin
Perhaps both are acceptable. Ie, permit an FS to opt-out, then work on new shared primitives. Matt - David Holland dholland-t...@netbsd.org wrote: Another model entirely, on the other hand, is to get rid of the vfs-level vnode cache and make each fs fully responsible for its own

Re: fixing the vnode lifecycle

2013-09-22 Thread David Holland
On Sun, Sep 22, 2013 at 03:28:58AM +, David Holland wrote: So, here's some thinking out loud on the subject of fixing it. : (I also have no real idea yet how to get to where I'm describing from where we are in a decently incremental fashion.) I think the first step forward on that

fixing the vnode lifecycle

2013-09-21 Thread David Holland
jakllsch@ and I just spent quite some time (so far unsuccessfully) trying to figure out a hack to keep afs from deadlocking in vget(). As a consequence of this I've been looking through a bunch of the vnode lifecycle code and my irritation level has gone past some critical threshold. So, here's