[RFC PATCH 0/4] SUNRPC: rework cache upcall to avoid NFSd rootswapping

From: Stanislav Kinsbursky
Date: Tue Jan 15 2013 - 03:08:33 EST


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.

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(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/