From: Michal Hocko <mhocko@suse.com>
To: "Zhijian Li (Fujitsu)" <lizhijian@fujitsu.com>
Cc: "linux-mm@kvack.org" <linux-mm@kvack.org>,
Andrew Morton <akpm@linux-foundation.org>,
David Hildenbrand <david@redhat.com>,
Oscar Salvador <osalvador@suse.de>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Yasunori Gotou (Fujitsu)" <y-goto@fujitsu.com>
Subject: Re: [PATCH RFC] mm: Avoid triggering oom-killer during memory hot-remove operations
Date: Mon, 29 Jul 2024 10:15:22 +0200 [thread overview]
Message-ID: <ZqdPmtDjwDUoKJA2@tiehlicka> (raw)
In-Reply-To: <f2b49b7f-7622-4322-a34f-cd4b1756b791@fujitsu.com>
On Mon 29-07-24 08:04:19, Zhijian Li (Fujitsu) wrote:
> On 29/07/2024 15:40, Michal Hocko wrote:
> > That means that rather than killing the
> > test program which continues consuming memory - and not much of it - it
> > keeps killing other tasks with a higher memory consumption.
>
> This behavior is not my(administrator) expectation.
Well, this lack of proper NUMA aware oom killer behavior is there since
decades without many people complaining about that enough to push for a
better implementation. So while this is not great it seems not that many
people are suffering from that.
In general dealing with a complete memory node hotremove while there are
applications with strong numa policies is quite hard to do right and
there will always be a certain level of suffering.
> > This is really unfortunate but not something that should be handled by
> > special casing memory offlining but rather handling the mempolicy OOMs
> > better. There were some attempts in the past but never made it to a
> > mergable state. Maybe you want to pick up on that.
>
>
> Well, tell me the previous proposals(mail/url) please if you have the them in hand.
> I want to take a look.
https://lore.kernel.org/all/20220708082129.80115-1-ligang.bdlg@bytedance.com/
btw. lore.kernel.org has a great searching engine.
> >> [13853.758192] pagefault_out_of_memory: 4055 callbacks suppressed
> >> [13853.758243] Huh VM_FAULT_OOM leaked out to the #PF handler. Retrying PF
> >
> > This shouldn't really happen and it indicates that some memory
> > allocation in the pagefault path has failed.
>
> May I know if this will cause side effect to other processes.
This eill mean that the #PF handler has failed to allocate memory and
the VM_FAULT_OOM error has unwound all the way up to the exception
handler and that will restart the instruction that has caused the #PF.
In essence, as long as the process triggering this is not killed or the
allocation doesn't suceed it will be looping in the #PF path. This
normally doesn't happen because our allocators do not fail for small
allocation requests.
--
Michal Hocko
SUSE Labs
next prev parent reply other threads:[~2024-07-29 8:15 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-26 8:44 Li Zhijian
2024-07-26 9:17 ` Michal Hocko
2024-07-29 0:37 ` Zhijian Li (Fujitsu)
2024-07-29 2:14 ` Zhijian Li (Fujitsu)
2024-07-29 6:13 ` Michal Hocko
2024-07-29 6:34 ` Zhijian Li (Fujitsu)
2024-07-29 7:40 ` Michal Hocko
2024-07-29 8:04 ` Zhijian Li (Fujitsu)
2024-07-29 8:15 ` Michal Hocko [this message]
2024-07-29 8:53 ` Zhijian Li (Fujitsu)
2024-07-29 9:16 ` Michal Hocko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZqdPmtDjwDUoKJA2@tiehlicka \
--to=mhocko@suse.com \
--cc=akpm@linux-foundation.org \
--cc=david@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lizhijian@fujitsu.com \
--cc=osalvador@suse.de \
--cc=y-goto@fujitsu.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox