Re: [PATCH 0/5] Permit NFS superblock sharing [try #3]

From: David Howells
Date: Tue May 23 2006 - 12:53:09 EST


Linus Torvalds <torvalds@xxxxxxxx> wrote:

> > Following discussion with Al Viro, the following changes [try #2] have been
> > made to the previous attempt at this set of patches:
>
> Btw, I'd like Al to ack/nack the VFS-specific part, but if he does so, I
> can apply those early in the post.2.6.16-season, so that then the NFS
> specific parts can be decided on independently..

Any thoughts on whether you can reassert this commitment on the new set of
patches, at least for the getsb and statfs patches which touch every
filesystem. Those two would make life easier for Andrew:-)

Al: Could you at least ACK or NAK the concepts of those two patches, even if
you don't do a complete review of them?:

(*) getsb patch

The attached patch extends the get_sb() filesystem operation to take an
extra argument that permits the VFS to pass in the target vfsmount that
defines the mountpoint.

The filesystem is then required to manually set the superblock and root
dentry pointers. For most filesystems, this should be done with
simple_set_mnt() which will set the superblock pointer and then set the
root dentry to the superblock's s_root (as per the old default
behaviour).

(*) statfs patch

The attached patch gives the statfs superblock operation a dentry pointer
rather than a superblock pointer.

This complements the get_sb() patch. That reduced the significance of
sb->s_root, allowing NFS to place a fake root there. However, NFS does
require a dentry to use as a target for the statfs operation. This
permits the root in the vfsmount to be used instead.

The latter patch would also benefit Miklos Szeredi for FUSE:

http://www.ussg.iu.edu/hypermail/linux/kernel/0510.3/0234.html

And Nathan Scott for XFS.

These two patches can then be used by the NFS filesystem to share superblocks
(which is now done on a remote filesystem level as delineated by the FSID
presented by the NFS server rather than on a server level).

David
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/