sunrpc: require svc_create callers to pass in meaningful shutdown routine
Currently all svc_create callers pass in NULL for the shutdown parm, which then gets fixed up to be svc_rpcb_cleanup if the service uses rpcbind. Simplify this by instead having the the only caller that requires it (lockd) pass in svc_rpcb_cleanup and get rid of the special casing. Signed-off-by: Jeff Layton <jlayton@primarydata.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
ceff739c53
commit
0b5707e452
|
@ -350,7 +350,7 @@ static struct svc_serv *lockd_create_svc(void)
|
||||||
printk(KERN_WARNING
|
printk(KERN_WARNING
|
||||||
"lockd_up: no pid, %d users??\n", nlmsvc_users);
|
"lockd_up: no pid, %d users??\n", nlmsvc_users);
|
||||||
|
|
||||||
serv = svc_create(&nlmsvc_program, LOCKD_BUFSIZE, NULL);
|
serv = svc_create(&nlmsvc_program, LOCKD_BUFSIZE, svc_rpcb_cleanup);
|
||||||
if (!serv) {
|
if (!serv) {
|
||||||
printk(KERN_WARNING "lockd_up: create service failed\n");
|
printk(KERN_WARNING "lockd_up: create service failed\n");
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
|
|
|
@ -482,9 +482,6 @@ __svc_create(struct svc_program *prog, unsigned int bufsize, int npools,
|
||||||
spin_lock_init(&pool->sp_lock);
|
spin_lock_init(&pool->sp_lock);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (svc_uses_rpcbind(serv) && (!serv->sv_shutdown))
|
|
||||||
serv->sv_shutdown = svc_rpcb_cleanup;
|
|
||||||
|
|
||||||
return serv;
|
return serv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue