Messages in this thread | | | Date | Wed, 16 Jan 2013 15:04:23 +0000 | From | Christoph Lameter <> | Subject | Re: [PATCH 1/3] slub: correct to calculate num of acquired objects in get_partial_node() |
| |
On Wed, 16 Jan 2013, Joonsoo Kim wrote:
> In acquire_slab() with mode = 1, we always set new.inuse = page->objects.
Yes with that we signal that we have extracted the objects from the slab.
> So > > acquire_slab(s, n, page, object == NULL); > > if (!object) { > c->page = page; > stat(s, ALLOC_FROM_PARTIAL); > object = t; > available = page->objects - page->inuse; > > !!!!!! available is always 0 !!!!!!
Correct. We should really count the objects that we extracted in acquire_slab(). Please update the description to the patch and repost.
Also it would be nice if we had some way to avoid passing a pointer to an integer to acquire_slab. If we cannot avoid that then ok but it would be nicer without that.
| |