From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 09D152F0673 for ; Wed, 19 Aug 2026 06:47:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787122058; cv=none; b=DwVLrjlNyiSMN4jw269+KCR+LyG7v+Cim9AVg6ZO/fSXdH4neozSVRqVSeich3o0IFfLWBWw0mLnNC6L7QlUtsKUaDK2EBHbKGUSf8hd9XUkhPFWSkvBCIWoIHcLrTA2OK6qZcyu9ttxxF6Z6AV3ic02lS+/ZgfdxTKgzlqPU4Q= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787122058; c=relaxed/simple; bh=tKflbt8K9D5B+Ptk+13mBs1s4BzQwkr8d/j7q+DGvLo=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=hd4Hv1/8if1J9t/k/g7IkS2WAOACaT0ZeuuPES6XTp9558e5TFojSW4pWlu2HT9ujpful9Jv1aDmleNLKfldVmeOq7drZxmlwr09Yj59zwr8NPp/N50CUnfWqiH5TOwfYByL0Nr0lsNqxR7bO39I3TRlMhv6l/3FrfLKC5Ov22I= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=SrnkIEo9; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="SrnkIEo9" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-490cf322ed0so5646585e9.1 for ; Tue, 18 Aug 2026 23:47:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1787122055; x=1787726855; darn=vger.kernel.org; h=in-reply-to:content-transfer-encoding:content-disposition :content-type:mime-version:references:message-id:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to:content-type; bh=h4WjkvsBQ0E8wD5Ds/jh+ZodB+Y3e1a9vvF6PPHb0eo=; b=SrnkIEo9Fh+JHXmhNcBvP/n9kMg7l8PjpxfLd/T2DJe1g5QKs1NtDSLB5pPqC9MIlL y4opi5Fsn8Hc4bIBomZ0WA9UvwvyQ/J7qBe6wVvbvS59VtmFf0iRBcnwLJadEaPizaFx IzRbXLrNF4a53Y/Tsa9rkDpoORknyJWbrn2m7+j/3EvoZjFqWzbJZAw7q7sDemupHkQn dBIGyK2/i7sRl1wDL+rntFUnjIVD4AwrJSDnrbTS3sqFvfg3oYDsFCiEkj4+2CusVRnt Pq2uOXlWp/ZfaqcfntMs+ePR1lEbjAOxKO81glTtKFIHYSEu6d1AKZe7gqdQR3Xp+i7L r0WA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1787122055; x=1787726855; h=in-reply-to:content-transfer-encoding:content-disposition :content-type:mime-version:references:message-id:subject:cc:to:from :date:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to:content-type; bh=h4WjkvsBQ0E8wD5Ds/jh+ZodB+Y3e1a9vvF6PPHb0eo=; b=HAm9fUGyYxPQDDXLW2QY3zsZkQgZtzLTtH/6rpox0hkS9yajrITv+Hy0eebCQArdM+ 6qwjV49WcKM1qD6uUHj+suTqLSXDPOkxBI0Z33oG8Z4s08CD7O3fpMUeSjv+WoA0HFEV CLSNp6vkowtNnsfTTu4QG0SRHKg3hEEmOOWDTWH2vsmPh9r77hfepO2ZgRBbPhuWotJn WrFKdh1P9ZOT6BkkJggPm08gj5eNd4yDeo5O0IrbweDxMTJjpG4MZpMBbTSi2vhOvXjB gahFJODqxKVDyZbCuZJG+Ztd2TbcKptqDdYHdQ15m4RVv5R9qPTMBhBVvA1HS3FzARZP KIpQ== X-Forwarded-Encrypted: i=1; AHgh+RqV5zD8dHXUnjPQMWbfBY3VwwEZ3kkJ4mP5+on0q+4iyiSDvzJbC0xpvMwZOKINC0udHTUn6gylmLGFjzc=@vger.kernel.org X-Gm-Message-State: AOJu0YwbX9GUgabMyO1zDNhHVrwni7w7L3kkWpUXSc6bJLj7vm7Fwj85 P74DMTmxs5JTHdydwQ1hHLQcNHCJrJx5N1a/ith2vCwLLRxYpsxUPtkzCk8VQ9YFFuk= X-Gm-Gg: AR+sD108pGMqt/vfWdMiLKwIgQngm7rxr+fP3aEKj49HWjdssbDG3uNefIesgWTKv8c OlHDW1fpgP6vGcG5XvhVQMefcg7/EY359Cb4ze6nYUfDo1I72aNX6p5cYPjVWVfDj0RyCvLsRjA 2MwRw4J/n47987IVf/UUmk77XvSJ+tNeZUQDTfTc0tBkJlfqIOUzHAcMCqvfpqJOJ9njSdYqoTj OhjMBWwGYMt0Y76JeNnKQSw/oKtU0hfAH4WBYrD//b5BQQXFW4s6PB0moGJghw0419BU06ZxkZA fgtf8iqFDMCyA5wt8mAV3ufBcIfI26O+uRvUtoiqRpeeBWIgkMYIAmfSXhBXRC2QfA5kJ6J4A90 5rFKlkVPGkkOJQ/OLp2TeKoyLlpCebkuwUD276LELjxXQlEVqc7Gve2jsTIiYJYd6eUU9dmraLk JjONPi7yVEdVDAIvK3VKrpBgP/4K+5EFRtYfCGuuN1v+e9pr8f+evlhPaTOvJ18uKIa07v3UlR3 g== X-Received: by 2002:a05:600c:34d1:b0:499:49f3:77b1 with SMTP id 5b1f17b1804b1-499aa14a6a6mr39006955e9.3.1787122055272; Tue, 18 Aug 2026 23:47:35 -0700 (PDT) Received: from localhost (109-81-87-166.rct.o2.cz. [109.81.87.166]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-499a9dff4c1sm28169295e9.3.2026.08.18.23.47.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Aug 2026 23:47:34 -0700 (PDT) Date: Wed, 19 Aug 2026 08:47:33 +0200 From: Michal Hocko To: Ye Liu Cc: Song Hu , akpm@linux-foundation.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, liuye@kylinos.cn, rientjes@google.com, shakeel.butt@linux.dev Subject: Re: [PATCH] mm/oom_kill, proc: replace magic number 1000 with OOM_SCORE_ADJ_MAX Message-ID: References: <20260811033609.3992348-1-ye.liu@linux.dev> <20260818010433.65169-1-husong@kylinos.cn> <9a92b4c9-ad33-492a-b206-2b0862585c64@linux.dev> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <9a92b4c9-ad33-492a-b206-2b0862585c64@linux.dev> On Wed 19-08-26 11:15:52, Ye Liu wrote: > > > 在 2026/8/18 09:04, Song Hu 写道: > > On 2026/8/11 11:36, Ye Liu wrote: > >> --- 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; > > > > One thing this line hides: for a memcg OOM, totalpages is > > mem_cgroup_get_max(), which can be below 1000 pages when the > > container limit is under 4M. The division then yields 0, the whole > > oom_score_adj contribution goes away, and a task protected with > > -997 scores the same as a best-effort task with 1000. The -1000 > > exemption is checked separately above and still works. > > > > DIV_ROUND_UP(totalpages, OOM_SCORE_ADJ_MAX) would preserve the adj > > weighting for small limits and change nothing meaningful for large > > ones. This is an edge case, so probably fine to leave as is - > > noting it here since the line is being touched anyway. > > Good catch. Yes, the truncation for totalpages < 1000 is real, > but as you noted, it's an existing edge case. I'll keep this patch > as a mechanical replacement and won't address it here. Out of curiosity, > are sub-4MB memcg limits actually used in practice? I have seen containers as small as 20MB and they were suffering from quite some problems - e.g. charge caching on different leyers. I would generally discourage people from running containers that small unless they exactly know what they are doing. -- Michal Hocko SUSE Labs