aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sunrpc
diff options
context:
space:
mode:
authorStanislav Kinsbursky <skinsbursky@parallels.com>2012-01-31 06:08:05 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2012-02-15 00:19:47 -0500
commitbb2224df5ffe4f864f5b696199b17db1ce77bc0a (patch)
tree1aa476668966b94ea5f5e399ea15f3aede936f47 /include/linux/sunrpc
parenta9c5d73a8d8cb37601f8c39b35b9b4128e1a5254 (diff)
Lockd: per-net up and down routines introduced
This patch introduces per-net Lockd initialization and destruction routines. The logic is the same as in global Lockd up and down routines. Probably the solution is not the best one. But at least it looks clear. So per-net "up" routine are called only in case of lockd is running already. If per-net resources are not allocated yet, then service is being registered with local portmapper and lockd sockets created. Per-net "down" routine is called on every lockd_down() call in case of global users counter is not zero. Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include/linux/sunrpc')
-rw-r--r--include/linux/sunrpc/svc.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/sunrpc/svc.h b/include/linux/sunrpc/svc.h
index 7b65495aa4ef..51b29ac45a8e 100644
--- a/include/linux/sunrpc/svc.h
+++ b/include/linux/sunrpc/svc.h
@@ -414,6 +414,7 @@ struct svc_procedure {
414/* 414/*
415 * Function prototypes. 415 * Function prototypes.
416 */ 416 */
417int svc_rpcb_setup(struct svc_serv *serv, struct net *net);
417void svc_rpcb_cleanup(struct svc_serv *serv, struct net *net); 418void svc_rpcb_cleanup(struct svc_serv *serv, struct net *net);
418struct svc_serv *svc_create(struct svc_program *, unsigned int, 419struct svc_serv *svc_create(struct svc_program *, unsigned int,
419 void (*shutdown)(struct svc_serv *, struct net *net)); 420 void (*shutdown)(struct svc_serv *, struct net *net));
@@ -426,6 +427,7 @@ struct svc_serv * svc_create_pooled(struct svc_program *, unsigned int,
426int svc_set_num_threads(struct svc_serv *, struct svc_pool *, int); 427int svc_set_num_threads(struct svc_serv *, struct svc_pool *, int);
427int svc_pool_stats_open(struct svc_serv *serv, struct file *file); 428int svc_pool_stats_open(struct svc_serv *serv, struct file *file);
428void svc_destroy(struct svc_serv *); 429void svc_destroy(struct svc_serv *);
430void svc_shutdown_net(struct svc_serv *, struct net *);
429int svc_process(struct svc_rqst *); 431int svc_process(struct svc_rqst *);
430int bc_svc_process(struct svc_serv *, struct rpc_rqst *, 432int bc_svc_process(struct svc_serv *, struct rpc_rqst *,
431 struct svc_rqst *); 433 struct svc_rqst *);