[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aKdhuOMrwgdxE9It@tiehlicka>
Date: Thu, 21 Aug 2025 20:13:12 +0200
From: Michal Hocko <mhocko@...e.com>
To: Davidlohr Bueso <dave@...olabs.net>
Cc: zhongjinji <zhongjinji@...or.com>, akpm@...ux-foundation.org,
andrealmeid@...lia.com, dvhart@...radead.org, feng.han@...or.com,
liam.howlett@...cle.com, linux-kernel@...r.kernel.org,
linux-mm@...ck.org, liulu.liu@...or.com, mingo@...hat.com,
npache@...hat.com, peterz@...radead.org, rientjes@...gle.com,
shakeel.butt@...ux.dev, tglx@...utronix.de
Subject: Re: [PATCH v4 2/3] mm/oom_kill: Only delay OOM reaper for processes
using robust futexes
On Tue 19-08-25 19:53:08, Davidlohr Bueso wrote:
> On Tue, 19 Aug 2025, Michal Hocko wrote:
>
> > On Mon 18-08-25 20:08:19, zhongjinji wrote:
> > > If a process holding robust futexes gets frozen, robust futexes might be reaped before
> > > futex_cleanup() runs when an OOM occurs. I am not sure if this will actually happen.
> >
> > Yes, and 2s delay will never rule that out. Especially for frozen tasks
> > which could be frozen undefinitely. That is not the point I have tried
> > to make. I was suggesting not treating futex specially because no matter
> > what we do this will always be racy and a hack to reduce the risk. We
> > simply cannot deal with that case more gracefully without a major
> > surgery to the futex implementation which is not desirable for this
> > specific reason.
>
> Yeah, relying on time as a fix is never a good idea. I was going to suggest
> skipping the reaping for tasks with a robust list,
let me reiterate that the purpose of the oom reaper is not an oom
killing process optimization. It is crucial to guarantee a forward
progress on the OOM situation by a) async memory reclaim of the oom
victim and b) unblocking oom selection to a different process after a)
is done. That means that the victim cannot block the oom situation for
ever. Therefore we cannot really avoid tasks with robust futex or any
other user processes without achieving b) at the same time.
The current delay is something we can tune and still have b) in place.
Normal mode of operation is that the oom reaper has nothing really to do
and that is really a good thing.
--
Michal Hocko
SUSE Labs
Powered by blists - more mailing lists