err = svc_addsock(serv, net, fd, buf, SIMPLE_TRANSACTION_LIMIT, cred);
 
        if (!serv->sv_nrthreads && list_empty(&nn->nfsd_serv->sv_permsocks))
-               nfsd_last_thread(net);
+               nfsd_destroy_serv(net);
+
        return err;
 }
 
        }
 out_err:
        if (!serv->sv_nrthreads && list_empty(&nn->nfsd_serv->sv_permsocks))
-               nfsd_last_thread(net);
+               nfsd_destroy_serv(net);
 
        return err;
 }
 
 int nfsd_minorversion(struct nfsd_net *nn, u32 minorversion, enum vers_op change);
 void nfsd_reset_versions(struct nfsd_net *nn);
 int nfsd_create_serv(struct net *net);
-void nfsd_last_thread(struct net *net);
+void nfsd_destroy_serv(struct net *net);
 
 extern int nfsd_max_blksize;
 
 
 /* Only used under nfsd_mutex, so this atomic may be overkill: */
 static atomic_t nfsd_notifier_refcount = ATOMIC_INIT(0);
 
-void nfsd_last_thread(struct net *net)
+/**
+ * nfsd_destroy_serv - tear down NFSD's svc_serv for a namespace
+ * @net: network namespace the NFS service is associated with
+ */
+void nfsd_destroy_serv(struct net *net)
 {
        struct nfsd_net *nn = net_generic(net, nfsd_net_id);
        struct svc_serv *serv = nn->nfsd_serv;
        /*
         * write_ports can create the server without actually starting
         * any threads--if we get shut down before any threads are
-        * started, then nfsd_last_thread will be run before any of this
+        * started, then nfsd_destroy_serv will be run before any of this
         * other initialization has been done except the rpcb information.
         */
        svc_rpcb_cleanup(serv, net);
 
        /* Kill outstanding nfsd threads */
        svc_set_num_threads(serv, NULL, 0);
-       nfsd_last_thread(net);
+       nfsd_destroy_serv(net);
        mutex_unlock(&nfsd_mutex);
 }
 
        error = serv->sv_nrthreads;
 out_put:
        if (serv->sv_nrthreads == 0)
-               nfsd_last_thread(net);
+               nfsd_destroy_serv(net);
 out:
        mutex_unlock(&nfsd_mutex);
        return error;