summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorMarius Tessmann <mus.svz@gmail.com>2014-08-29 17:51:45 +0200
committerLennart Poettering <lennart@poettering.net>2014-10-24 01:36:07 +0200
commita2726e5cedfa5edeabd7e0784be11bc578555ac5 (patch)
tree8332135f4ad2379d6cad308f975345b22d5ccffc /src/core
parenta07e9cfb790f3f5f492f2ff895a9de65e2b00a09 (diff)
shutdown: pass own argv to /run/initramfs/shutdown
Since commit b1e90ec515408aec2702522f6f68c4920b56375b systemd passes its log settings to systemd-shutdown via command line parameters. However, systemd-shutdown doesn't pass these parameters to /run/initramfs/shutdown, causing it to fall back to the default log settings. This fixes the following bugs about the shutdown not being quiet despite "quiet" being in the kernel parameters: https://bugs.freedesktop.org/show_bug.cgi?id=79582 https://bugs.freedesktop.org/show_bug.cgi?id=57216
Diffstat (limited to 'src/core')
-rw-r--r--src/core/shutdown.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/shutdown.c b/src/core/shutdown.c
index 1e88b05790..d361cbe631 100644
--- a/src/core/shutdown.c
+++ b/src/core/shutdown.c
@@ -313,7 +313,7 @@ int main(int argc, char *argv[]) {
access("/run/initramfs/shutdown", X_OK) == 0) {
r = switch_root_initramfs();
if (r >= 0) {
- arguments[0] = (char*) "/shutdown";
+ argv[0] = (char*) "/shutdown";
setsid();
make_console_stdio();
@@ -321,7 +321,7 @@ int main(int argc, char *argv[]) {
log_info("Successfully changed into root pivot.\n"
"Returning to initrd...");
- execv("/shutdown", arguments);
+ execv("/shutdown", argv);
log_error("Failed to execute shutdown binary: %m");
} else
log_error("Failed to switch root to \"/run/initramfs\": %s", strerror(-r));