Re: [patch 1/3] slub: add per-cache slab thrash ratio

From: David Rientjes
Date: Tue Mar 31 2009 - 13:22:41 EST


On Tue, 31 Mar 2009, Christoph Lameter wrote:

> > @@ -3833,7 +3830,9 @@ static ssize_t order_store(struct kmem_cache *s,
> > if (order > slub_max_order || order < slub_min_order)
> > return -EINVAL;
> >
> > + thrash_ratio = s->min_free_watermark * 100 / oo_objects(s->oo);
> > calculate_sizes(s, order);
> > + s->min_free_watermark = oo_objects(s->oo) * thrash_ratio / 100;
> > return length;
> > }
> >
>
> Hmmm.. Still calculating the trash ratio based on existing objects per
> slab and then resetting the objects per slab to a different number.
> Shouldnt the trash_ratio simply be zapped to an initial value if the
> number of objects per slab changes?
>

Each cache with >= 20 objects per slab will get a default
slab_thrash_ratio of 20 in v2 of the series. If the order of a cache is
subsequently tuned, the default slab_thrash_ratio would be cleared without
knowledge to the user.

I'd agree that it should be cleared if the tunable had object units
instead of a ratio, but the ratio simply applies to any given order.
--
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/