]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
oomd: fix unreachable test case in test-oomd-util 25509/head
authorNick Rosbrook <nick.rosbrook@canonical.com>
Tue, 22 Nov 2022 16:30:03 +0000 (11:30 -0500)
committerNick Rosbrook <nick.rosbrook@canonical.com>
Wed, 23 Nov 2022 20:45:54 +0000 (15:45 -0500)
This conditional with !empty_or_root(ctx->path) always returns false
because the most recent oomd_cgroup_context_acquire() call was with the
root cgroup. Make sure this test case can be reached by checking cgroup
instead of ctx->path.

While here, use an unused uid (61183) instead of the nobody uid so the
test case does not fail in unprivileged LXD containers.

src/oom/test-oomd-util.c

index 176e3a8d691226dc05f64d00616c7e2166ece24b..faa75c55788f874f4adc7576c0fae232cfe4da5e 100644 (file)
@@ -475,9 +475,9 @@ static void test_oomd_fetch_cgroup_oom_preference(void) {
 
         /* Assert that avoid/omit are not set if the cgroup and prefix are not
          * owned by the same user.*/
-        if (test_xattrs && !empty_or_root(ctx->path)) {
+        if (test_xattrs && !empty_or_root(cgroup)) {
                 ctx = oomd_cgroup_context_free(ctx);
-                assert_se(cg_set_access(SYSTEMD_CGROUP_CONTROLLER, cgroup, 65534, 0) >= 0);
+                assert_se(cg_set_access(SYSTEMD_CGROUP_CONTROLLER, cgroup, 61183, 0) >= 0);
                 assert_se(oomd_cgroup_context_acquire(cgroup, &ctx) == 0);
 
                 assert_se(oomd_fetch_cgroup_oom_preference(ctx, NULL) == 0);