mm/oom_kill, proc: replace magic number 1000 with OOM_SCORE_ADJ_MAX

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.

Link: https://lore.kernel.org/20260811033609.3992348-1-ye.liu@linux.dev
Signed-off-by: Ye Liu <liuye@kylinos.cn>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: David Rientjes <rientjes@google.com>
Cc: Shakeel Butt <shakeel.butt@linux.dev>
Cc: Song Hu <husong@kylinos.cn>
This commit is contained in:
Ye Liu 2026-08-11 11:36:08 +08:00 committed by Andrew Morton
parent f1dff3456c
commit abef8c9952
2 changed files with 3 additions and 2 deletions

View File

@ -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);

View File

@ -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;