afs: Support the AFS dynamic root
authorDavid Howells <dhowells@redhat.com>
Tue, 6 Feb 2018 06:26:30 +0000 (06:26 +0000)
committerDavid Howells <dhowells@redhat.com>
Tue, 6 Feb 2018 14:43:37 +0000 (14:43 +0000)
commit4d673da14533b32fe8d3125b5b7be4fea14e39a8
treed0780b5603a48614696e7e9afebe5b61552c6cd1
parent16280a15be751b9994e94c5dc944e93fa4293199
afs: Support the AFS dynamic root

Support the AFS dynamic root which is a pseudo-volume that doesn't connect
to any server resource, but rather is just a root directory that
dynamically creates mountpoint directories where the name of such a
directory is the name of the cell.

Such a mount can be created thus:

mount -t afs none /afs -o dyn

Dynamic root superblocks aren't shared except by bind mounts and
propagation.  Cell root volumes can then be mounted by referring to them by
name, e.g.:

ls /afs/grand.central.org/
ls /afs/.grand.central.org/

The kernel will upcall to consult the DNS if the address wasn't supplied
directly.

Signed-off-by: David Howells <dhowells@redhat.com>
Documentation/filesystems/afs.txt
fs/afs/dir.c
fs/afs/inode.c
fs/afs/internal.h
fs/afs/mntpt.c
fs/afs/super.c
net/dns_resolver/dns_query.c