linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Vladimir Davydov <vdavydov@parallels.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>,
	Michal Hocko <mhocko@suse.cz>,
	Joonsoo Kim <iamjoonsoo.kim@lge.com>,
	Christoph Lameter <cl@linux.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Remove "memcg/slab: reintroduce dead cache self-destruction" from mmotm
Date: Tue, 15 Jul 2014 19:19:07 +0400	[thread overview]
Message-ID: <20140715151907.GA23103@esperanza> (raw)

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, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

                 reply	other threads:[~2014-07-15 15:19 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140715151907.GA23103@esperanza \
    --to=vdavydov@parallels.com \
    --cc=akpm@linux-foundation.org \
    --cc=cl@linux.com \
    --cc=hannes@cmpxchg.org \
    --cc=iamjoonsoo.kim@lge.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mhocko@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox