fbcon font is reset after GPU is loaded

novenary streetwalkermc at gmail.com
Tue Jan 24 17:23:40 UTC 2023


Hi,

This appears to be a pretty common problem. systemd includes a udev
rule[1] which loads a console font from userspace, using setfont from
the kbd package, when a vtcon device is added. According to udev debug
logs, this event only fires once.

This actually works fine all the way until the GPU driver is loaded,
after which the console is reverted to the default kernel font. My
understanding from skimming the code in fbcon.c is that fonts should
be persisted from one instance to the next.

I can reproduce this on both of my machines, one with an AMD Polaris
GPU, and one with Intel integrated graphics (Kaby Lake R).

As discussed in [2], it seems the only reliable way to change the
console font at the moment is to ensure that the graphics driver is
loaded before udev starts, but I don't believe this is an acceptable
or even correct solution.

Am I missing something? It would be really helpful if someone could
shed light on why this is happening.

[1] https://github.com/systemd/systemd/blob/main/rules.d/90-vconsole.rules.in
[2] https://github.com/NixOS/nixpkgs/issues/202846

Thanks in advance,
novenary


More information about the dri-devel mailing list