Comment 12 for bug 87262

This is probably a duplicate of:
https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/91330
https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/108221
https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/108382

...and it's clearly affecting all other distros too, so this might not be the right place, but here goes.

See line 630 of /usr/src/linux-source-2.6.20/drivers/input/serio/i8042.c:
---------------------------------------------------------------------------------------------
 if (wait_for_completion_timeout(&i8042_aux_irq_delivered,
     msecs_to_jiffies(250)) == 0) {
/*
 * AUX IRQ was never delivered so we need to flush the controller to
 * get rid of the byte we put there; otherwise keyboard may not work.
 */
  i8042_flush();
  retval = -1;
 }
---------------------------------------------------------------------------------------------
Commenting out the i8042_flush(); and retval = -1; lines 'fixes' the problem.

before:
$ dmesg | grep "i8042 AUX" || echo nothing
nothing

after:
$ dmesg | grep "i8042 AUX" || echo nothing
[ 69.766263] serio: i8042 AUX port at 0x60,0x64 irq 12

BTW I increased the timeout from 250ms to 20 seconds, and it didn't make a difference, so that's not it. It's just not responding at all.

This bug is marked as being of 'Undecided' importance and 'Needs Info', perhaps due to its "eau de M$", but the aforementioned probable dupes are marked as 'High' importance and 'Confirmed' status. I hope this 'Info' can expedite the help for all those other people suddenly without a mouse on their primary, non-virtual, machines.