On Tue, May 02, 2000 at 11:20:10PM +0200, Steve Dodd wrote:
> On Tue, May 02, 2000 at 01:50:16PM -0700, Chris Mason wrote:
> > 
> > ReiserFS has unique inode numbers, but they aren't enough to actually find
> > the inode on disk.  That requires the inode number, and another 32 bits of
> > information we call the packing locality.  The packing locality starts as
> > the parent directory inode number, but does not change across renames.
> > 
> > So, we need to add a fh_to_dentry lookup operation for knfsd to use, and
> > perhaps a dentry_to_fh operation as well (but _fh_update in pre6 looks ok
> > for us).
> 
> First off, could we call them "inode labels" or something less confusing?
> "file" outside of NFS has a different meaning (semantic namespace collision
> <g>) Also, I don't see how a "fh_to_dentry" (or ilbl_to_dentry) is going to
> work - (think hardlinks, etc.). You do need an iget_by_label or something

NFS file handles are always a kind of hard link, in traditional Unix
they refer directly to inodes. Linux knfsd uses dentries only because the
VFS semantics require it, not because of any NFS requirements.

> similar though. Details that need to be worked out would be max label size
> and how they're passed around (void * ptr and a length?)

iget_by_label() is already implemented in 2.3 -- see iget4(). Unfortunately
it is a bit inefficient to search inodes this way [because you cannot index
on the additional information], but not too bad.

> 
> Also, what are the size constraints imposed by NFS? What about other network
> filesystems?

NFSv2 has 2GB limits for files. 
 
-Andi

Reply via email to