On Thu, 7 Sep 2017, Roman Gushchin wrote:
quoted
Really? From what I know and worked on way back when: The reason was to be
able to contain the affected application in a cpuset. Multiple apps may
have been running in multiple cpusets on a large NUMA machine and the OOM
condition in one cpuset should not affect the other. It also helped to
isolate the application behavior causing the oom in numerous cases.
Doesnt this requirement transfer to cgroups in the same way?
We have per-node memory stats and plan to use them during the OOM victim
selection. Hopefully it can help.
One of the OOM causes could be that memory was restricted to a certain
node set. Killing the allocating task is (was?) default behavior in that
case so that the task that has the restrictions is killed. Not any task
that may not have the restrictions and woiuld not experience OOM.