43 lines
1.9 KiB
Diff
43 lines
1.9 KiB
Diff
From 19e40fd51b249a05aae478c733aec343cfc39d54 Mon Sep 17 00:00:00 2001
|
|
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
|
Date: Sat, 11 Jan 2025 06:07:55 +0900
|
|
Subject: [PATCH] udev-rules: do not change maximum log level when running in
|
|
test mode
|
|
|
|
When udev rules are being tested, log level specified by SYSTEMD_LOG_LEVEL=
|
|
environment variable should be honored, and should not be overridden by
|
|
the rules.
|
|
|
|
(cherry picked from commit 0363a45898b304b6040cd20e132a3dd946faae50)
|
|
|
|
Resolves: RHEL-75774
|
|
---
|
|
src/udev/udev-rules.c | 11 +++++++++--
|
|
1 file changed, 9 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
|
|
index 8d00702595..60e1976c5a 100644
|
|
--- a/src/udev/udev-rules.c
|
|
+++ b/src/udev/udev-rules.c
|
|
@@ -2394,11 +2394,18 @@ static int udev_rule_apply_token_to_event(
|
|
if (level < 0)
|
|
level = event->default_log_level;
|
|
|
|
- log_set_max_level(level);
|
|
+ if (event->event_mode == EVENT_UDEV_WORKER)
|
|
+ log_set_max_level(level);
|
|
+ else {
|
|
+ _cleanup_free_ char *level_str = NULL;
|
|
+ (void) log_level_to_string_alloc(level, &level_str);
|
|
+ log_event_debug(dev, token, "Running in test mode, skipping changing maximum log level to %s.", strna(level_str));
|
|
+ }
|
|
|
|
if (level == LOG_DEBUG && !event->log_level_was_debug) {
|
|
/* The log level becomes LOG_DEBUG at first time. Let's log basic information. */
|
|
- log_device_uevent(dev, "The log level is changed to 'debug' while processing device");
|
|
+ if (event->event_mode == EVENT_UDEV_WORKER)
|
|
+ log_device_uevent(dev, "The log level is changed to 'debug' while processing device");
|
|
event->log_level_was_debug = true;
|
|
}
|
|
|