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

David Vernet
2022-05-13T17:40:40Z

On Fri, May 13, 2022 at 07:18:08PM +0200, Michal Koutný 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-IBi9RG/b67k@public.gmane.org>
> ---
> .../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
>

Thanks for the fix, Michal.

Reviewed-by: David Vernet <void-gq6j2QGBifHby3iVrkZq2A@public.gmane.org>