summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVito Caputo <vito.caputo@coreos.com>2015-11-04 17:32:16 -0800
committerVito Caputo <vito.caputo@coreos.com>2015-11-04 17:32:16 -0800
commitad231c7787f6f74c10b81faf7a6896f2c214a3ee (patch)
treecdf5ebf34466bc411f542993ce32f432779f7aa0
parenta6bff4a7428b9539d85618e3c91fcb60be93f3fa (diff)
core: still make progress when throttling the manager loop
Don't simply continue after sleeping, it potentially puts us in a state of spinning doing nothing slowly, if the ratelimit_test() keeps detecting the need for limiting. Observed in vms after the host had been suspended for a while, on resume systemd entered a loop of making zero progress spamming the console with: [431942.850090] systemd[1]: Looping too fast. Throttling execution a little. I see no reason to have a continue here, the intention should be to throttle execution, not circumvent it altogether.
-rw-r--r--src/core/manager.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/core/manager.c b/src/core/manager.c
index b13663e702..7c3a020c4a 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -2024,7 +2024,6 @@ int manager_loop(Manager *m) {
/* Yay, something is going seriously wrong, pause a little */
log_warning("Looping too fast. Throttling execution a little.");
sleep(1);
- continue;
}
if (manager_dispatch_load_queue(m) > 0)