]> git.baikalelectronics.ru Git - kernel.git/commit
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)
commit0b0e5e9a1351774be04369fdca54c8a605d3651b
treea1b50f2ffd25d25819faaea8045e814edec64324
parentc75a57c3a43b602e249fdc8cd0465b0caf18d4c5
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