NFS: send state management on a single connection.
authorNeilBrown <neilb@suse.com>
Thu, 30 May 2019 00:41:28 +0000 (10:41 +1000)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Sat, 6 Jul 2019 18:54:50 +0000 (14:54 -0400)
commit5a0c257f8e0f4c4b3c33dff545317c21a921303e
treea1b50f2ffd25d25819faaea8045e814edec64324
parent53c326307156249253be36b33cd6c32f4a24f9b2
NFS: send state management on a single connection.

With NFSv4.1, different network connections need to be explicitly
bound to a session.  During session startup, this is not possible
so only a single connection must be used for session startup.

So add a task flag to disable the default round-robin choice of
connections (when nconnect > 1) and force the use of a single
connection.
Then use that flag on all requests for session management - for
consistence, include NFSv4.0 management (SETCLIENTID) and session
destruction

Reported-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/nfs4proc.c
include/linux/sunrpc/sched.h
net/sunrpc/clnt.c