Commit 671e1fcf authored by NeilBrown's avatar NeilBrown Committed by J. Bruce Fields

nfsd: optimise the starting of zero threads when none are running.

Currently, if we ask to set then number of nfsd threads to zero when
there are none running, we set up all the sockets and register the
service, and then tear it all down again.
This is pointless.

So detect that case and exit promptly.
(also remove an assignment to 'error' which was never used.
Signed-off-by: default avatarNeilBrown <neilb@suse.de>
Acked-by: default avatarJeff Layton <jlayton@redhat.com>
parent 82e12fe9
...@@ -390,12 +390,14 @@ nfsd_svc(unsigned short port, int nrservs) ...@@ -390,12 +390,14 @@ nfsd_svc(unsigned short port, int nrservs)
mutex_lock(&nfsd_mutex); mutex_lock(&nfsd_mutex);
dprintk("nfsd: creating service\n"); dprintk("nfsd: creating service\n");
error = -EINVAL;
if (nrservs <= 0) if (nrservs <= 0)
nrservs = 0; nrservs = 0;
if (nrservs > NFSD_MAXSERVS) if (nrservs > NFSD_MAXSERVS)
nrservs = NFSD_MAXSERVS; nrservs = NFSD_MAXSERVS;
error = 0;
if (nrservs == 0 && nfsd_serv == NULL)
goto out;
/* Readahead param cache - will no-op if it already exists */ /* Readahead param cache - will no-op if it already exists */
error = nfsd_racache_init(2*nrservs); error = nfsd_racache_init(2*nrservs);
if (error<0) if (error<0)
......
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