Thread (14 messages) 14 messages, 8 authors, 2021-08-24

Re: [PATCH] mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim

From: Michal Koutný <mkoutny@suse.com>
Date: 2021-08-23 16:09:43
Also in: cgroups, lkml

Hello

(and sorry for a belated reply).

On Tue, Aug 17, 2021 at 02:05:06PM -0400, Johannes Weiner [off-list ref] wrote:
quoted hunk ↗ jump to hunk
@@ -2576,6 +2578,15 @@ static void get_scan_count(struct lruvec *lruvec, struct scan_control *sc,
[...]
+			/* memory.low scaling, make sure we retry before OOM */
+			if (!sc->memcg_low_reclaim && low > min) {
+				protection = low;
+				sc->memcg_low_skipped = 1;
IIUC, this won't result in memory.events:low increment although the
effect is similar (breaching (partial) memory.low protection) and signal
to the user is comparable (overcommited memory.low).

Admittedly, this patch's behavior adheres to the current documentation
(Documentation/admin-guide/cgroup-v2.rst):
The number of times the cgroup is reclaimed due to high memory
pressure even though its usage is under the low boundary,
however, that definition might not be what the useful indicator would
be now.
Is it worth including these partial breaches into memory.events:low?

Regards,
Michal
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help