summaryrefslogtreecommitdiff
path: root/src/shutdown
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2019-07-12 10:41:06 +0200
committerLennart Poettering <lennart@poettering.net>2019-07-13 11:05:07 +0200
commit477851f5d628785265bc84975745ec4dc1e083a7 (patch)
treec3a4d5a17021ebd4087fe42588f509e349925afa /src/shutdown
parent6a47f2a7149ec86eb682cc178b3ea7fcf3151564 (diff)
downloadsystemd-477851f5d628785265bc84975745ec4dc1e083a7.tar.gz
shutdown: rework bump_sysctl_printk_log_level() to use sysctl_writef()
Diffstat (limited to 'src/shutdown')
-rw-r--r--src/shutdown/shutdown.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/shutdown/shutdown.c b/src/shutdown/shutdown.c
index 33f9de52a4..3c6aed1121 100644
--- a/src/shutdown/shutdown.c
+++ b/src/shutdown/shutdown.c
@@ -281,16 +281,17 @@ static int read_current_sysctl_printk_log_level(void) {
}
static void bump_sysctl_printk_log_level(int min_level) {
+ int current_lvl, r;
+
/* Set the logging level to be able to see messages with log level smaller or equal to min_level */
- int current_lvl = read_current_sysctl_printk_log_level();
- if (current_lvl >= 0 && current_lvl <= min_level) {
- char buf[DECIMAL_STR_MAX(int)];
- xsprintf(buf, "%d", min_level + 1);
- int r = sysctl_write("kernel/printk", buf);
- if (r < 0)
- log_debug_errno(r, "Failed to bump kernel.printk to %s: %m", buf);
- }
+ current_lvl = read_current_sysctl_printk_log_level();
+ if (current_lvl < 0 || current_lvl >= min_level + 1)
+ return;
+
+ r = sysctl_writef("kernel/printk", "%i", min_level + 1);
+ if (r < 0)
+ log_debug_errno(r, "Failed to bump kernel.printk to %i: %m", min_level + 1);
}
int main(int argc, char *argv[]) {