~ubuntu-branches/ubuntu/quantal/linux-lowlatency/quantal

« back to all changes in this revision

Viewing changes to net/sunrpc/svc.c

  • Committer: Package Import Robot
  • Author(s): Alessio Igor Bogani
  • Date: 2011-10-26 11:13:05 UTC
  • Revision ID: package-import@ubuntu.com-20111026111305-04kado7d1u2er2rl
Tags: 3.2.0-16.25
Add new lowlatency kernel flavour

Show diffs side-by-side

added added

removed removed

Lines of Context:
167
167
 
168
168
fail_free:
169
169
        kfree(m->to_pool);
 
170
        m->to_pool = NULL;
170
171
fail:
171
172
        return -ENOMEM;
172
173
}
287
288
        if (!--m->count) {
288
289
                m->mode = SVC_POOL_DEFAULT;
289
290
                kfree(m->to_pool);
 
291
                m->to_pool = NULL;
290
292
                kfree(m->pool_to);
 
293
                m->pool_to = NULL;
291
294
                m->npools = 0;
292
295
        }
293
296
 
527
530
                printk("svc_destroy: no threads for serv=%p!\n", serv);
528
531
 
529
532
        del_timer_sync(&serv->sv_temptimer);
530
 
 
531
 
        svc_close_all(&serv->sv_tempsocks);
 
533
        /*
 
534
         * The set of xprts (contained in the sv_tempsocks and
 
535
         * sv_permsocks lists) is now constant, since it is modified
 
536
         * only by accepting new sockets (done by service threads in
 
537
         * svc_recv) or aging old ones (done by sv_temptimer), or
 
538
         * configuration changes (excluded by whatever locking the
 
539
         * caller is using--nfsd_mutex in the case of nfsd).  So it's
 
540
         * safe to traverse those lists and shut everything down:
 
541
         */
 
542
        svc_close_all(serv);
532
543
 
533
544
        if (serv->sv_shutdown)
534
545
                serv->sv_shutdown(serv);
535
546
 
536
 
        svc_close_all(&serv->sv_permsocks);
537
 
 
538
 
        BUG_ON(!list_empty(&serv->sv_permsocks));
539
 
        BUG_ON(!list_empty(&serv->sv_tempsocks));
540
 
 
541
547
        cache_clean_deferred(serv);
542
548
 
543
549
        if (svc_serv_is_pooled(serv))