Lines Matching refs:serv
34 struct svc_serv *serv; member
41 static int nfs4_callback_up_net(struct svc_serv *serv, struct net *net) in nfs4_callback_up_net() argument
47 ret = svc_xprt_create(serv, "tcp", net, PF_INET, in nfs4_callback_up_net()
56 ret = svc_xprt_create(serv, "tcp", net, PF_INET6, in nfs4_callback_up_net()
96 struct svc_serv *serv = rqstp->rq_server; in nfs41_callback_svc() local
104 prepare_to_wait(&serv->sv_cb_waitq, &wq, TASK_IDLE); in nfs41_callback_svc()
105 spin_lock_bh(&serv->sv_cb_lock); in nfs41_callback_svc()
106 if (!list_empty(&serv->sv_cb_list)) { in nfs41_callback_svc()
107 req = list_first_entry(&serv->sv_cb_list, in nfs41_callback_svc()
110 spin_unlock_bh(&serv->sv_cb_lock); in nfs41_callback_svc()
111 finish_wait(&serv->sv_cb_waitq, &wq); in nfs41_callback_svc()
113 error = bc_svc_process(serv, req, rqstp); in nfs41_callback_svc()
117 spin_unlock_bh(&serv->sv_cb_lock); in nfs41_callback_svc()
120 finish_wait(&serv->sv_cb_waitq, &wq); in nfs41_callback_svc()
129 struct svc_serv *serv) in nfs_callback_bc_serv() argument
136 xprt->bc_serv = serv; in nfs_callback_bc_serv()
140 struct svc_serv *serv) in nfs_callback_bc_serv() argument
146 struct svc_serv *serv) in nfs_callback_start_svc() argument
151 nfs_callback_bc_serv(minorversion, xprt, serv); in nfs_callback_start_svc()
156 if (serv->sv_nrthreads == nrservs) in nfs_callback_start_svc()
159 ret = svc_set_num_threads(serv, NULL, nrservs); in nfs_callback_start_svc()
161 svc_set_num_threads(serv, NULL, 0); in nfs_callback_start_svc()
168 static void nfs_callback_down_net(u32 minorversion, struct svc_serv *serv, struct net *net) in nfs_callback_down_net() argument
176 svc_xprt_destroy_all(serv, net); in nfs_callback_down_net()
179 static int nfs_callback_up_net(int minorversion, struct svc_serv *serv, in nfs_callback_up_net() argument
190 ret = svc_bind(serv, net); in nfs_callback_up_net()
198 ret = nfs4_callback_up_net(serv, net); in nfs_callback_up_net()
200 set_bc_enabled(serv); in nfs_callback_up_net()
211 svc_rpcb_cleanup(serv, net); in nfs_callback_up_net()
223 struct svc_serv *serv; in nfs_callback_create_svc() local
228 if (cb_info->serv) in nfs_callback_create_svc()
229 return svc_get(cb_info->serv); in nfs_callback_create_svc()
247 serv = svc_create(&nfs4_callback_program, NFS4_CALLBACK_BUFSIZE, in nfs_callback_create_svc()
249 if (!serv) { in nfs_callback_create_svc()
253 cb_info->serv = serv; in nfs_callback_create_svc()
257 serv->sv_maxconn = 1024; in nfs_callback_create_svc()
259 return serv; in nfs_callback_create_svc()
267 struct svc_serv *serv; in nfs_callback_up() local
274 serv = nfs_callback_create_svc(minorversion); in nfs_callback_up()
275 if (IS_ERR(serv)) { in nfs_callback_up()
276 ret = PTR_ERR(serv); in nfs_callback_up()
280 ret = nfs_callback_up_net(minorversion, serv, net, xprt); in nfs_callback_up()
284 ret = nfs_callback_start_svc(minorversion, xprt, serv); in nfs_callback_up()
291 cb_info->serv = NULL; in nfs_callback_up()
292 svc_put(serv); in nfs_callback_up()
298 nfs_callback_down_net(minorversion, serv, net); in nfs_callback_up()
309 struct svc_serv *serv; in nfs_callback_down() local
312 serv = cb_info->serv; in nfs_callback_down()
313 nfs_callback_down_net(minorversion, serv, net); in nfs_callback_down()
316 svc_get(serv); in nfs_callback_down()
317 svc_set_num_threads(serv, NULL, 0); in nfs_callback_down()
318 svc_put(serv); in nfs_callback_down()
320 cb_info->serv = NULL; in nfs_callback_down()