Re: [RFC PATCH 0/4] SUNRPC: rework cache upcall to avoid NFSd root swapping

J. Bruce Fields
2013-01-30T23:01:05Z

On Tue, Jan 15, 2013 at 11:09:23AM +0300, Stanislav Kinsbursky wrote:
> The main idea of this patch set is to call cache request not on kthread
> upcall, but on userspace daemon cache_read call. This fixes the problem with
> gaining of wrong dentry path after calling d_path() in kthread root context
> (svc_export_request() callback), which always work in init root context, but
> containers can work in "root jail" - i.e. have it's own nested root.

Sorry for the delay. This looks good to me--committing pending some
testing.

What's left now for basic containerized nfsd support?

--b.

>
> The following series implements...
>
> ---
>
> Stanislav Kinsbursky (4):
> SUNRPC: introduce cache_detail->cache_request callback
> SUNRPC: remove cache_detail->cache_upcall callback
> SUNRPC: remove "cache_request" argument in sunrpc_cache_pipe_upcall() function
> SUNRPC: move cache_detail->cache_request callback call to cache_read()
>
>
> fs/nfs/dns_resolve.c | 2 +-
> fs/nfsd/export.c | 14 ++----------
> fs/nfsd/nfs4idmap.c | 16 ++-----------
> include/linux/sunrpc/cache.h | 11 +++------
> net/sunrpc/auth_gss/svcauth_gss.c | 8 +------
> net/sunrpc/cache.c | 44 ++++++++++++++++++++-----------------
> net/sunrpc/svcauth_unix.c | 14 ++----------
> 7 files changed, 36 insertions(+), 73 deletions(-)
>