diff options
| author | Andy Adamson <andros@netapp.com> | 2009-04-01 09:22:19 -0400 |
|---|---|---|
| committer | Benny Halevy <bhalevy@panasas.com> | 2009-06-17 13:46:42 -0400 |
| commit | 69ab40c4c3b9622232e31e0ee145875a2853c113 (patch) | |
| tree | 72b5f87b10bd9d5069391cb39c4110f28416d038 | |
| parent | b0df806c0f9d61e5fcfdb0f4e606e1a59303aaa6 (diff) | |
nfs41: nfs41_call_sync_done
Implement nfs4.1 synchronous rpc_call_done method
that essentially just calls nfs4_sequence_done, that turns
around and calls nfs41_sequence_done for minorversion1 rpcs.
Signed-off-by: Benny Halevy <bhalevy@panasas.com>
[nfs41: check for session not minorversion]
Signed-off-by: Andy Adamson <andros@netapp.com>
Signed-off-by: Benny Halevy <bhalevy@panasas.com>
[move adding nfs4_sequence_free_slot from nfs41-separate-free-slot-from-sequence-done]
Signed-off-by: Andy Adamson <andros@netapp.com>
Signed-off-by: Benny Halevy <bhalevy@panasas.com>
[nfs41: nfs41_call_sync_data use nfs_client not nfs_server]
Signed-off-by: Andy Adamson <andros@netapp.com>
Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
| -rw-r--r-- | fs/nfs/nfs4proc.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index 188f2ce593ec..a8e0b3573594 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
| @@ -492,8 +492,17 @@ static void nfs41_call_sync_prepare(struct rpc_task *task, void *calldata) | |||
| 492 | rpc_call_start(task); | 492 | rpc_call_start(task); |
| 493 | } | 493 | } |
| 494 | 494 | ||
| 495 | static void nfs41_call_sync_done(struct rpc_task *task, void *calldata) | ||
| 496 | { | ||
| 497 | struct nfs41_call_sync_data *data = calldata; | ||
| 498 | |||
| 499 | nfs41_sequence_done(data->clp, data->seq_res, task->tk_status); | ||
| 500 | nfs41_sequence_free_slot(data->clp, data->seq_res); | ||
| 501 | } | ||
| 502 | |||
| 495 | struct rpc_call_ops nfs41_call_sync_ops = { | 503 | struct rpc_call_ops nfs41_call_sync_ops = { |
| 496 | .rpc_call_prepare = nfs41_call_sync_prepare, | 504 | .rpc_call_prepare = nfs41_call_sync_prepare, |
| 505 | .rpc_call_done = nfs41_call_sync_done, | ||
| 497 | }; | 506 | }; |
| 498 | 507 | ||
| 499 | static int nfs4_call_sync_sequence(struct nfs_client *clp, | 508 | static int nfs4_call_sync_sequence(struct nfs_client *clp, |
