|
@@ -54,7 +54,12 @@ struct svc_serv;
|
|
|
struct svc_serv_ops {
|
|
|
/* Callback to use when last thread exits. */
|
|
|
void (*svo_shutdown)(struct svc_serv *, struct net *);
|
|
|
+
|
|
|
+ /* function for service threads to run */
|
|
|
int (*svo_function)(void *);
|
|
|
+
|
|
|
+ /* optional module to count when adding threads (pooled svcs only) */
|
|
|
+ struct module *svo_module;
|
|
|
};
|
|
|
|
|
|
/*
|
|
@@ -89,8 +94,6 @@ struct svc_serv {
|
|
|
unsigned int sv_nrpools; /* number of thread pools */
|
|
|
struct svc_pool * sv_pools; /* array of thread pools */
|
|
|
struct svc_serv_ops *sv_ops; /* server operations */
|
|
|
- struct module * sv_module; /* optional module to count when
|
|
|
- * adding threads */
|
|
|
#if defined(CONFIG_SUNRPC_BACKCHANNEL)
|
|
|
struct list_head sv_cb_list; /* queue for callback requests
|
|
|
* that arrive over the same
|
|
@@ -430,7 +433,7 @@ struct svc_rqst *svc_prepare_thread(struct svc_serv *serv,
|
|
|
struct svc_pool *pool, int node);
|
|
|
void svc_exit_thread(struct svc_rqst *);
|
|
|
struct svc_serv * svc_create_pooled(struct svc_program *, unsigned int,
|
|
|
- struct svc_serv_ops *, struct module *);
|
|
|
+ struct svc_serv_ops *);
|
|
|
int svc_set_num_threads(struct svc_serv *, struct svc_pool *, int);
|
|
|
int svc_pool_stats_open(struct svc_serv *serv, struct file *file);
|
|
|
void svc_destroy(struct svc_serv *);
|