From: Christian Brauner Date: Mon, 6 Apr 2026 18:27:09 +0000 (+0200) Subject: shared: document allocateUnit limitation on D-Bus fallback path X-Git-Tag: v261-rc1~584 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6b3b9b1abda8d44a7d4cbef442a37cbd4be7415e;p=thirdparty%2Fsystemd.git shared: document allocateUnit limitation on D-Bus fallback path The D-Bus registration methods (RegisterMachineEx, RegisterMachineWithNetwork) do not support the allocateUnit feature that the varlink path provides. When varlink is unavailable and registration falls back to D-Bus, machined discovers the caller's existing cgroup unit instead of creating a dedicated scope. Callers that skip client-side scope allocation (relying on the server to do it via allocateUnit) will end up without a dedicated scope on the D-Bus fallback path. Document this limitation at the fallback site so callers are aware. Signed-off-by: Christian Brauner (Amutable) --- diff --git a/src/shared/machine-register.c b/src/shared/machine-register.c index d6e76db85c9..2f18fa8cf95 100644 --- a/src/shared/machine-register.c +++ b/src/shared/machine-register.c @@ -176,7 +176,11 @@ int register_machine( log_debug_errno(r, "Failed to connect to machined via varlink%s%s, falling back to D-Bus: %m", p ? " on " : "", strempty(p)); - /* In case we are running with an older machined, fall back to D-Bus. */ + /* In case we are running with an older machined, fall back to D-Bus. Note that the D-Bus + * methods do not support the allocateUnit feature — machined will look up the caller's + * existing cgroup unit instead of creating a dedicated scope. Callers that skip client-side + * scope allocation when allocate_unit is set should be aware that on the D-Bus path no scope + * will be created at all. */ if (!bus) return log_debug_errno(SYNTHETIC_ERRNO(ESRCH), "Varlink connection to machined not available and no bus provided.");