summary refs log tree commit diff
path: root/gnu/system/file-systems.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/system/file-systems.scm')
-rw-r--r--gnu/system/file-systems.scm27
1 files changed, 23 insertions, 4 deletions
diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm
index db861baed2..05c77fe3e8 100644
--- a/gnu/system/file-systems.scm
+++ b/gnu/system/file-systems.scm
@@ -39,6 +39,7 @@
             %pseudo-terminal-file-system
             %devtmpfs-file-system
             %immutable-store
+            %control-groups
 
             %base-file-systems
 
@@ -152,13 +153,31 @@ file system."
     (check? #f)
     (flags '(read-only bind-mount))))
 
+(define %control-groups
+  (cons (file-system
+          (device "cgroup")
+          (mount-point "/sys/fs/cgroup")
+          (type "tmpfs")
+          (check? #f))
+        (map (lambda (subsystem)
+               (file-system
+                 (device "cgroup")
+                 (mount-point (string-append "/sys/fs/cgroup/" subsystem))
+                 (type "cgroup")
+                 (check? #f)
+                 (options subsystem)
+                 (create-mount-point? #t)))
+             '("cpuset" "cpu" "cpuacct" "memory" "devices" "freezer"
+               "blkio" "perf_event" "hugetlb"))))
+
 (define %base-file-systems
   ;; List of basic file systems to be mounted.  Note that /proc and /sys are
   ;; currently mounted by the initrd.
-  (list %devtmpfs-file-system
-        %pseudo-terminal-file-system
-        %shared-memory-file-system
-        %immutable-store))
+  (append (list %devtmpfs-file-system
+                %pseudo-terminal-file-system
+                %shared-memory-file-system
+                %immutable-store)
+          %control-groups))