[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.11.1506151133150.20358@east.gentwo.org>
Date: Mon, 15 Jun 2015 11:34:44 -0500 (CDT)
From: Christoph Lameter <cl@...ux.com>
To: Jesper Dangaard Brouer <brouer@...hat.com>
cc: linux-mm@...ck.org, Andrew Morton <akpm@...ux-foundation.org>,
netdev@...r.kernel.org, Alexander Duyck <alexander.duyck@...il.com>
Subject: Re: [PATCH 7/7] slub: initial bulk free implementation
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.
> +
> + 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.
> +
> + 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.
> + local_irq_enable();
> + /* Slowpath: overhead locked cmpxchg_double_slab */
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists