From: Vito Caputo Date: Thu, 5 Nov 2015 01:32:16 +0000 (-0800) Subject: core: still make progress when throttling the manager loop X-Git-Tag: v228~68^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F1783%2Fhead;p=thirdparty%2Fsystemd.git 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. --- diff --git a/src/core/manager.c b/src/core/manager.c index b13663e702f..7c3a020c4af 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)