SUNRPC: handle RPC client pipefs dentries by network namespace aware routines
authorStanislav Kinsbursky <skinsbursky@parallels.com>
Wed, 11 Jan 2012 15:18:01 +0000 (19:18 +0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 31 Jan 2012 23:20:25 +0000 (18:20 -0500)
commit0157d021d23a087eecfa830502f81cfe843f0d16
treee1e1e7e75146c7d234f552a0ffc6b0124827fe6f
parentc239d83b9921b8a8005a3bcd23000cfe18acf5c2
SUNRPC: handle RPC client pipefs dentries by network namespace aware routines

v2:
1) "Over-put" of PipeFS mount point fixed. Fix is ugly, but allows to bisect
the patch set. And it will be removed later in the series.

This patch makes RPC clients PipeFs dentries allocations in it's owner network
namespace context.
RPC client pipefs dentries creation logic has been changed:
1) Pipefs dentries creation by sb was moved to separated function, which will
be used for handling PipeFS mount notification.
2) Initial value of RPC client PipeFS dir dentry is set no NULL now.

RPC client pipefs dentries cleanup logic has been changed:
1) Cleanup is done now in separated rpc_remove_pipedir() function, which takes
care about pipefs superblock locking.

Also this patch removes slashes from cb_program.pipe_dir_name and from
NFS_PIPE_DIRNAME to make rpc_d_lookup_sb() work. This doesn't affect
vfs_path_lookup() results in nfs4blocklayout_init() since this slash is cutted
off anyway in link_path_walk().

Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfsd/nfs4callback.c
include/linux/nfs.h
net/sunrpc/clnt.c