From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from atuin.qyliss.net (localhost [IPv6:::1]) by atuin.qyliss.net (Postfix) with ESMTP id 6749FBBB0; Fri, 31 Jul 2026 22:00:51 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 993) id E443FBA2B; Fri, 31 Jul 2026 22:00:38 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on atuin.qyliss.net X-Spam-Level: X-Spam-Status: No, score=-0.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DMARC_PASS,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=4.0.1 Received: from mail-yx1-xb12e.google.com (mail-yx1-xb12e.google.com [IPv6:2607:f8b0:4864:20::b12e]) by atuin.qyliss.net (Postfix) with ESMTPS id 956B7BA20 for ; Fri, 31 Jul 2026 22:00:37 +0000 (UTC) Received: by mail-yx1-xb12e.google.com with SMTP id 956f58d0204a3-664a09bc459so1775634d50.1 for ; Fri, 31 Jul 2026 15:00:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785535236; x=1786140036; darn=spectrum-os.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=2zFv6bcDRho4MiBLvF0jQXN1Xo2Xind8paGm4Y4KhXs=; b=IV7pAdB4Cw6LCcQrpxTw44NTX0zGtPk4tgAnoYhOv0ejcz4q8q3gpiNFhVWUDaY9jj PNAvaXkonpiagxT4K/Slsl1NQuojKMP2WkvbW1XpDY/LKxCskK8KT8D0kZl9zmF5lVl0 jfxlkdE5os1AyJLBoKV8RoKNW2tncR58A7PGNIm+GxOQ6sEE1f8LqIP6Djx6NyGh/Jf3 H3itJnZASjUxucW7/RJwSQ6Lke4hBIN8DcYhP1LsiU9ZjkQUApYDx3kmlOx6bexhFY+R uBUHXVhvZcgyUo8W1b/M2eqjwuxhsYi/zJaLYrBTK2aDGdqPx1Xsz3OVLG1Fqs9OEYnj SwYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785535236; x=1786140036; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=2zFv6bcDRho4MiBLvF0jQXN1Xo2Xind8paGm4Y4KhXs=; b=FEpfCHJSRaKN+fFBSnwppAk4bibW49xW77yCbFrW3H5LQs0zOfK6h4Dj6xUma9aLJQ no0bJiSbM6z+mzURiOBeIsTxuuRaH3jp7tIikJlrmWCctYdtdNcAs4uq1rCAYkz5UBAg apaDLgK/O0xzSxReyDHnRbGVU5AdDR8sNvLfpn2ZCwcitcB57YMA4kUt+lzHNg3m4DSd hDvs8BHK/e4ndAK2RFz3128H+Ili+54PuGpfK9s0Ey39JW68RblRwTxgyuq7qXVn4A/q ccUA/ze8PqtzkJXxj9bGnMMVfNBDoSUTitmuU0B1lqPy6jMYXT1sOdspdVDWlioBw/z2 e1LQ== X-Gm-Message-State: AOJu0Yzv3FYncrWWWbZEWAvGEe/FEixhjswoRtOIDm7Yw9zvmzU9Odrr lHYkyhXWe3L9gnrZ24IiZCdQdSyyl8bIj8m7l5/Ye6wC/IBvaJmR7YJRBbkvsw== X-Gm-Gg: AR+sD11xAwoFFDVO8vfI6izqRTDSzL4Qx4jfhib5R3UzKiAbjODP2LEj5IjC28UDFzX FsGuBkXNcm53gAEPkq8f87S1nqLDAQK5+YuAT3WQdUxRsiABhLJtF+JqSqT+oQwEZ1Ki/F0l7Dd lcGYXUB6KaFCFuDUQzpwxnv+B3tpS5OCBgseRNsUqDKjNt4PbGL/l21ONsM83aNDCxCbX1coVGZ SkuLdDzcy/IHpz2oK/bl/OSuyv+wkQs4Cr+k4TRDl6fJoX4yOTwPeUypP+XQnnYa9+YVqL94UZ2 3fMb7jlzTioCgPVvXyp+tcwJylFYEDn1sybI5eKJ9NPX7E1Rgjs+UBpPC3qq61e/epQkP97LyhI dIWKSm39PVf6dl+hV6tBQnygKESVigRsWkE0cyBu5ii4BRrUohq1jPaf35Ml0AC+ds+Rx8pX/mQ 9QNOB9+KDiSQYVUWHEeKkVZfN0V67HwH52edLXVhJdidNMcGBxAPd0vzh8c1Vy5BbzVdY/MoW4q ikF+Dke3LdC X-Received: by 2002:a53:b6c4:0:b0:667:cf87:5838 with SMTP id 956f58d0204a3-6694f1756b9mr1627239d50.25.1785535236023; Fri, 31 Jul 2026 15:00:36 -0700 (PDT) Received: from localhost.localdomain ([185.98.168.14]) by smtp.gmail.com with UTF8SMTPSA id 956f58d0204a3-66948fcb3acsm1326747d50.10.2026.07.31.15.00.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 31 Jul 2026 15:00:35 -0700 (PDT) From: Demi Marie Obenour Date: Fri, 31 Jul 2026 17:54:51 -0400 Subject: [PATCH v5 11/19] host/rootfs: Create per-VM cgroup for all of the VM's services MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260731-cgroups-v5-11-b325bac9d34f@gmail.com> References: <20260731-cgroups-v5-0-b325bac9d34f@gmail.com> In-Reply-To: <20260731-cgroups-v5-0-b325bac9d34f@gmail.com> To: Spectrum OS Development X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1785534880; l=2655; i=demiobenour@gmail.com; s=20250729; h=from:subject:message-id; bh=c9bKswlhs7C2ITFMXt3J110HzKdvHulCZ3bLMxsCLeA=; b=HjbjIu9YbvtII8AZfR/0WjI6tahMKRWvNPD2z7HNU8uOZf9zEXfzkde47T0epOfIGDp+BXilU i273JadhhzcB/EdKxxgONv8tJhU2mqMtBeSPnJa9qjIbabmu4TCLBte X-Developer-Key: i=demiobenour@gmail.com; a=ed25519; pk=X57Q4/YQDj9t4SBeKaDwvXYKB6quZJVx/DE2Ly2out0= Message-ID-Hash: ZJELKOECDTGVHCQJKTA5JFQNCXZF3VOS X-Message-ID-Hash: ZJELKOECDTGVHCQJKTA5JFQNCXZF3VOS X-MailFrom: demiobenour@gmail.com X-Mailman-Rule-Hits: member-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.spectrum-os.org-0; header-match-devel.spectrum-os.org-1; header-match-devel.spectrum-os.org-2; header-match-devel.spectrum-os.org-3; header-match-devel.spectrum-os.org-4; emergency CC: Demi Marie Obenour , Alyssa Ross X-Mailman-Version: 3.3.10 Precedence: list List-Id: Patches and low-level development discussion Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Signed-off-by: Demi Marie Obenour --- host/rootfs/file-list.mk | 1 + .../etc/s6-linux-init/run-image/service/vm-services/template/finish | 5 +++++ .../etc/s6-linux-init/run-image/service/vm-services/template/run | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/host/rootfs/file-list.mk b/host/rootfs/file-list.mk index 2b76b31dad7f73dd83c6a24f94f3ed946988bbea..36f508962c0515b2132aa9ab30cde929e2de100e 100644 --- a/host/rootfs/file-list.mk +++ b/host/rootfs/file-list.mk @@ -39,6 +39,7 @@ FILES = \ image/etc/s6-linux-init/run-image/service/vm-services/template/data/service/vhost-user-gpu/run \ image/etc/s6-linux-init/run-image/service/vm-services/template/data/service/xdg-desktop-portal-spectrum-host/notification-fd \ image/etc/s6-linux-init/run-image/service/vm-services/template/data/service/xdg-desktop-portal-spectrum-host/run \ + image/etc/s6-linux-init/run-image/service/vm-services/template/finish \ image/etc/s6-linux-init/run-image/service/vm-services/template/notification-fd \ image/etc/s6-linux-init/run-image/service/vm-services/template/run \ image/etc/s6-linux-init/run-image/service/vmm/notification-fd \ diff --git a/host/rootfs/image/etc/s6-linux-init/run-image/service/vm-services/template/finish b/host/rootfs/image/etc/s6-linux-init/run-image/service/vm-services/template/finish new file mode 100755 index 0000000000000000000000000000000000000000..2351ff7cfffaa8002ffda387a72be49033e715c7 --- /dev/null +++ b/host/rootfs/image/etc/s6-linux-init/run-image/service/vm-services/template/finish @@ -0,0 +1,5 @@ +#!/usr/bin/execlineb -WS3 +# SPDX-License-Identifier: EUPL-1.2+ +# SPDX-FileCopyrightText: 2026 Demi Marie Obenour + +cgroup-purge /vm-services.slice/vm-${3}.slice diff --git a/host/rootfs/image/etc/s6-linux-init/run-image/service/vm-services/template/run b/host/rootfs/image/etc/s6-linux-init/run-image/service/vm-services/template/run index bf90e99eef4106a9ad17dfba310b6edb3eaa64a3..d3a5f3490e447448929383a6b5d36dcef723712a 100755 --- a/host/rootfs/image/etc/s6-linux-init/run-image/service/vm-services/template/run +++ b/host/rootfs/image/etc/s6-linux-init/run-image/service/vm-services/template/run @@ -2,6 +2,10 @@ # SPDX-License-Identifier: EUPL-1.2+ # SPDX-FileCopyrightText: 2025 Alyssa Ross +# Move into the cgroup with all per-VM services +# Do not wait for the existing processes in the slice to finish. +cgroup-setup --no-wait -- /vm-services.slice/vm-${1}.slice + export VM $1 s6-svscan -d3 data/service -- 2.55.0