Commit c7d7ec8f authored by Chuck Lever's avatar Chuck Lever

SUNRPC: Remove svc_shutdown_net()

Clean up: svc_shutdown_net() now does nothing but call
svc_close_net(). Replace all external call sites.

svc_close_net() is renamed to be the inverse of svc_xprt_create().
Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
parent 4355d767
...@@ -248,7 +248,7 @@ static int make_socks(struct svc_serv *serv, struct net *net, ...@@ -248,7 +248,7 @@ static int make_socks(struct svc_serv *serv, struct net *net,
if (warned++ == 0) if (warned++ == 0)
printk(KERN_WARNING printk(KERN_WARNING
"lockd_up: makesock failed, error=%d\n", err); "lockd_up: makesock failed, error=%d\n", err);
svc_shutdown_net(serv, net); svc_xprt_destroy_all(serv, net);
svc_rpcb_cleanup(serv, net); svc_rpcb_cleanup(serv, net);
return err; return err;
} }
...@@ -287,7 +287,7 @@ static void lockd_down_net(struct svc_serv *serv, struct net *net) ...@@ -287,7 +287,7 @@ static void lockd_down_net(struct svc_serv *serv, struct net *net)
nlm_shutdown_hosts_net(net); nlm_shutdown_hosts_net(net);
cancel_delayed_work_sync(&ln->grace_period_end); cancel_delayed_work_sync(&ln->grace_period_end);
locks_end_grace(&ln->lockd_manager); locks_end_grace(&ln->lockd_manager);
svc_shutdown_net(serv, net); svc_xprt_destroy_all(serv, net);
svc_rpcb_cleanup(serv, net); svc_rpcb_cleanup(serv, net);
} }
} else { } else {
......
...@@ -189,7 +189,7 @@ static void nfs_callback_down_net(u32 minorversion, struct svc_serv *serv, struc ...@@ -189,7 +189,7 @@ static void nfs_callback_down_net(u32 minorversion, struct svc_serv *serv, struc
return; return;
dprintk("NFS: destroy per-net callback data; net=%x\n", net->ns.inum); dprintk("NFS: destroy per-net callback data; net=%x\n", net->ns.inum);
svc_shutdown_net(serv, net); svc_xprt_destroy_all(serv, net);
} }
static int nfs_callback_up_net(int minorversion, struct svc_serv *serv, static int nfs_callback_up_net(int minorversion, struct svc_serv *serv,
......
...@@ -722,7 +722,7 @@ void nfsd_put(struct net *net) ...@@ -722,7 +722,7 @@ void nfsd_put(struct net *net)
struct nfsd_net *nn = net_generic(net, nfsd_net_id); struct nfsd_net *nn = net_generic(net, nfsd_net_id);
if (kref_put(&nn->nfsd_serv->sv_refcnt, nfsd_noop)) { if (kref_put(&nn->nfsd_serv->sv_refcnt, nfsd_noop)) {
svc_shutdown_net(nn->nfsd_serv, net); svc_xprt_destroy_all(nn->nfsd_serv, net);
nfsd_last_thread(nn->nfsd_serv, net); nfsd_last_thread(nn->nfsd_serv, net);
svc_destroy(&nn->nfsd_serv->sv_refcnt); svc_destroy(&nn->nfsd_serv->sv_refcnt);
spin_lock(&nfsd_notifier_lock); spin_lock(&nfsd_notifier_lock);
......
...@@ -508,7 +508,6 @@ struct svc_serv * svc_create_pooled(struct svc_program *, unsigned int, ...@@ -508,7 +508,6 @@ struct svc_serv * svc_create_pooled(struct svc_program *, unsigned int,
const struct svc_serv_ops *); const struct svc_serv_ops *);
int svc_set_num_threads(struct svc_serv *, struct svc_pool *, int); int svc_set_num_threads(struct svc_serv *, struct svc_pool *, int);
int svc_pool_stats_open(struct svc_serv *serv, struct file *file); int svc_pool_stats_open(struct svc_serv *serv, struct file *file);
void svc_shutdown_net(struct svc_serv *, struct net *);
int svc_process(struct svc_rqst *); int svc_process(struct svc_rqst *);
int bc_svc_process(struct svc_serv *, struct rpc_rqst *, int bc_svc_process(struct svc_serv *, struct rpc_rqst *,
struct svc_rqst *); struct svc_rqst *);
......
...@@ -131,6 +131,7 @@ int svc_xprt_create(struct svc_serv *serv, const char *xprt_name, ...@@ -131,6 +131,7 @@ int svc_xprt_create(struct svc_serv *serv, const char *xprt_name,
struct net *net, const int family, struct net *net, const int family,
const unsigned short port, int flags, const unsigned short port, int flags,
const struct cred *cred); const struct cred *cred);
void svc_xprt_destroy_all(struct svc_serv *serv, struct net *net);
void svc_xprt_received(struct svc_xprt *xprt); void svc_xprt_received(struct svc_xprt *xprt);
void svc_xprt_enqueue(struct svc_xprt *xprt); void svc_xprt_enqueue(struct svc_xprt *xprt);
void svc_xprt_put(struct svc_xprt *xprt); void svc_xprt_put(struct svc_xprt *xprt);
......
...@@ -536,12 +536,6 @@ svc_create_pooled(struct svc_program *prog, unsigned int bufsize, ...@@ -536,12 +536,6 @@ svc_create_pooled(struct svc_program *prog, unsigned int bufsize,
} }
EXPORT_SYMBOL_GPL(svc_create_pooled); EXPORT_SYMBOL_GPL(svc_create_pooled);
void svc_shutdown_net(struct svc_serv *serv, struct net *net)
{
svc_close_net(serv, net);
}
EXPORT_SYMBOL_GPL(svc_shutdown_net);
/* /*
* Destroy an RPC service. Should be called with appropriate locking to * Destroy an RPC service. Should be called with appropriate locking to
* protect sv_permsocks and sv_tempsocks. * protect sv_permsocks and sv_tempsocks.
......
...@@ -1140,7 +1140,11 @@ static void svc_clean_up_xprts(struct svc_serv *serv, struct net *net) ...@@ -1140,7 +1140,11 @@ static void svc_clean_up_xprts(struct svc_serv *serv, struct net *net)
} }
} }
/* /**
* svc_xprt_destroy_all - Destroy transports associated with @serv
* @serv: RPC service to be shut down
* @net: target network namespace
*
* Server threads may still be running (especially in the case where the * Server threads may still be running (especially in the case where the
* service is still running in other network namespaces). * service is still running in other network namespaces).
* *
...@@ -1152,7 +1156,7 @@ static void svc_clean_up_xprts(struct svc_serv *serv, struct net *net) ...@@ -1152,7 +1156,7 @@ static void svc_clean_up_xprts(struct svc_serv *serv, struct net *net)
* threads, we may need to wait a little while and then check again to * threads, we may need to wait a little while and then check again to
* see if they're done. * see if they're done.
*/ */
void svc_close_net(struct svc_serv *serv, struct net *net) void svc_xprt_destroy_all(struct svc_serv *serv, struct net *net)
{ {
int delay = 0; int delay = 0;
...@@ -1163,6 +1167,7 @@ void svc_close_net(struct svc_serv *serv, struct net *net) ...@@ -1163,6 +1167,7 @@ void svc_close_net(struct svc_serv *serv, struct net *net)
msleep(delay++); msleep(delay++);
} }
} }
EXPORT_SYMBOL_GPL(svc_xprt_destroy_all);
/* /*
* Handle defer and revisit of requests * Handle defer and revisit of requests
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment