]> asedeno.scripts.mit.edu Git - linux.git/commit
NFSv4.1: Don't rebind to the same source port when reconnecting to the server
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Thu, 17 Oct 2019 15:13:54 +0000 (11:13 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Mon, 4 Nov 2019 02:28:45 +0000 (21:28 -0500)
commite6237b6feb37582fbd6bd7a8336d1256a6b4b4f9
treee58abfc21a4940c9191f9772605d7cf9c4c991e9
parent52f98f1a2ddd2bb561f2c7e3b19a81d816a63118
NFSv4.1: Don't rebind to the same source port when reconnecting to the server

NFSv2, v3 and NFSv4 servers often have duplicate replay caches that look
at the source port when deciding whether or not an RPC call is a replay
of a previous call. This requires clients to perform strange TCP gymnastics
in order to ensure that when they reconnect to the server, they bind
to the same source port.

NFSv4.1 and NFSv4.2 have sessions that provide proper replay semantics,
that do not look at the source port of the connection. This patch therefore
ensures they can ignore the rebind requirement.

Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/lockd/host.c
fs/nfs/client.c
fs/nfs/nfs4client.c
include/linux/nfs_fs_sb.h
include/linux/sunrpc/clnt.h
include/linux/sunrpc/xprt.h
net/sunrpc/clnt.c
net/sunrpc/xprtsock.c