[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180422130836.GH17484@dhcp22.suse.cz>
Date: Sun, 22 Apr 2018 07:08:36 -0600
From: Michal Hocko <mhocko@...nel.org>
To: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
Cc: rientjes@...gle.com, akpm@...ux-foundation.org,
aarcange@...hat.com, guro@...com, linux-kernel@...r.kernel.org,
linux-mm@...ck.org
Subject: Re: [patch v2] mm, oom: fix concurrent munlock and oom reaperunmap
On Sun 22-04-18 12:48:13, Tetsuo Handa wrote:
> David Rientjes wrote:
> > How have you tested this?
> >
> > I'm wondering why you do not see oom killing of many processes if the
> > victim is a very large process that takes a long time to free memory in
> > exit_mmap() as I do because the oom reaper gives up trying to acquire
> > mm->mmap_sem and just sets MMF_OOM_SKIP itself.
> >
>
> We can call __oom_reap_task_mm() from exit_mmap() (or __mmput()) before
> exit_mmap() holds mmap_sem for write. Then, at least memory which could
> have been reclaimed if exit_mmap() did not hold mmap_sem for write will
> be guaranteed to be reclaimed before MMF_OOM_SKIP is set.
That might be an alternative way but I am really wondering whether this
is the simplest way forward.
--
Michal Hocko
SUSE Labs
Powered by blists - more mailing lists