Re: [PATCH v3] mm/oom: do not oom reap task with an unresolved robust futex

From: Michal Hocko
Date: Wed Mar 02 2022 - 09:25:06 EST


Sorry, this has slipped through cracks.

On Mon 14-02-22 15:39:31, Nico Pache wrote:
[...]
> We've recently been discussing the following if statement in __oom_reap_task_mm:
> if (vma_is_anonymous(vma) || !(vma->vm_flags & VM_SHARED))
>
> Given the comment above it, and some of the upstream discussion the original
> RFC, we are struggling to see why this should be a `||` and not an `&&`. If we
> only want to reap anon memory and reaping shared memory can be dangerous is this
> statement incorrect?
>
> We have a patch queued up to make this change, but wanted to get your opinion on
> why this was originally designed this way in case we are missing something.

I do not really see why this would be wrong. Private file backed
mappings can contain a reapable memory as well. I do not see how this
would solve the futex issue.
--
Michal Hocko
SUSE Labs