summaryrefslogtreecommitdiffstats
path: root/lib/div64.c
diff options
context:
space:
mode:
authorJeff Layton <jlayton@redhat.com>2010-07-19 16:50:06 -0400
committerJ. Bruce Fields <bfields@redhat.com>2010-07-23 08:51:24 -0400
commit0cd14a061e32d4ddaadad24d86d06cc860010591 (patch)
treedb6a42968f9069b17ad64200f7e7cd7c90c303bb /lib/div64.c
parent78a8d7c8ca3f0cb5cd2a276c6fc17c8c006d0b3c (diff)
nfsd: fix error handling in __write_ports_addxprt
__write_ports_addxprt calls nfsd_create_serv. That increases the refcount of nfsd_serv (which is tracked in sv_nrthreads). The service only decrements the thread count on error, not on success like __write_ports_addfd does, so using this interface leaves the nfsd thread count high. Fix this by having this function call svc_destroy() on error to release the reference (and possibly to tear down the service) and simply decrement the refcount without tearing down the service on success. This makes the sv_threads handling work basically the same in both __write_ports_addxprt and __write_ports_addfd. Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'lib/div64.c')
0 files changed, 0 insertions, 0 deletions