If gen/fbsplash are set to silent mode, when the system attempts to set the consolefont it gives the error "putfont: PIO_FONT: Invalid Argument" and the font is switched to the selected consolefont only after the silent part is done and the console drops back into verbose mode. When booting into verbose mode, the console font is set when the script starts, and is error free. Reproducible: Always Steps to Reproduce: 1. Add splash=silent to kernel boot line 2. 3. Actual Results: Console font is only set after the console drops into verbose mode and a putfont error is shown. Expected Results: Console font should set during the silent splash and no errors should appear.
Unfortunately, this problem can't be fixed in any clean way. When you're booting into silent mode, the console is switched into KD_GRAPHICS mode, in which setting the font will fail (that's why you're seeing the error message). The splash scripts has been written so that consolefont is started anyway at the end of the boot process (you don't see it, but it's there), so that you get the fonts setup correctly.
In that case, probably it would be better to modify consolefont start script to skip setting the font if running in silent mode?
From comment 1: "The splash scripts has been written so that consolefont is started anyway at the end of the boot process (you don't see it, but it's there), so that you get the fonts setup correctly." Actually, this doesn't always work for me. The font is always set properly on every console except the first one. The first one sometimes doesn't work, however reproducing it is kind of difficult. It never happens with the emergence theme, but it will happen with the gentoo theme and also with another theme I converted from bootsplash. It seems to happen especially if I quit from silent mode directly to verbose mode using F2.
James: Sounds like an unrelated bug, perhaps you should file a seperate bug report? Michael: Nothing can be done? If you can't check in the consolefont script that KD_GRAPHICS is enabled, Is there any way of hiding this error message?