]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
sunrpc: make debugfs file creation failure non-fatal
authorJeff Layton <jlayton@poochiereds.net>
Tue, 31 Mar 2015 16:03:28 +0000 (12:03 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 19 Apr 2015 08:10:16 +0000 (10:10 +0200)
commit511dffb4f4f261ef808679a2711a3781d457421e
treeaeb9eeb3db766f0d55a8fbf680aab8f4fc59a2ec
parent083b5ebbae9370a00fe79e2b16c94d1e892b5765
sunrpc: make debugfs file creation failure non-fatal

commit f9c72d10d6fbf949558cd088389a42213ed7b12d upstream.

We currently have a problem that SELinux policy is being enforced when
creating debugfs files. If a debugfs file is created as a side effect of
doing some syscall, then that creation can fail if the SELinux policy
for that process prevents it.

This seems wrong. We don't do that for files under /proc, for instance,
so Bruce has proposed a patch to fix that.

While discussing that patch however, Greg K.H. stated:

    "No kernel code should care / fail if a debugfs function fails, so
     please fix up the sunrpc code first."

This patch converts all of the sunrpc debugfs setup code to be void
return functins, and the callers to not look for errors from those
functions.

This should allow rpc_clnt and rpc_xprt creation to work, even if the
kernel fails to create debugfs files for some reason.

Symptoms were failing krb5 mounts on systems using gss-proxy and
selinux.

Fixes: 388f0c776781 "sunrpc: add a debugfs rpc_xprt directory..."
Signed-off-by: Jeff Layton <jeff.layton@primarydata.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
include/linux/sunrpc/debug.h
net/sunrpc/clnt.c
net/sunrpc/debugfs.c
net/sunrpc/sunrpc_syms.c
net/sunrpc/xprt.c