l...@gnu.org (Ludovic Courtès) skribis: > Danny Milosavljevic <dan...@scratchpost.org> skribis: > >>> PIO_UNIMAPCLR: Input/output error >>> 3) PIO_UNIMAPCLR: Input/output error >>> >>> Anything to worry about? >> >> According to >> https://elixir.bootlin.com/linux/v3.2/source/include/linux/kd.h#L70 >> that's trying to clear the Unicode -> font map (that is, charmap). >> >> In Linux, ./drivers/tty/vt/vt_ioctl.c implements it. >> >> Can't see how that ever ends up in -EIO O_o > > Sometimes we also get: > > putfont: KDFONTOP: Input/output error > > In both cases, the warning comes from the ‘setfont’ program, invoked > from ‘console-font-shepherd-services’. > > I’ve looked at the code and man pages and like you, I don’t see where > EIO comes from. Maybe it’s a generic ioctl error that’s return before > we reach the actual ioctl implementation in the VT driver, sorta like > EBADF?
I think I have a plausible explanation. :-) The EIO comes from ‘hung_up_tty_ioctl’ in drivers/tty/tty_io.c. This is because mingetty would call ‘vhangup’, and presumably, there was a time window where ‘setfont’ would find itself talking to a hung-up terminal. QED. Anyway, in commit a043b5b81a080c47e24298c80857919b9ea21bb2 I’ve added --nohangup to mingetty and now ‘setfont’ is happy, and so am I. Ludo’.