Re: [PATCH v10 35/35] memcg: reap dead memcgs upon global memory pressure.

Glauber Costa
2013-06-06T08:33:44Z

On 06/06/2013 03:09 AM, Andrew Morton wrote:
> On Mon, 3 Jun 2013 23:30:04 +0400 Glauber Costa <glommer@openvz.org> wrote:
>
>> When we delete kmem-enabled memcgs, they can still be zombieing
>> around for a while. The reason is that the objects may still be alive,
>> and we won't be able to delete them at destruction time.
>>
>> The only entry point for that, though, are the shrinkers. The
>> shrinker interface, however, is not exactly tailored to our needs. It
>> could be a little bit better by using the API Dave Chinner proposed, but
>> it is still not ideal since we aren't really a count-and-scan event, but
>> more a one-off flush-all-you-can event that would have to abuse that
>> somehow.
>
> This patch is significantly dependent on
> http://ozlabs.org/~akpm/mmots/broken-out/memcg-debugging-facility-to-access-dangling-memcgs.patch,
> which was designated "mm only debug patch" when I merged it six months
> ago.
>
> We can go ahead and merge
> memcg-debugging-facility-to-access-dangling-memcgs.patch upstream I
> guess, but we shouldn't do that just because it makes the
> patch-wrangling a bit easier!
>
> Is memcg-debugging-facility-to-access-dangling-memcgs.patch worth merging in
> its own right? If so, what changed since our earlier decision?
>

I was under the impression that it *was* merged, even though it
shouldn't - it was showing up on -next, so I could be wrong. I am
basically using part of the infrastructure for this patch, but the rest
can go away.

If the patch isn't really merged and I was just confused (can happen),
what I would prefer to do is what I have done originally: I will append
part of that in this patch (the part the adds memcgs to the dangling
list), and leave the file part in a separate patch. I will then resend
you that patch as a debug-only patch.

To do that, it would be mostly helpful if you could remove that for your
tree temporarily.