提交 82571552 编写于 作者: T Trond Myklebust

NFSv4: Convert LOCKU to use nfs4_async_handle_exception()

Convert CLOSE so that it specifies the correct stateid and
inode for the error handling.
Signed-off-by: NTrond Myklebust <trond.myklebust@primarydata.com>
上级 e0dba012
...@@ -6071,6 +6071,10 @@ static void nfs4_locku_release_calldata(void *data) ...@@ -6071,6 +6071,10 @@ static void nfs4_locku_release_calldata(void *data)
static void nfs4_locku_done(struct rpc_task *task, void *data) static void nfs4_locku_done(struct rpc_task *task, void *data)
{ {
struct nfs4_unlockdata *calldata = data; struct nfs4_unlockdata *calldata = data;
struct nfs4_exception exception = {
.inode = calldata->lsp->ls_state->inode,
.stateid = &calldata->arg.stateid,
};
if (!nfs4_sequence_done(task, &calldata->res.seq_res)) if (!nfs4_sequence_done(task, &calldata->res.seq_res))
return; return;
...@@ -6094,8 +6098,10 @@ static void nfs4_locku_done(struct rpc_task *task, void *data) ...@@ -6094,8 +6098,10 @@ static void nfs4_locku_done(struct rpc_task *task, void *data)
rpc_restart_call_prepare(task); rpc_restart_call_prepare(task);
break; break;
default: default:
if (nfs4_async_handle_error(task, calldata->server, task->tk_status = nfs4_async_handle_exception(task,
NULL, NULL) == -EAGAIN) calldata->server, task->tk_status,
&exception);
if (exception.retry)
rpc_restart_call_prepare(task); rpc_restart_call_prepare(task);
} }
nfs_release_seqid(calldata->arg.seqid); nfs_release_seqid(calldata->arg.seqid);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册