]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
s390/getty-generator: initialize essential system terminals/consoles
authorHendrik Brueckner <brueckner@redhat.com>
Fri, 31 Jan 2014 16:08:37 +0000 (17:08 +0100)
committerLukas Nykryn <lnykryn@redhat.com>
Fri, 31 Jan 2014 17:16:36 +0000 (18:16 +0100)
Ensure to start getty programs on all essential system consoles on Linux on
System z.  Add these essential devices to the list of virtualization_consoles
to always generate getty configurations.

For the sake of completion, the list of essential consoles is:

  /dev/sclp_line0 - Operating system messages applet (LPAR)
  /dev/ttysclp0 - Integrated ASCII console applet (z/VM and LPAR)
  /dev/ttyS0 - Already handled by systemd (3215 console on z/VM)
  /dev/hvc0  - Already handled by systemd (IUCV HVC terminal on z/VM)

Depending on the environment, z/VM or LPAR, only a subset of these terminals
are available.

See also RH BZ 860158[1] "Cannot login via Operating System Console into RHEL7
instance installed on a LPAR".  This bugzilla actually blocks the installation
of Linux on System z instances in LPAR mode.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=860158

rules/99-systemd.rules.in
src/getty-generator/getty-generator.c

index 0923de542efc3826367c1c4a798e92e53d1b5349..021359a84726347539aab59b0be8af1d952d239f 100644 (file)
@@ -7,7 +7,7 @@
 
 ACTION=="remove", GOTO="systemd_end"
 
-SUBSYSTEM=="tty", KERNEL=="tty[a-zA-Z]*|hvc*|xvc*|hvsi*", TAG+="systemd"
+SUBSYSTEM=="tty", KERNEL=="tty[a-zA-Z]*|hvc*|xvc*|hvsi*|ttysclp*|sclp_line*", TAG+="systemd"
 
 KERNEL=="vport*", TAG+="systemd"
 
index aeb6d71d740dede6757b61d6507bf1382a9e4e27..f352a29f99ede35eaefe26a9953efc1caf0411a5 100644 (file)
@@ -97,7 +97,9 @@ int main(int argc, char *argv[]) {
         static const char virtualization_consoles[] =
                 "hvc0\0"
                 "xvc0\0"
-                "hvsi0\0";
+                "hvsi0\0"
+                "sclp_line0\0"
+                "ttysclp0\0";
 
         _cleanup_free_ char *active = NULL;
         const char *j;