race condition in hw/input/pckbd.c causes wrong data to be read on interrupts