Re: [PATCH v3 1/2] mm: introduce process_mrelease system call
From: Suren Baghdasaryan <surenb@google.com>
Date: 2021-08-02 22:16:43
Also in:
linux-api, lkml
On Mon, Aug 2, 2021 at 1:08 PM Suren Baghdasaryan [off-list ref] wrote:
On Mon, Aug 2, 2021 at 1:05 PM Shakeel Butt [off-list ref] wrote:quoted
On Mon, Aug 2, 2021 at 12:54 PM Suren Baghdasaryan [off-list ref] wrote:quoted
On Mon, Jul 26, 2021 at 6:44 AM Shakeel Butt [off-list ref] wrote:quoted
On Mon, Jul 26, 2021 at 12:27 AM Michal Hocko [off-list ref] wrote:quoted
[...]quoted
Is process_mrelease on all of them really necessary? I thought that the primary reason for the call is to guarantee a forward progress in cases where the userspace OOM victim cannot die on SIGKILL. That should be more an exception than a normal case, no?I am thinking of using this API in this way: On user-defined OOM condition, kill a job/cgroup and unconditionally reap all of its processes. Keep monitoring the situation and if it does not improve go for another kill and reap. I can add additional logic in between kill and reap to see if reap is necessary but unconditionally reaping is more simple.quoted
quoted
An alternative would be to have a cgroup specific interface for reaping similar to cgroup.kill.Could you elaborate?I mentioned this in [1] where I was thinking if it makes sense to overload cgroup.kill to also add the SIGKILLed processes in oom_reaper_list. The downside would be that there will be one thread doing the reaping and the syscall approach allows userspace to reap in multiple threads. I think for now, I would go with whatever Suren is proposing and we can always add more stuff if need arises. [1] https://lore.kernel.org/containers/CALvZod4jsb6bFzTOS4ZRAJGAzBru0oWanAhezToprjACfGm+ew@mail.gmail.com/ (local)Hi Folks, So far I don't think there was any request for further changes. Anything else you would want me to address or are we in a good shape wrt this feature? If so, would people who had a chance to review this patchset be willing to endorse it with their Reviewed-by or Acked-by?I think with Michal's suggestion to use a killable mmap lock, at least I am good with the patch.Ah, yes. Thanks for pointing this out! I'll replace mmap_read_lock() with mmap_read_lock_killable(). Will post an updated version later today.
Posted the next version at https://lore.kernel.org/patchwork/patch/1471403/