diff options
author | Trond Myklebust <trond.myklebust@primarydata.com> | 2014-03-20 12:59:09 -0400 |
---|---|---|
committer | Trond Myklebust <trond.myklebust@primarydata.com> | 2014-03-20 13:38:44 -0400 |
commit | 494314c415e2d3b308f57c9245ae6525166c70b8 (patch) | |
tree | 4ffa4f99c92936a7edd95ac3c3bc3807d8e1112c | |
parent | 6bd144160a5554e4af052c153a094c4851a4c6aa (diff) | |
download | talos-op-linux-494314c415e2d3b308f57c9245ae6525166c70b8.tar.gz talos-op-linux-494314c415e2d3b308f57c9245ae6525166c70b8.zip |
SUNRPC: rpc_restart_call/rpc_restart_call_prepare should clear task->tk_status
When restarting an rpc call, we should not be carrying over data from the
previous call.
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
-rw-r--r-- | net/sunrpc/clnt.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index 62f86793b708..f400445d1a44 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c @@ -1363,6 +1363,7 @@ rpc_restart_call_prepare(struct rpc_task *task) if (RPC_ASSASSINATED(task)) return 0; task->tk_action = call_start; + task->tk_status = 0; if (task->tk_ops->rpc_call_prepare != NULL) task->tk_action = rpc_prepare_task; return 1; @@ -1379,6 +1380,7 @@ rpc_restart_call(struct rpc_task *task) if (RPC_ASSASSINATED(task)) return 0; task->tk_action = call_start; + task->tk_status = 0; return 1; } EXPORT_SYMBOL_GPL(rpc_restart_call); |