From: Ray Strode Date: Wed, 5 Nov 2014 13:30:52 +0000 (-0500) Subject: login: rerun vconsole-setup when switching from vgacon to fbcon X-Git-Tag: v218~539 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=f6ba8671d83f9fce9a00045d8fa399a1c07ba7fc login: rerun vconsole-setup when switching from vgacon to fbcon The initialization performed by systemd-vconsole-setup is reset when changing console drivers (say from vgacon to fbcon), so we need to run it in that case. See http://lists.freedesktop.org/archives/systemd-devel/2014-October/023919.html http://lists.freedesktop.org/archives/systemd-devel/2014-October/024423.html http://lists.freedesktop.org/archives/systemd-devel/2014-November/024881.html This commit adds a udev rule to make systemd-vconsole-setup get run when the fbcon device becomes available. (david: moved into new file 90-vconsole.rules instead of 71-seats.rules; build-failures are on me, not on Ray) --- diff --git a/Makefile.am b/Makefile.am index 3686103b5..f614b86c0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -4439,6 +4439,9 @@ rootlibexec_PROGRAMS += \ nodist_systemunit_DATA += \ units/systemd-vconsole-setup.service +dist_udevrules_DATA += \ + src/vconsole/90-vconsole.rules + SYSINIT_TARGET_WANTS += \ systemd-vconsole-setup.service endif diff --git a/src/vconsole/90-vconsole.rules b/src/vconsole/90-vconsole.rules new file mode 100644 index 000000000..bf6a9efaa --- /dev/null +++ b/src/vconsole/90-vconsole.rules @@ -0,0 +1,11 @@ +# This file is part of systemd. +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +# Kernel resets vconsole state when changing console drivers so run +# systemd-vconsole-setup when fbcon loads + +ACTION=="add", SUBSYSTEM=="graphics", KERNEL=="fbcon", RUN+="/usr/lib/systemd/systemd-vconsole-setup"