Hi all,

The putback of:

6232737 Client should support NFS4ERR_MOVED and fs_locations
6232743 Server should support NFS4ERR_MOVED and fs_locations
6891289 client panick mutex_vector_tryenter with some stress testing

adds support for NFS referrals on the Solaris client and
server.  This is a means of pointing from a filesystem
object on one server to one or more server:/path combinations,
and can be used to construct uniform namespaces.  On a
server, the following commands create an NFS referral:

% nfsref add /users/thurlow \
jurassic-x4600.sfbay:/tank/home/Central/thurlow \
new-cistern.central:/export/home/thurlow
Created reparse point /users/thurlow

The following command can be used to examine a referral:

$ nfsref lookup /users/thurlow
/users/thurlow points to:
jurassic-x4600.sfbay:/tank/home/Central/thurlow
new-cistern.central:/export/home/thurlow

A client mounting the filesystem will see:

% pfexec mount rutamaya:/users /mnt
% ls /mnt
thurlow
% cd /mnt/thurlow
% df -k .
/mnt/thurlow       (jurassic-x4600.sfbay:/tank/home/Central/thurlow):10372284465
  blocks 10372284465 files

NFS referrals are built on top of reparse points on the
server and mirror mounts on the client.  Best service is
provided to modern NFSv4 clients, which use referrals
directly and will mount the first reachable location.  NFSv2
and NFSv3 clients and Solaris clients running bits prior to
this push are supported by seeing referrals as /net/host/path
symbolic links; clients known to support the /net automounter
feature include Solaris, Linux and MacOS.

Bugs related to NFS referrals points should be filed against
solaris/kernel/nfsv4.  Questions may be directed to
nfs-discuss at opensolaris.org.

Reply via email to