[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5084F7B2.7000105@parallels.com>
Date: Mon, 22 Oct 2012 11:37:22 +0400
From: Glauber Costa <glommer@...allels.com>
To: Christoph Lameter <cl@...ux.com>
CC: <linux-mm@...ck.org>, <linux-kernel@...r.kernel.org>,
<cgroups@...r.kernel.org>, Mel Gorman <mgorman@...e.de>,
Tejun Heo <tj@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Michal Hocko <mhocko@...e.cz>,
Johannes Weiner <hannes@...xchg.org>,
<kamezawa.hiroyu@...fujitsu.com>,
David Rientjes <rientjes@...gle.com>,
Pekka Enberg <penberg@...nel.org>, <devel@...nvz.org>,
Pekka Enberg <penberg@...helsinki.fi>,
Suleiman Souhlal <suleiman@...gle.com>
Subject: Re: [PATCH v5 14/18] memcg/sl[au]b: shrink dead caches
On 10/19/2012 11:47 PM, Christoph Lameter wrote:
> On Fri, 19 Oct 2012, Glauber Costa wrote:
>
>> An unlikely branch is used to make sure this case does not affect
>> performance in the usual slab_free path.
>>
>> The slab allocator has a time based reaper that would eventually get rid
>> of the objects, but we can also call it explicitly, since dead caches
>> are not a likely event.
>
> This is also something that could be done from slab_common since all
> allocators have kmem_cache_shrink and kmem_cache_shrink can be used to
> drain the caches and free up empty slab pages.
>
The changelog needs to be updated. I updated the code, forgot the
changelog =(
I am actually now following Tejun's last suggestion, and no longer using
my old verify_dead code.
So I am basically calling shrink_slab every once in a while until the
cache disappears.
The only change I still need in the allocators is to count the amount of
pages they have, so I can differentiate between need-to-shrink and
need-to-destroy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists