~ruther/guix-local

24a12aeb91082fc6d01de1c64a3a3bac15a02f3a — Giacomo Leidi 1 year, 6 months ago b7746ad
services: rootless-podman: Enable I/O delegation.

Based on
https://rootlesscontaine.rs/getting-started/common/cgroup2/#enabling-cpu-cpuset-and-io-delegation
, this patch enables I/O delegation for cgroups v2 enabled users.

* gnu/services/containers.scm (cgroups-limits-entrypoint): Enable I/O
controller delegation.
* gnu/tests/containers.scm: Test it.

Change-Id: I7caba33695f11830bea477c4ab3afb89cfaa2fa5
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2 files changed, 2 insertions(+), 2 deletions(-)

M gnu/services/containers.scm
M gnu/tests/containers.scm
M gnu/services/containers.scm => gnu/services/containers.scm +1 -1
@@ 174,7 174,7 @@ available for each configured user."))
                #~(system*
                   (string-append #+bash-minimal "/bin/bash") "-c"
                   (string-append "echo Setting cgroups v2 limits && "
                                  "echo +cpu +cpuset +memory +pids"
                                  "echo +cpu +cpuset +io +memory +pids"
                                  " >> /sys/fs/cgroup/cgroup.subtree_control"))))

(define (rootless-podman-cgroups-limits-service config)

M gnu/tests/containers.scm => gnu/tests/containers.scm +1 -1
@@ 158,7 158,7 @@
                          (loop (+ 1 attempts))))))))

          (test-equal "/sys/fs/cgroup/cgroup.subtree_control content is sound"
            (list "cpu" "cpuset" "memory" "pids")
            (list "cpu" "cpuset" "io" "memory" "pids")
            (marionette-eval
             `(begin
                (use-modules (srfi srfi-1)