Bug 983758

Summary: systemd-vconsole-setup fails to set keymap and font during boot-up
Product: [Fedora] Fedora Reporter: Mark Harig <tpeplt>
Component: systemdAssignee: systemd-maint
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 19CC: johannbg, lnykryn, msekleta, notting, plautrba, pomidorabelisima, systemd-maint, thomas, tpeplt, vpavlin, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-09-29 18:17:01 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Mark Harig 2013-07-11 22:02:34 UTC
Description of problem:

During the boot-up process, the systemd-vconsole-setup module is supposed to read the file /etc/vconsole.conf and apply the settings in that file.  It is failing to apply the settings, although it does attempt to apply them.

Version-Release number of selected component (if applicable):

$ rpm -q kernel systemd
kernel-3.9.9-301.fc19.x86_64
systemd-204-9.fc19.x86_64

How reproducible:

Consistently with every start-up of Fedora.

Steps to Reproduce:

1. Create a /etc/vconsole.conf with non-default settings for KEYMAP and FONT.
2. Restart Fedora so that the settings can be read by systemd-vconsole-setup.service, using either at run-level 3 or 5.

Actual results:

Neither the keymap nor the font have been set by systemd-vconsole-setup.service.

$ sudo systemctl status systemd-vconsole-setup.service
...
systemd[1]: Starting Setup Virtual Console...
localhost.localdomain systemd-vconsole-setup[120]: cannot open file [key-map file]
localhost.localdomain systemd-vconsole-setup[120]: /usr/bin/loadkeys failed with error code 1.
localhost.localdomain systemd-vconsole-setup[120]: Cannot open font file [font name]
localhost.localdomain systemd-vconsole-setup[120]: /usr/bin/setfont failed with error code 66.
localhost.localdomain systemd[1]: Started Setup Virtual Console.

Expected results:

The new keymap should be in effect and the new font should be used/displayed.

Additional info:

1. Restarting the service fixes the problem, that is, the service does not display the error messages and installs the new keymap and font:

   $ sudo systemctl status systemd-vconsole-setup.service

2. Changing the kernel command-line options 'vconsole.keymap' and 'vconsole.font' does not fix the problem, either.  The default keymap and font are in effect when the system has completed start-up.

Comment 1 Mark Harig 2013-08-05 08:59:19 UTC
A solution to the problem is to add GRUB_GFXPAYLOAD_LINUX to /etc/default/grub and regenerate /boot/grub2/grub.cfg:

  $ sudo grub2-mkconfig -o /boot/grub2/grub.cfg

GRUB_GFXPAYLOAD_LINUX is set to a quoted-string of comma-separated list of graphic resolutions supported by the graphics hardware.  One possible source for these resolutions is in /var/log/Xorg.0.log, following the line:

"Supported established timings:"

Example to add to /etc/default/grub:

GRUB_GFXPAYLOAD_LINUX="1280x1024,1024x768,800x600"

Once a new /boot/grub2/grub.cfg is generated, rebooting sets the resolution and systemd-vconsole-setup.service is able to change the font without errors.

Comment 3 Lennart Poettering 2013-09-29 18:06:55 UTC
Hmm, and if you run "/usr/lib/systemd/systemd-vconsole-setup" manually from the shell, do things work then?

Comment 4 Lennart Poettering 2013-09-29 18:17:01 UTC

*** This bug has been marked as a duplicate of bug 1001411 ***