Re: [patch 3/3] slub: sort parital list when thrashing

From: Christoph Lameter
Date: Mon Mar 30 2009 - 10:45:43 EST


On Sun, 29 Mar 2009, David Rientjes wrote:

> @@ -1720,6 +1727,15 @@ checks_ok:
> if (unlikely(!prior)) {
> add_partial(get_node(s, page_to_nid(page)), page, 1);
> stat(c, FREE_ADD_PARTIAL);
> + } else if (c->slowpath_allocs >= SLAB_THRASHING_THRESHOLD) {
> + /*
> + * If the cache is actively slab thrashing, it's necessary to
> + * move partial slabs to the head of the list so there isn't
> + * excessive partial list scanning while holding list_lock.
> + */
> + if (!skip_partial(s, page))
> + move_partial_to_head(get_node(s, page_to_nid(page)),
> + page);
> }
>
> out_unlock:
>

This again adds code to a pretty hot path.

What is the impact of the additional hot path code?

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/