Re: [PATCH v4 24/25] memcg/slub: shrink dead caches
From: Glauber Costa <hidden>
Date: 2012-07-20 22:19:46
Also in:
linux-mm, lkml
From: Glauber Costa <hidden>
Date: 2012-07-20 22:19:46
Also in:
linux-mm, lkml
On 07/06/2012 12:16 PM, Christoph Lameter wrote:
On Mon, 18 Jun 2012, Glauber Costa wrote:quoted
In the slub allocator, when the last object of a page goes away, we don't necessarily free it - there is not necessarily a test for empty page in any slab_free path.This is the same btw in SLAB which keeps objects in per cpu caches and keeps empty slab pages on special queues.quoted
This patch marks all memcg caches as dead. kmem_cache_shrink is called for the ones who are not yet dead - this will force internal cache reorganization, and then all references to empty pages will be removed.You need to call this also for slab to drain the caches and free the pages on the empty list.
Doesn't the SLAB have a time-based reaper for that? That's why I was less concerned with the SLAB, but I can certainly call it for both.