84b277
From 8659757c045dcdb6fcf628fa76025f1a2f533e8a Mon Sep 17 00:00:00 2001
84b277
From: Ray Strode <rstrode@redhat.com>
84b277
Date: Wed, 5 Nov 2014 08:30:52 -0500
84b277
Subject: [PATCH] login: rerun vconsole-setup when switching from vgacon to
84b277
 fbcon
84b277
84b277
The initialization performed by systemd-vconsole-setup is reset
84b277
when changing console drivers (say from vgacon to fbcon), so we
84b277
need to run it in that case.
84b277
84b277
See
84b277
http://lists.freedesktop.org/archives/systemd-devel/2014-October/023919.html
84b277
http://lists.freedesktop.org/archives/systemd-devel/2014-October/024423.html
84b277
http://lists.freedesktop.org/archives/systemd-devel/2014-November/024881.html
84b277
84b277
This commit adds a udev rule to make systemd-vconsole-setup get run when
84b277
the fbcon device becomes available.
84b277
84b277
(david: moved into new file 90-vconsole.rules instead of 71-seats.rules;
84b277
        build-failures are on me, not on Ray)
84b277
84b277
(cherry-picked from f6ba8671d83f9fce9a00045d8fa399a1c07ba7fc)
84b277
84b277
Related: #1002450
84b277
---
84b277
 Makefile.am                    |  3 +++
84b277
 src/vconsole/90-vconsole.rules | 11 +++++++++++
84b277
 2 files changed, 14 insertions(+)
84b277
 create mode 100644 src/vconsole/90-vconsole.rules
84b277
84b277
diff --git a/Makefile.am b/Makefile.am
84b277
index dab55ba..faf2a32 100644
84b277
--- a/Makefile.am
84b277
+++ b/Makefile.am
84b277
@@ -3258,6 +3258,9 @@ rootlibexec_PROGRAMS += \
84b277
 nodist_systemunit_DATA += \
84b277
 	units/systemd-vconsole-setup.service
84b277
 
84b277
+dist_udevrules_DATA += \
84b277
+	src/vconsole/90-vconsole.rules
84b277
+
84b277
 SYSINIT_TARGET_WANTS += \
84b277
 	systemd-vconsole-setup.service
84b277
 endif
84b277
diff --git a/src/vconsole/90-vconsole.rules b/src/vconsole/90-vconsole.rules
84b277
new file mode 100644
84b277
index 0000000..bf6a9ef
84b277
--- /dev/null
84b277
+++ b/src/vconsole/90-vconsole.rules
84b277
@@ -0,0 +1,11 @@
84b277
+#  This file is part of systemd.
84b277
+#
84b277
+#  systemd is free software; you can redistribute it and/or modify it
84b277
+#  under the terms of the GNU Lesser General Public License as published by
84b277
+#  the Free Software Foundation; either version 2.1 of the License, or
84b277
+#  (at your option) any later version.
84b277
+
84b277
+# Kernel resets vconsole state when changing console drivers so run
84b277
+# systemd-vconsole-setup when fbcon loads
84b277
+
84b277
+ACTION=="add", SUBSYSTEM=="graphics", KERNEL=="fbcon", RUN+="/usr/lib/systemd/systemd-vconsole-setup"