Messages in this thread | | | Date | Tue, 31 Mar 2009 10:21:42 -0700 (PDT) | From | David Rientjes <> | Subject | Re: [patch 1/3] slub: add per-cache slab thrash ratio |
| |
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.
| |