summaryrefslogtreecommitdiff
path: root/net/sunrpc/sched.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2006-01-03 09:55:05 +0100
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-01-06 14:58:40 -0500
commit4ce70ada1ff1d0b80916ec9ec5764ce44a50a54f (patch)
tree9bc9ffc691679a4423a6b8724a27607c9ad7ea2c /net/sunrpc/sched.c
parent963d8fe53339128ee46a7701f2e36305f0ccff8c (diff)
downloadlwn-4ce70ada1ff1d0b80916ec9ec5764ce44a50a54f.tar.gz
lwn-4ce70ada1ff1d0b80916ec9ec5764ce44a50a54f.zip
SUNRPC: Further cleanups
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc/sched.c')
-rw-r--r--net/sunrpc/sched.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/net/sunrpc/sched.c b/net/sunrpc/sched.c
index 8d6233d3248b..2d74a1672028 100644
--- a/net/sunrpc/sched.c
+++ b/net/sunrpc/sched.c
@@ -555,6 +555,14 @@ __rpc_atrun(struct rpc_task *task)
}
/*
+ * Helper to call task->tk_ops->rpc_call_prepare
+ */
+static void rpc_prepare_task(struct rpc_task *task)
+{
+ task->tk_ops->rpc_call_prepare(task, task->tk_calldata);
+}
+
+/*
* Helper that calls task->tk_ops->rpc_call_done if it exists
*/
void rpc_exit_task(struct rpc_task *task)
@@ -756,6 +764,8 @@ void rpc_init_task(struct rpc_task *task, struct rpc_clnt *clnt, int flags, cons
task->tk_client = clnt;
task->tk_flags = flags;
task->tk_ops = tk_ops;
+ if (tk_ops->rpc_call_prepare != NULL)
+ task->tk_action = rpc_prepare_task;
task->tk_calldata = calldata;
/* Initialize retry counters */