diff options
author | Vito Caputo <vito.caputo@coreos.com> | 2015-11-04 17:32:16 -0800 |
---|---|---|
committer | Vito Caputo <vito.caputo@coreos.com> | 2015-11-04 17:32:16 -0800 |
commit | ad231c7787f6f74c10b81faf7a6896f2c214a3ee (patch) | |
tree | cdf5ebf34466bc411f542993ce32f432779f7aa0 | |
parent | a6bff4a7428b9539d85618e3c91fcb60be93f3fa (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.c | 1 |
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) |