Re: [patch v3 -mm 3/6] mm, memcg: add hierarchical usage oom policy

From: Roman Gushchin
Date: Mon Jul 23 2018 - 17:29:20 EST


On Mon, Jul 23, 2018 at 01:33:19PM -0700, David Rientjes wrote:
> On Mon, 16 Jul 2018, David Rientjes wrote:
>
> > > And "tree" is different. It actually changes how the selection algorithm works,
> > > and sub-tree settings do matter in this case.
> > >
> >
> > "Tree" is considering the entity as a single indivisible memory consumer,
> > it is compared with siblings based on its hierarhical usage. It has
> > cgroup oom policy.
> >
> > It would be possible to separate this out, if you'd prefer, to account
> > an intermediate cgroup as the largest descendant or the sum of all
> > descendants. I hadn't found a usecase for that, however, but it doesn't
> > mean there isn't one. If you'd like, I can introduce another tunable.
> >
>
> Roman, I'm trying to make progress so that the cgroup aware oom killer is
> in a state that it can be merged. Would you prefer a second tunable here
> to specify a cgroup's points includes memory from its subtree?

Hi, David!

It's hard to tell, because I don't have a clear picture of what you're
suggesting now. My biggest concern about your last version was that it's hard
to tell what oom_policy really defines. Each value has it's own application
rules, which is a bit messy (some values are meaningful for OOMing cgroup only,
other are reading on hierarchy traversal).
If you know how to make it clear and non-contradictory,
please, describe the proposed interface.

>
> It would be helpful if you would also review the rest of the patchset.

I think, that we should focus on interface semantics right now.
If we can't agree on how the things should work, it makes no sense
to discuss the implementation.

Thanks!