On 8/7/21 2:10 PM, Volker Rümelin wrote: > Since commit ff6e1624b3 (pckbd: don't update OBF flags if > KBD_STAT_OBF is set) the OSes Minoca OS and Visopsys no longer > have a working PS/2 keyboard and mouse. This is caused by a > PS/2 queue stall due to a lost interrupt in the guest OS. This > already happened before commit ff6e1624b3, but no one noticed > because up to that point QEMU sent gratuitous keyboard and mouse > interrupts and the queue restarted with keyboard input or mouse > movement. > > The lost interrupt is a guest bug. The fact that it's always > lost is due to an inexact PS/2 keyboard emulation. The way in > which the two operating systems e.g. set the keyboard LEDs, > leaves a keyboard ACK reply in the keyboard queue that is > unexpected for the guests. > > This patch series improves the PS/2 keyboard emulation. > > There's a workaround for issue #501 and #502 so I don't think > this is rc3 material. But that decision is up to the maintainers. Meanwhile, what about reverting ff6e1624b3 for 6.1? > To verify patch 2/3 I plugged in an additional PS/2 keyboard > into the host and started Linux with the command line option > initcall_blacklist=i8042_init. Here is an example of the sequence > to set the keyboard LEDs. > > # #regular sequence to set the keyboard LEDs > # inb --hex 0x64 > 1c > # #PS/2 queue is empty > # outb 0x60 0xed > # inb --hex 0x64 > 15 > # inb --hex 0x60 > fa > # inb --hex 0x64 > 14 > # outb 0x60 0x01 > # inb --hex 0x64 > 15 > # inb --hex 0x60 > fa > # inb --hex 0x64 > 14 > > # #alternative sequence to set the keyboard LEDs > # inb --hex 0x64 > 14 > # outb 0x60 0xed > # outb 0x60 0x01 > # inb --hex 0x64 > 15 > # inb --hex 0x60 > fa > # inb --hex 0x64 > 14 > > Volker Rümelin (3): > ps2: use the whole ps2 buffer but keep queue size > ps2: use a separate keyboard command reply queue > ps2: migration support for command reply queue > > hw/input/ps2.c | 214 ++++++++++++++++++++++++++++++------------------- > 1 file changed, 133 insertions(+), 81 deletions(-) >
Hi, > > This patch series improves the PS/2 keyboard emulation. > > > > There's a workaround for issue #501 and #502 so I don't think > > this is rc3 material. But that decision is up to the maintainers. Phew. I'm a little nervous on adding it that late, so yes, I'd tend to consider it 6.2 material too. > Meanwhile, what about reverting ff6e1624b3 for 6.1? Not going to fly due to patch dependencies, we would have to revert all the ps2 fixes, which IMHO is likewise a bad idea for -rc3 ... take care, Gerd
© 2016 - 2024 Red Hat, Inc.