Failed to set font on some Linux systems when boot up

Yifei Liu <[email protected]> Thu, 5 Jun 2025 23:26:06 +0000
Newsgroups dev.linux.lists.kbd
Message-ID <[email protected]>
Hi kbd maintainers,=20
We recently noticed that there are some error messages printing to the cons=
ole when system is booting up.=20

systemd-vconsole-setup[1545]: setfont: ERROR kdfontop.c:183 put_font_kdfont=
op: Unable to load such font with such kernel version=20
systemd-vconsole-setup[1523]: /usr/bin/setfont failed with a "system error"=
 (EX_OSERR), ignoring.=20
systemd-vconsole-setup[1523]: Setting source virtual console failed, ignori=
ng remaining ones.

There is also a similar discussion at: https://github.com/void-linux/void-p=
ackages/issues/45216=20

It is due to that dummy console does not support setfont operation. In the =
kernel, there is currently an option to let frame-buffer (fb) console to de=
fer take over the console for a smooth and successful boot at certain situa=
tions. The fb console will take over after there is actually a text sent to=
 the output, text with a high importance set in /proc/sys/kernel/printk. Be=
fore the takeover, it will be dummy console which does not implement setfon=
t function.=20

It looks systemctl will continue to try this until it succeed. Thus, there =
should be no functionality impact to the system but some error messages.=20

There is a kernel/grub param side solution for this. We can just disable th=
e defer take over of the fb console to avoid those messages. But meanwhile =
it will lose the advantage of defer takeover.  Would it be possible to get =
a fix for these messages at kbd side? Maybe block the error messages when i=
t is on dummy console or block for a few of seconds after the boot?

Thank you very much.=20
Yifei=