From: Lennart Poettering Date: Mon, 13 Nov 2017 21:02:51 +0000 (+0100) Subject: core: only warn about BPF/cgroup missing once per runtime (#7319) X-Git-Tag: v236~223 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ab8519c28b8904eb7e4f06d6b86614c7e6157f1a;p=thirdparty%2Fsystemd.git core: only warn about BPF/cgroup missing once per runtime (#7319) Let's reduce the amount of noise a bit, there's little point in complaining loudly about every single unit like this, let's complain only about the first one, and then downgrade the log level to LOG_DEBUG for the other cases. Fixes: #7188 --- diff --git a/src/core/dbus-cgroup.c b/src/core/dbus-cgroup.c index bef70b6f84e..dd8aa183636 100644 --- a/src/core/dbus-cgroup.c +++ b/src/core/dbus-cgroup.c @@ -1409,9 +1409,15 @@ int bus_cgroup_set_property( r = bpf_firewall_supported(); if (r < 0) return r; - if (r == 0) - log_warning("Transient unit %s configures an IP firewall, but the local system does not support BPF/cgroup firewalling.\n" - "Proceeding WITHOUT firewalling in effect!", u->id); + if (r == 0) { + static bool warned = false; + + log_full(warned ? LOG_DEBUG : LOG_WARNING, + "Transient unit %s configures an IP firewall, but the local system does not support BPF/cgroup firewalling.\n" + "Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first started transient unit using IP firewalling.)", u->id); + + warned = true; + } } } diff --git a/src/core/ip-address-access.c b/src/core/ip-address-access.c index 3012de4bc7c..a17620567d1 100644 --- a/src/core/ip-address-access.c +++ b/src/core/ip-address-access.c @@ -155,9 +155,15 @@ int config_parse_ip_address_access( r = bpf_firewall_supported(); if (r < 0) return r; - if (r == 0) - log_warning("File %s:%u configures an IP firewall (%s=%s), but the local system does not support BPF/cgroup based firewalling.\n" - "Proceeding WITHOUT firewalling in effect!", filename, line, lvalue, rvalue); + if (r == 0) { + static bool warned = false; + + log_full(warned ? LOG_DEBUG : LOG_WARNING, + "File %s:%u configures an IP firewall (%s=%s), but the local system does not support BPF/cgroup based firewalling.\n" + "Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.)", filename, line, lvalue, rvalue); + + warned = true; + } } return 0;