Hi, On Fri, Jul 10, 2009 at 12:18:58AM +0300, Sergiu Ivanov wrote: > On Wed, Jul 08, 2009 at 09:39:06PM +0200, Carl Fredrik Hammar wrote: > > On Wed, Jul 08, 2009 at 03:41:51PM +0300, Sergiu Ivanov wrote:
> Also note that no other program but nfsd in the Hurd source tree uses > fsys_getfile and file_getfh (and, consequently, file handles). Also, > the content of a file handle seems pretty artificial, so Fredrik posed > the question whether the concept of a file handle makes much sense at > all and whether nfsd could be implemented without it. Well, I don't know exactly why, but I do know that NFS needs some stable representation of nodes. I remember how in a talk about some Linux filesystem they said they implemented a two-level structure for the directory index, with the explicit purpose of getting a stable directory order for NFS... > Secondly, nfsd seems to concoct a globally unique thing by maintaining > such a structure: {filesystem index; file handle} (consider > hurd/nfsd/cache.c, functions fh_hash and lookup_cache_handle). [...] > Unfourtunately, unionfs (as well as a number of other translator, > BTW), gives off ports to the underlying filesystems, too, so this RPC > cannot be properly implemented. Is this really a problem? The question is whether nfsd can deal with the fact that with unionfs, individual files can be supplied by different file systems, even in a single directory... (And if it can't in the current implementation, whether this is fixable.) -antrik-