From: Yu Watanabe Date: Fri, 30 Jan 2026 12:34:02 +0000 (+0900) Subject: machine: skip reading properties through DBus when not connected X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4481c9ff6513b5ef0e328d82e44caa0b5efe9bae;p=thirdparty%2Fsystemd.git machine: skip reading properties through DBus when not connected When machined is started earlier than DBus service, the execution is blocked by reading properties through DBus for a while. Let's return earlier if the DBus connection is not ready. Fixes issue reported in #40414. --- diff --git a/src/machine/machined-dbus.c b/src/machine/machined-dbus.c index 398cd0e1915..f2f6a300e3c 100644 --- a/src/machine/machined-dbus.c +++ b/src/machine/machined-dbus.c @@ -1642,6 +1642,12 @@ int manager_unit_is_active(Manager *manager, const char *unit, sd_bus_error *ret assert(manager); assert(unit); + r = sd_bus_is_ready(manager->api_bus); + if (r < 0) + return r; + if (r == 0) + return -ENOTCONN; + path = unit_dbus_path_from_name(unit); if (!path) return -ENOMEM; @@ -1682,6 +1688,12 @@ int manager_job_is_active(Manager *manager, const char *path, sd_bus_error *rete assert(manager); assert(path); + r = sd_bus_is_ready(manager->api_bus); + if (r < 0) + return r; + if (r == 0) + return -ENOTCONN; + r = sd_bus_get_property( manager->api_bus, "org.freedesktop.systemd1",