diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-06-23 10:17:16 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-07-10 23:40:34 -0400 |
commit | 5e1550d6a2c2dd33ff0ca5febefd8e9c65c6ca1e (patch) | |
tree | 719d24d2da4fb1c68edd9207436edb1fa40ccb09 | |
parent | 64c91a1f1c8bc4295fd6b90df8adf911a7dd64f4 (diff) |
SUNRPC: Add the helper function 'rpc_call_null()'
Does a NULL RPC call and returns a pointer to the resulting rpc_task. The
call may be either synchronous or asynchronous.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
-rw-r--r-- | include/linux/sunrpc/clnt.h | 2 | ||||
-rw-r--r-- | net/sunrpc/clnt.c | 10 |
2 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/sunrpc/clnt.h b/include/linux/sunrpc/clnt.h index a0e51e193284..097984b03857 100644 --- a/include/linux/sunrpc/clnt.h +++ b/include/linux/sunrpc/clnt.h | |||
@@ -130,6 +130,8 @@ int rpc_call_async(struct rpc_clnt *clnt, struct rpc_message *msg, | |||
130 | void *calldata); | 130 | void *calldata); |
131 | int rpc_call_sync(struct rpc_clnt *clnt, struct rpc_message *msg, | 131 | int rpc_call_sync(struct rpc_clnt *clnt, struct rpc_message *msg, |
132 | int flags); | 132 | int flags); |
133 | struct rpc_task *rpc_call_null(struct rpc_clnt *clnt, struct rpc_cred *cred, | ||
134 | int flags); | ||
133 | void rpc_restart_call(struct rpc_task *); | 135 | void rpc_restart_call(struct rpc_task *); |
134 | void rpc_clnt_sigmask(struct rpc_clnt *clnt, sigset_t *oldset); | 136 | void rpc_clnt_sigmask(struct rpc_clnt *clnt, sigset_t *oldset); |
135 | void rpc_clnt_sigunmask(struct rpc_clnt *clnt, sigset_t *oldset); | 137 | void rpc_clnt_sigunmask(struct rpc_clnt *clnt, sigset_t *oldset); |
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index 4e91f3110938..5a28ffac99ea 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c | |||
@@ -1455,6 +1455,16 @@ static int rpc_ping(struct rpc_clnt *clnt, int flags) | |||
1455 | return err; | 1455 | return err; |
1456 | } | 1456 | } |
1457 | 1457 | ||
1458 | struct rpc_task *rpc_call_null(struct rpc_clnt *clnt, struct rpc_cred *cred, int flags) | ||
1459 | { | ||
1460 | struct rpc_message msg = { | ||
1461 | .rpc_proc = &rpcproc_null, | ||
1462 | .rpc_cred = cred, | ||
1463 | }; | ||
1464 | return rpc_do_run_task(clnt, &msg, flags, &rpc_default_ops, NULL); | ||
1465 | } | ||
1466 | EXPORT_SYMBOL(rpc_call_null); | ||
1467 | |||
1458 | #ifdef RPC_DEBUG | 1468 | #ifdef RPC_DEBUG |
1459 | void rpc_show_tasks(void) | 1469 | void rpc_show_tasks(void) |
1460 | { | 1470 | { |