Remove "memcg/slab: reintroduce dead cache self-destruction" from mmotm

From: Vladimir Davydov
Date: Tue Jul 15 2014 - 11:19:23 EST


Hi Andrew,

Could you drop the following patches please?

slub-kmem_cache_shrink-check-if-partial-list-is-empty-under-list_lock.patch
slab-set-free_limit-for-dead-caches-to-0.patch
slab-do-not-keep-free-objects-slabs-on-dead-memcg-caches.patch
slub-make-dead-memcg-caches-discard-free-slabs-immediately.patch
memcg-wait-for-kfrees-to-finish-before-destroying-cache.patch
slub-make-slab_free-non-preemptable.patch
slub-dont-fail-kmem_cache_shrink-if-slab-placement-optimization-fails.patch
memcg-mark-caches-that-belong-to-offline-memcgs-as-dead.patch
memcg-destroy-kmem-caches-when-last-slab-is-freed.patch
memcg-cleanup-memcg_cache_params-refcnt-usage.patch

The patches implement self-destruction of kmem caches that belong to
dead memory cgroups (see https://lkml.org/lkml/2014/6/12/681). They were
needed for re-parenting kmem charges on memcg offline.

However, as Johannes explained, recent changes to the cgroup core made
re-parenting of memcg charges unnecessary, because now we can iterate
over offline css's on memory pressure and reclaim their charges, just as
we do with online css's (see https://lkml.org/lkml/2014/7/7/335). As a
result, it isn't strictly necessary to destroy dead kmem caches as soon
as the last object is freed, because we can add a per memcg slab
shrinker for them.

Since the implementation of kmem cache self-destruction is quite
intrusive to the slab core and, what is worse, degrades kfree
performance for dead caches noticeably (especially for SLAB, see
https://lkml.org/lkml/2014/6/25/520), I propose to drop it.

Thanks.
--
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/