From: Michal Hocko <mhocko@suse.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Ye Liu <ye.liu@linux.dev>, Ye Liu <liuye@kylinos.cn>,
David Rientjes <rientjes@google.com>,
Shakeel Butt <shakeel.butt@linux.dev>,
linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org,
linux-mm@kvack.org
Subject: Re: [PATCH] mm/oom_kill, proc: replace magic number 1000 with OOM_SCORE_ADJ_MAX
Date: Mon, 31 Aug 2026 11:09:40 +0200 [thread overview]
Message-ID: <apVE1A1pI4Ad6Ts5@tiehlicka> (raw)
In-Reply-To: <20260829201310.648ed330984b91b1c135d8a3@linux-foundation.org>
On Sat 29-08-26 20:13:10, Andrew Morton wrote:
> On Tue, 11 Aug 2026 11:36:08 +0800 Ye Liu <ye.liu@linux.dev> wrote:
>
> > From: Ye Liu <liuye@kylinos.cn>
> >
> > In oom_badness() and proc_oom_score(), the oom_score_adj normalization
> > uses a hardcoded 1000, which is the value of OOM_SCORE_ADJ_MAX defined
> > in include/uapi/linux/oom.h. Other code in the kernel (e.g.
> > fs/proc/base.c oom_adj handling) already uses OOM_SCORE_ADJ_MAX for
> > the same purpose.
> >
> > Replace the magic number with the macro for consistency and
> > readability. No functional change.
> >
> > ...
> >
> > --- a/fs/proc/base.c
> > +++ b/fs/proc/base.c
> > @@ -594,7 +594,8 @@ static int proc_oom_score(struct seq_file *m, struct pid_namespace *ns,
> > * exporting for a long time so userspace might depend on it.
> > */
> > if (badness != LONG_MIN)
> > - points = (1000 + badness * 1000 / (long)totalpages) * 2 / 3;
> > + points = (OOM_SCORE_ADJ_MAX +
> > + badness * OOM_SCORE_ADJ_MAX / (long)totalpages) * 2 / 3;
> >
> > seq_printf(m, "%lu\n", points);
> >
> > diff --git a/mm/oom_kill.c b/mm/oom_kill.c
> > index 5f372f6e26fa..08bff7a55db8 100644
> > --- a/mm/oom_kill.c
> > +++ b/mm/oom_kill.c
> > @@ -230,7 +230,7 @@ long oom_badness(struct task_struct *p, unsigned long totalpages)
> > task_unlock(p);
> >
> > /* Normalize to oom_score_adj units */
> > - adj *= totalpages / 1000;
> > + adj *= totalpages / OOM_SCORE_ADJ_MAX;
> > points += adj;
> >
> > return points;
>
> AI review suggests that this is a misinterpretation of "1000"?
>
> https://sashiko.dev/#/patchset/20260811033609.3992348-1-ye.liu@linux.dev
Sashiko is trying to be clever and it is simply wrong here. The scaling
fact is indeed the same as the OOM_SCORE_ADJ_MAX.
--
Michal Hocko
SUSE Labs
prev parent reply other threads:[~2026-08-31 9:09 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-11 3:36 [PATCH] mm/oom_kill, proc: replace magic number 1000 with OOM_SCORE_ADJ_MAX Ye Liu
2026-08-11 12:58 ` Michal Hocko
2026-08-18 1:04 ` Song Hu
2026-08-19 3:15 ` Ye Liu
2026-08-19 6:47 ` Michal Hocko
2026-08-30 3:13 ` Andrew Morton
2026-08-31 9:09 ` Michal Hocko [this message]
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=apVE1A1pI4Ad6Ts5@tiehlicka \
--to=mhocko@suse.com \
--cc=akpm@linux-foundation.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=liuye@kylinos.cn \
--cc=rientjes@google.com \
--cc=shakeel.butt@linux.dev \
--cc=ye.liu@linux.dev \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.