sunrpc: Add xprt after nfs4_test_session_trunk()
authorSantosh kumar pradhan <santoshkumar.pradhan@wdc.com>
Wed, 19 Dec 2018 06:59:57 +0000 (12:29 +0530)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Wed, 2 Jan 2019 17:05:19 +0000 (12:05 -0500)
commit10e037d1e0d5d93cc057e4fad6911e481a462407
tree5826e59131a9a00b58ab16a65316c47a808e7907
parentcb24e35b4fa8448e7ee963884958235b8de44f25
sunrpc: Add xprt after nfs4_test_session_trunk()

Multipathing: In case of NFSv3, rpc_clnt_test_and_add_xprt() adds
the xprt to xprt switch (i.e. xps) if rpc_call_null_helper() returns
success. But in case of NFSv4.1, it needs to do EXCHANGEID to verify
the path along with check for session trunking.

Add the xprt in nfs4_test_session_trunk() only when
nfs4_detect_session_trunking() returns success. Also release refcount
hold by rpc_clnt_setup_test_and_add_xprt().

Signed-off-by: Santosh kumar pradhan <santoshkumar.pradhan@wdc.com>
Tested-by: Suresh Jayaraman <suresh.jayaraman@wdc.com>
Reported-by: Aditya Agnihotri <aditya.agnihotri@wdc.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
fs/nfs/internal.h
fs/nfs/nfs4_fs.h
fs/nfs/nfs4proc.c
include/linux/sunrpc/clnt.h
net/sunrpc/clnt.c