]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
log: add helper set sets log level in all realms
authorLennart Poettering <lennart@poettering.net>
Wed, 9 Dec 2020 10:12:33 +0000 (11:12 +0100)
committerLennart Poettering <lennart@poettering.net>
Wed, 9 Dec 2020 17:26:17 +0000 (18:26 +0100)
Prompted-by: #17903
src/basic/log.h
src/udev/udevd.c

index a2aae16df29ef8a495da6b22fb0d9ecef1c81cff..6c5e42a0e43e214d3a54d2d768ac5e106945283f 100644 (file)
@@ -44,10 +44,17 @@ typedef enum LogTarget{
 #define ERRNO_VALUE(val)                    (abs(val) & 255)
 
 void log_set_target(LogTarget target);
+
 void log_set_max_level_realm(LogRealm realm, int level);
+
 #define log_set_max_level(level)                \
         log_set_max_level_realm(LOG_REALM, (level))
 
+static inline void log_set_max_level_all_realms(int level) {
+        for (LogRealm realm = 0; realm < _LOG_REALM_MAX; realm++)
+                log_set_max_level_realm(realm, level);
+}
+
 void log_set_facility(int facility);
 
 int log_set_target_from_string(const char *e);
index d24b8d43985babfdf9683723cea846e8be509518..19e4951a6e4f6011b0363d40e451e48dd2e03511 100644 (file)
@@ -1089,8 +1089,7 @@ static int on_ctrl_msg(struct udev_ctrl *uctrl, enum udev_ctrl_msg_type type, co
         switch (type) {
         case UDEV_CTRL_SET_LOG_LEVEL:
                 log_debug("Received udev control message (SET_LOG_LEVEL), setting log_level=%i", value->intval);
-                log_set_max_level_realm(LOG_REALM_UDEV, value->intval);
-                log_set_max_level_realm(LOG_REALM_SYSTEMD, value->intval);
+                log_set_max_level_all_realms(value->intval);
                 manager_kill_workers(manager);
                 break;
         case UDEV_CTRL_STOP_EXEC_QUEUE: