From: Daniel Molkentin Date: Wed, 5 Sep 2018 10:06:06 +0000 (+0200) Subject: 98dracut-systemd: Start systemd-vconsole-setup before dracut-cmdline-ask X-Git-Tag: 049~20 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e9a84e0a215fb5a79e563f665bc406c0ea177d32;p=thirdparty%2Fdracut.git 98dracut-systemd: Start systemd-vconsole-setup before dracut-cmdline-ask This is what happened before this patch (edited for brevity): dracut-cmdline-ask.service in modules.d/98dracut-systemd, which invokes dracut-cmdline-ask.sh. This script and systemd-vconsole-setup are started in parallel for the same console (tty1). Then dracut-cmdline-ask quits immediately without doing anything (unless rd.cmdline=ask is given). As this is a bash script and it gets tty as stdin as specified in its *.service, this triggers the hangup of tty1 at its exit. Meanwhile systemd-vconsole-setup continues and tries some ioctls after that, but they fail because of the hung up tty1. The usual culprit for starting systemd-vconsole-setup early on is plymouth-start.service, even if plymouth.enable=0 is set. A popular (and annoying) symptom of this as reported by users was the inability use their configured keyboard layout in plymouth when unlocking their crypted block devices. Reference: boo#1055834 --- diff --git a/modules.d/98dracut-systemd/dracut-cmdline-ask.service b/modules.d/98dracut-systemd/dracut-cmdline-ask.service index ce7deda59..b96c2aaf0 100644 --- a/modules.d/98dracut-systemd/dracut-cmdline-ask.service +++ b/modules.d/98dracut-systemd/dracut-cmdline-ask.service @@ -7,6 +7,8 @@ Description=dracut ask for additional cmdline parameters DefaultDependencies=no Before=dracut-cmdline.service After=systemd-journald.socket +After=systemd-vconsole-setup.service +Requires=systemd-vconsole-setup.service Wants=systemd-journald.socket ConditionPathExists=/usr/lib/initrd-release ConditionKernelCommandLine=|rd.cmdline=ask