dryang / rpms / systemd

Forked from rpms/systemd a year ago
Clone
c2dfb7
From 5fc2d94fbf8271bb340e834f832af5d890c267bf Mon Sep 17 00:00:00 2001
c2dfb7
From: =?UTF-8?q?Michal=20Sekleta=CC=81r?= <msekleta@redhat.com>
c2dfb7
Date: Tue, 3 Mar 2020 11:45:00 +0100
c2dfb7
Subject: [PATCH] cgroup: make sure that cpuset is supported on cgroup v2 and
c2dfb7
 disabled with v1
c2dfb7
c2dfb7
Resolves: #1808940
c2dfb7
c2dfb7
(rhel-only)
c2dfb7
---
c2dfb7
 src/basic/cgroup-util.c | 7 +++++--
c2dfb7
 1 file changed, 5 insertions(+), 2 deletions(-)
c2dfb7
c2dfb7
diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
c2dfb7
index 6f47c3aacb..92bc1f2543 100644
c2dfb7
--- a/src/basic/cgroup-util.c
c2dfb7
+++ b/src/basic/cgroup-util.c
c2dfb7
@@ -2353,10 +2353,10 @@ int cg_mask_supported(CGroupMask *ret) {
c2dfb7
                 if (r < 0)
c2dfb7
                         return r;
c2dfb7
 
c2dfb7
-                /* Currently, we support the cpu, memory, io and pids
c2dfb7
+                /* Currently, we support the cpu, memory, io, pids and cpuset
c2dfb7
                  * controller in the unified hierarchy, mask
c2dfb7
                  * everything else off. */
c2dfb7
-                mask &= CGROUP_MASK_CPU | CGROUP_MASK_MEMORY | CGROUP_MASK_IO | CGROUP_MASK_PIDS;
c2dfb7
+                mask &= CGROUP_MASK_CPU | CGROUP_MASK_MEMORY | CGROUP_MASK_IO | CGROUP_MASK_PIDS | CGROUP_MASK_CPUSET;
c2dfb7
 
c2dfb7
         } else {
c2dfb7
                 CGroupController c;
c2dfb7
@@ -2367,6 +2367,9 @@ int cg_mask_supported(CGroupMask *ret) {
c2dfb7
                 for (c = 0; c < _CGROUP_CONTROLLER_MAX; c++) {
c2dfb7
                         const char *n;
c2dfb7
 
c2dfb7
+                        if (c == CGROUP_CONTROLLER_CPUSET)
c2dfb7
+                                continue;
c2dfb7
+
c2dfb7
                         n = cgroup_controller_to_string(c);
c2dfb7
                         if (controller_is_accessible(n) >= 0)
c2dfb7
                                 mask |= CGROUP_CONTROLLER_TO_MASK(c);