systemctl: skip triggering unit warning if unit vanished
authorMike Yuan <me@yhndnzj.com>
Thu, 29 Feb 2024 15:45:54 +0000 (23:45 +0800)
committerLuca Boccassi <luca.boccassi@gmail.com>
Fri, 19 Jul 2024 22:33:14 +0000 (00:33 +0200)
(cherry picked from commit 701bd9d08ac1d16f74e2b453ca0826e85b1c8491)

src/systemctl/systemctl-util.c

index 2482b7ccb2460b93164d1b55c87de5a56ca7ccdb..0854d3e0aa2d429adaab5a8a5336a4dd63322f5e 100644 (file)
@@ -383,8 +383,8 @@ void warn_triggering_units(sd_bus *bus, const char *unit, const char *operation,
 
         r = get_active_triggering_units(bus, unit, ignore_masked, &triggered_by);
         if (r < 0) {
-                log_warning_errno(r,
-                                  "Failed to get triggering units for '%s', ignoring: %m", unit);
+                if (r != -ENOENT) /* A linked unit might have disappeared after disabling */
+                        log_warning_errno(r, "Failed to get triggering units for '%s', ignoring: %m", unit);
                 return;
         }