Hi, > On Thu, Apr 24, 2014 at 08:06:19PM +0800, arei.gong...@huawei.com wrote: > > From: Gonglei <arei.gong...@huawei.com> > > > > According to the PS/2 Mouse/Keyboard Protocol, the keyboard outupt buffer > size > > is 16 bytes. And the PS2_QUEUE_SIZE 256 was introduced in Qemu from the > very > > beginning. > > > > When I started a redhat5.6 32bit guest, meanwhile tapped the keyboard as > quickly as > > possible, the screen would show me "i8042.c: No controller found". As a > result, > > I couldn't use the keyboard in the VNC client. > > > > Previous discussion about the issue in maillist: > > http://thread.gmane.org/gmane.comp.emulators.qemu/43294/focus=47180 > > > > This patch has been tested on redhat5.6 32-bit/suse11sp3 64-bit guests. > > More easy meathod to reproduce: > > 1.boot a guest with libvirt. > > 2.connect to VNC client. > > 3.as you see the BIOS, bootloader, Linux booting, run the follow simply > > shell > script: > > for((i=0;i<10000000;i++)) do virsh send-key redhat5.6 KEY_A; done > > Why we can't break keyboard by flooding input after boot up? > Actually, I have pointed the root reason about this issue in other email.
When the linux kernel booting, will init the i8042 controller (drivers/input/serio/i8042.c), and check the i8042 controller: i8042_init() |-> i8042_controller_check() If the kernel has booted up, the check will not happen, so the Linux kernel will not get confused. Best regards, -Gonglei