Re: [patch] mm, oom: prevent soft lockup on memcg oom for UP systems

From: David Rientjes
Date: Tue Mar 10 2020 - 18:55:46 EST


On Wed, 11 Mar 2020, Tetsuo Handa wrote:

> > diff --git a/mm/vmscan.c b/mm/vmscan.c
> > --- a/mm/vmscan.c
> > +++ b/mm/vmscan.c
> > @@ -2637,6 +2637,8 @@ static void shrink_node_memcgs(pg_data_t *pgdat, struct scan_control *sc)
> > unsigned long reclaimed;
> > unsigned long scanned;
> >
> > + cond_resched();
> > +
>
> Is this safe for CONFIG_PREEMPTION case? If current thread has realtime priority,
> can we guarantee that the OOM victim (well, the OOM reaper kernel thread rather
> than the OOM victim ?) gets scheduled?
>

I think it's the best we can do that immediately solves the issue unless
you have another idea in mind?

> > switch (mem_cgroup_protected(target_memcg, memcg)) {
> > case MEMCG_PROT_MIN:
> > /*
> >
>