[Devel] [PATCH RHEL7 COMMIT] mm/memcontrol: warn about leaking memory on reparenting
Konstantin Khorenko
khorenko at virtuozzo.com
Mon Jul 1 17:39:16 MSK 2019
The commit is pushed to "branch-rh7-3.10.0-957.21.3.vz7.106.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-957.21.3.vz7.106.4
------>
commit fb2d3af5b3f4e122c06592549684f3b3d884cc8f
Author: Konstantin Khorenko <khorenko at virtuozzo.com>
Date: Mon Jul 1 15:58:15 2019 +0300
mm/memcontrol: warn about leaking memory on reparenting
We expect reparent of memory cgroup is done in only 1 cycle iteration
and would like to make sure our expectations are correct,
so let's add a warning in case several iterations required to reparent a
memcg.
Fixes: e548e343c40b ("mm/memcontrol: don't reparent forever if counter
leaked.")
https://pmc.acronis.com/browse/VSTOR-24241
Signed-off-by: Konstantin Khorenko <khorenko at virtuozzo.com>
---
mm/memcontrol.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index edc6bebc1f34..e123323f1044 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -4325,6 +4325,14 @@ static void mem_cgroup_reparent_charges(struct mem_cgroup *memcg)
*/
} while ((page_counter_read(&memcg->memory) -
page_counter_read(&memcg->kmem) > 0) && reparent_attempts--);
+
+ WARN_ONCE(reparent_attempts != 10,
+ "memcg 0x%p leak suspected, performed %d iterations: "
+ "memory=%lu, kmem=%lu",
+ memcg,
+ 10 - reparent_attempts,
+ page_counter_read(&memcg->memory),
+ page_counter_read(&memcg->kmem));
}
/*
More information about the Devel
mailing list