SUNRPC: RPC level errors should set task->tk_rpc_status
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Wed, 3 Aug 2022 18:55:03 +0000 (14:55 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Sat, 20 Aug 2022 00:32:05 +0000 (20:32 -0400)
Fix up a case in call_encode() where we're failing to set
task->tk_rpc_status when an RPC level error occurred.

Fixes: 9c5948c24869 ("SUNRPC: task should be exit if encode return EKEYEXPIRED more times")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
net/sunrpc/clnt.c

index b098e70..7d268a2 100644 (file)
@@ -1902,7 +1902,7 @@ call_encode(struct rpc_task *task)
                        break;
                case -EKEYEXPIRED:
                        if (!task->tk_cred_retry) {
-                               rpc_exit(task, task->tk_status);
+                               rpc_call_rpcerror(task, task->tk_status);
                        } else {
                                task->tk_action = call_refresh;
                                task->tk_cred_retry--;