Re: [PATCH 1/4] selftests: memcg: Fix compilation

From: Roman Gushchin
Date: Fri May 13 2022 - 15:10:05 EST


On Fri, May 13, 2022 at 11:53:26AM -0700, Roman Gushchin wrote:
> On Fri, May 13, 2022 at 07:18:08PM +0200, Michal Koutny wrote:
> > This fixes mis-applied changes from commit 72b1e03aa725 ("cgroup:
> > account for memory_localevents in test_memcg_oom_group_leaf_events()").
> >
> > Signed-off-by: Michal Koutný <mkoutny@xxxxxxxx>
> > ---
> > .../selftests/cgroup/test_memcontrol.c | 25 +++++++++++--------
> > 1 file changed, 14 insertions(+), 11 deletions(-)
> >
> > diff --git a/tools/testing/selftests/cgroup/test_memcontrol.c b/tools/testing/selftests/cgroup/test_memcontrol.c
> > index 6ab94317c87b..4958b42201a9 100644
> > --- a/tools/testing/selftests/cgroup/test_memcontrol.c
> > +++ b/tools/testing/selftests/cgroup/test_memcontrol.c
> > @@ -1241,7 +1241,16 @@ static int test_memcg_oom_group_leaf_events(const char *root)
> > if (cg_read_key_long(child, "memory.events", "oom_kill ") <= 0)
> > goto cleanup;
> >
> > - if (cg_read_key_long(parent, "memory.events", "oom_kill ") <= 0)
> > + parent_oom_events = cg_read_key_long(
> > + parent, "memory.events", "oom_kill ");
> > + /*
> > + * If memory_localevents is not enabled (the default), the parent should
> > + * count OOM events in its children groups. Otherwise, it should not
> > + * have observed any events.
> > + */
> > + if (has_localevents && parent_oom_events != 0)
> > + goto cleanup;
> > + else if (!has_localevents && parent_oom_events <= 0)
> > goto cleanup;
> >
> > ret = KSFT_PASS;
> > @@ -1349,20 +1358,14 @@ static int test_memcg_oom_group_score_events(const char *root)
> > if (!cg_run(memcg, alloc_anon, (void *)MB(100)))
> > goto cleanup;
> >
> > - parent_oom_events = cg_read_key_long(
> > - parent, "memory.events", "oom_kill ");
> > - /*
> > - * If memory_localevents is not enabled (the default), the parent should
> > - * count OOM events in its children groups. Otherwise, it should not
> > - * have observed any events.
> > - */
> > - if ((has_localevents && parent_oom_events == 0) ||
> > - parent_oom_events > 0)
> > - ret = KSFT_PASS;
> > + if (cg_read_key_long(memcg, "memory.events", "oom_kill ") != 3)
> > + FAIL(cleanup);
> >
> > if (kill(safe_pid, SIGKILL))
> > goto cleanup;
> >
> > + ret = KSFT_PASS;
> > +
> > cleanup:
> > if (memcg)
> > cg_destroy(memcg);
> > --
> > 2.35.3
> >
>
> My bad.

Actually not, as pointed by David.
Seems like it's git fault. The original patch looks correct.