diff options
| -rw-r--r-- | fs/nfs/nfs4proc.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index 66fd901d5fae..75ae8d22f067 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
| @@ -5942,8 +5942,10 @@ struct nfs_release_lockowner_data { | |||
| 5942 | static void nfs4_release_lockowner_prepare(struct rpc_task *task, void *calldata) | 5942 | static void nfs4_release_lockowner_prepare(struct rpc_task *task, void *calldata) |
| 5943 | { | 5943 | { |
| 5944 | struct nfs_release_lockowner_data *data = calldata; | 5944 | struct nfs_release_lockowner_data *data = calldata; |
| 5945 | nfs40_setup_sequence(data->server, | 5945 | struct nfs_server *server = data->server; |
| 5946 | &data->args.seq_args, &data->res.seq_res, task); | 5946 | nfs40_setup_sequence(server, &data->args.seq_args, |
| 5947 | &data->res.seq_res, task); | ||
| 5948 | data->args.lock_owner.clientid = server->nfs_client->cl_clientid; | ||
| 5947 | data->timestamp = jiffies; | 5949 | data->timestamp = jiffies; |
| 5948 | } | 5950 | } |
| 5949 | 5951 | ||
| @@ -5960,6 +5962,8 @@ static void nfs4_release_lockowner_done(struct rpc_task *task, void *calldata) | |||
| 5960 | break; | 5962 | break; |
| 5961 | case -NFS4ERR_STALE_CLIENTID: | 5963 | case -NFS4ERR_STALE_CLIENTID: |
| 5962 | case -NFS4ERR_EXPIRED: | 5964 | case -NFS4ERR_EXPIRED: |
| 5965 | nfs4_schedule_lease_recovery(server->nfs_client); | ||
| 5966 | break; | ||
| 5963 | case -NFS4ERR_LEASE_MOVED: | 5967 | case -NFS4ERR_LEASE_MOVED: |
| 5964 | case -NFS4ERR_DELAY: | 5968 | case -NFS4ERR_DELAY: |
| 5965 | if (nfs4_async_handle_error(task, server, NULL) == -EAGAIN) | 5969 | if (nfs4_async_handle_error(task, server, NULL) == -EAGAIN) |
