[0/9] Client container fixes
mbox series

Message ID 20190424214650.4658-1-trond.myklebust@hammerspace.com
Headers show
Series
  • Client container fixes
Related show

Message

Trond Myklebust April 24, 2019, 9:46 p.m. UTC
This patch set aims to fix up the NFS client when invoked from inside a
container. It aims to ensure that upcalls use the correct user namespace
when talking to the rpc.gssd and rpc.idmapd daemons.

Trond Myklebust (9):
  SUNRPC: Cache cred of process creating the rpc_client
  NFS: Store the credential of the mount process in the nfs_server
  SUNRPC: Use the client user namespace when encoding creds
  SUNRPC: Use namespace of listening daemon in the client AUTH_GSS
    upcall
  NFS: Convert NFSv3 to use the container user namespace
  NFSv4: Convert the NFS client idmapper to use the container user
    namespace
  NFS: Convert NFSv2 to use the container user namespace
  NFS: When mounting, don't share filesystems between different user
    namespaces
  lockd: Store the lockd client credential in struct nlm_host

 fs/lockd/clntlock.c            |   2 +-
 fs/lockd/host.c                |  10 ++-
 fs/lockd/mon.c                 |   1 +
 fs/nfs/client.c                |   7 ++
 fs/nfs/internal.h              |   1 +
 fs/nfs/mount_clnt.c            |   2 +
 fs/nfs/nfs2xdr.c               |  58 +++++++++-----
 fs/nfs/nfs3client.c            |   1 +
 fs/nfs/nfs3xdr.c               | 142 ++++++++++++++++++++-------------
 fs/nfs/nfs4client.c            |   6 ++
 fs/nfs/nfs4idmap.c             |  27 +++++--
 fs/nfs/super.c                 |  17 ++++
 fs/nfsd/nfs4callback.c         |   1 +
 include/linux/lockd/bind.h     |   1 +
 include/linux/lockd/lockd.h    |   4 +-
 include/linux/nfs_fs_sb.h      |   3 +
 include/linux/sunrpc/clnt.h    |   2 +
 net/sunrpc/auth_gss/auth_gss.c |  63 +++++++++++----
 net/sunrpc/auth_unix.c         |   9 ++-
 net/sunrpc/clnt.c              |   7 ++
 net/sunrpc/rpcb_clnt.c         |   9 ++-
 21 files changed, 267 insertions(+), 106 deletions(-)