NFSv4: nfs4_locku_done must release the sequence id
If the state recovery machinery is triggered by the call to nfs4_async_handle_error() then we can deadlock. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Cc: stable@vger.kernel.org
This commit is contained in:
@@ -4531,6 +4531,7 @@ static void nfs4_locku_done(struct rpc_task *task, void *data)
|
|||||||
if (nfs4_async_handle_error(task, calldata->server, NULL) == -EAGAIN)
|
if (nfs4_async_handle_error(task, calldata->server, NULL) == -EAGAIN)
|
||||||
rpc_restart_call_prepare(task);
|
rpc_restart_call_prepare(task);
|
||||||
}
|
}
|
||||||
|
nfs_release_seqid(calldata->arg.seqid);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void nfs4_locku_prepare(struct rpc_task *task, void *data)
|
static void nfs4_locku_prepare(struct rpc_task *task, void *data)
|
||||||
|
Reference in New Issue
Block a user