From 5c294f2b21a891958ef232f4528fa35bb6c96ac7 Mon Sep 17 00:00:00 2001 From: Olivier Brunel Date: Fri, 20 Sep 2013 22:18:28 +0200 Subject: [PATCH] Resolve /dev/console to the active tty instead of just "tty0" When resolving /dev/console one would often get "tty0" meaning the active VT. Resolving to the actual tty (e.g. "tty1") will notably help on boot when determining whether or not PID1 can output to the console. --- src/shared/util.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/shared/util.c b/src/shared/util.c index 1b35c54c7..e3d4a9457 100644 --- a/src/shared/util.c +++ b/src/shared/util.c @@ -3600,6 +3600,16 @@ char *resolve_dev_console(char **active) { else tty = *active; + if (streq(tty, "tty0")) { + char *tmp; + + /* Get the active VC (e.g. tty1) */ + if (read_one_line_file("/sys/class/tty/tty0/active", &tmp) >= 0) { + free(*active); + tty = *active = tmp; + } + } + return tty; }