On Tue 17-07-18 13:41:33, David Rientjes wrote: [...] > Thus, the semantic would be: if oom mem cgroup is "tree", kill all > processes in subtree; otherwise, it can be "cgroup" or "process" to > determine what is oom killed depending on the victim selection. Why should be an intermediate node any different from the leaf. If you want to tear down the whole subtree, just make it oom_cgroup = true and be done with that. Why do we even need to call it tree? > Having the "tree" behavior could definitely be implemented as a separate > tunable; but then then value of /A/memory.group_oom and > /A/B/memory.group_oom are irrelevant and, to me, seems like it would be > more confusing. I am sorry, I do not follow. How are the following two different? A (tree) A (group) | | B (tree) B (group) | | C (process) C (group=false) -- Michal Hocko SUSE Labs