sunrpc: release svc_pool_map reference when serv allocation fails

Currently, it leaks when the allocation fails.

Signed-off-by: Jeff Layton <jlayton@primarydata.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
Jeff Layton 2014-11-19 07:51:13 -05:00 committed by J. Bruce Fields
parent 8d65ef760d
commit 067f96ef17
1 changed files with 7 additions and 5 deletions

View File

@ -503,13 +503,15 @@ svc_create_pooled(struct svc_program *prog, unsigned int bufsize,
unsigned int npools = svc_pool_map_get();
serv = __svc_create(prog, bufsize, npools, shutdown);
if (!serv)
goto out_err;
if (serv != NULL) {
serv->sv_function = func;
serv->sv_module = mod;
}
serv->sv_function = func;
serv->sv_module = mod;
return serv;
out_err:
svc_pool_map_put();
return NULL;
}
EXPORT_SYMBOL_GPL(svc_create_pooled);