On Mon, 15 Jun 2015 11:34:44 -0500 (CDT)
Christoph Lameter <c...@linux.com> wrote:

> On Mon, 15 Jun 2015, Jesper Dangaard Brouer wrote:
> 
> > +   for (i = 0; i < size; i++) {
> > +           void *object = p[i];
> > +
> > +           if (unlikely(!object))
> > +                   continue; // HOW ABOUT BUG_ON()???
> 
> Sure BUG_ON would be fitting here.

Okay, will do in V2.

> > +
> > +           page = virt_to_head_page(object);
> > +           BUG_ON(s != page->slab_cache); /* Check if valid slab page */
> 
> This is the check if the slab page belongs to the slab cache we are
> interested in.

Is this appropriate to keep on this fastpath? (I copied the check from
one of your earlier patches)

> > +
> > +           if (c->page == page) {
> > +                   /* Fastpath: local CPU free */
> > +                   set_freepointer(s, object, c->freelist);
> > +                   c->freelist = object;
> > +           } else {
> > +                   c->tid = next_tid(c->tid);
> 
> tids are only useful for the fastpath. No need to fiddle around with them
> for the slowpath.

Okay, understood.

> > +                   local_irq_enable();
> > +                   /* Slowpath: overhead locked cmpxchg_double_slab */


-- 
Best regards,
  Jesper Dangaard Brouer
  MSc.CS, Sr. Network Kernel Developer at Red Hat
  Author of http://www.iptv-analyzer.org
  LinkedIn: http://www.linkedin.com/in/brouer
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to