NFSv4.1: don't retry BIND_CONN_TO_SESSION on session error
authorOlga Kornievskaia <kolga@netapp.com>
Thu, 24 Mar 2022 14:38:42 +0000 (10:38 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Apr 2022 12:23:51 +0000 (14:23 +0200)
[ Upstream commit 1d15d121cc2ad4d016a7dc1493132a9696f91fc5 ]

There is no reason to retry the operation if a session error had
occurred in such case result structure isn't filled out.

Fixes: dff58530c4ca ("NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION")
Signed-off-by: Olga Kornievskaia <kolga@netapp.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/nfs/nfs4proc.c

index 53be03681f69ef33bb43b517393627a184e6e833..dababa6cf3f42a156c2c3c196da8219d8845e647 100644 (file)
@@ -8341,6 +8341,7 @@ nfs4_bind_one_conn_to_session_done(struct rpc_task *task, void *calldata)
        case -NFS4ERR_DEADSESSION:
                nfs4_schedule_session_recovery(clp->cl_session,
                                task->tk_status);
+               return;
        }
        if (args->dir == NFS4_CDFC4_FORE_OR_BOTH &&
                        res->dir != NFS4_CDFS4_BOTH) {