49 lines
1.9 KiB
Diff
49 lines
1.9 KiB
Diff
|
Bugzilla: N/A
|
||
|
Upstream-status: queued in NFS git tree (for 3.13/3.14?)
|
||
|
|
||
|
Currently, the client will attempt to use krb5i in the SETCLIENTID call
|
||
|
even if rpc.gssd isn't running. When that fails, it'll then fall back to
|
||
|
RPC_AUTH_UNIX. This introduced a delay when mounting if rpc.gssd isn't
|
||
|
running, and causes warning messages to pop up in the ring buffer.
|
||
|
|
||
|
Check to see if rpc.gssd is running before even attempting to use krb5i
|
||
|
auth, and just silently skip trying to do so if it isn't. In the event
|
||
|
that the admin is actually trying to mount with krb5*, it will still
|
||
|
fail at a later stage of the mount attempt.
|
||
|
|
||
|
Signed-off-by: Jeff Layton <jlayton@redhat.com>
|
||
|
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
|
||
|
---
|
||
|
fs/nfs/nfs4client.c | 7 ++++++-
|
||
|
1 files changed, 6 insertions(+), 1 deletions(-)
|
||
|
|
||
|
diff -up linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c
|
||
|
--- linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c.orig 2013-09-02 16:46:10.000000000 -0400
|
||
|
+++ linux-3.11.9-200.fc19.x86_64/fs/nfs/nfs4client.c 2013-11-21 10:20:27.288286000 -0500
|
||
|
@@ -10,6 +10,7 @@
|
||
|
#include <linux/sunrpc/auth.h>
|
||
|
#include <linux/sunrpc/xprt.h>
|
||
|
#include <linux/sunrpc/bc_xprt.h>
|
||
|
+#include <linux/sunrpc/rpc_pipe_fs.h>
|
||
|
#include "internal.h"
|
||
|
#include "callback.h"
|
||
|
#include "delegation.h"
|
||
|
@@ -206,7 +207,11 @@ struct nfs_client *nfs4_init_client(stru
|
||
|
if (clp->cl_minorversion != 0)
|
||
|
__set_bit(NFS_CS_INFINITE_SLOTS, &clp->cl_flags);
|
||
|
__set_bit(NFS_CS_DISCRTRY, &clp->cl_flags);
|
||
|
- error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_GSS_KRB5I);
|
||
|
+
|
||
|
+ error = -EINVAL;
|
||
|
+ if (gssd_running(clp->cl_net))
|
||
|
+ error = nfs_create_rpc_client(clp, timeparms,
|
||
|
+ RPC_AUTH_GSS_KRB5I);
|
||
|
if (error == -EINVAL)
|
||
|
error = nfs_create_rpc_client(clp, timeparms, RPC_AUTH_UNIX);
|
||
|
if (error < 0)
|
||
|
|
||
|
_______________________________________________
|
||
|
kernel mailing list
|
||
|
kernel@lists.fedoraproject.org
|
||
|
https://admin.fedoraproject.org/mailman/listinfo/kernel
|