Commit 96baeca0 authored by Linus Torvalds's avatar Linus Torvalds

Fix keyboard double E0-sequence release case

From Andries Brouwer <aebr@win.tue.nl>: we discard the double
release keypress, but we did it without clearing the "last byte
was E0" flag. So the next byte in the input stream would get
corrupted.
parent 51e9e974
...@@ -410,6 +410,7 @@ static irqreturn_t i8042_interrupt(int irq, void *dev_id, struct pt_regs *regs) ...@@ -410,6 +410,7 @@ static irqreturn_t i8042_interrupt(int irq, void *dev_id, struct pt_regs *regs)
/* work around hardware that doubles key releases */ /* work around hardware that doubles key releases */
if (index == i8042_last_release) { if (index == i8042_last_release) {
dbg("i8042 skipped double release (%d)\n", index); dbg("i8042 skipped double release (%d)\n", index);
i8042_last_e0 = 0;
continue; continue;
} }
if (index == 0xaa || index == 0xb6) if (index == 0xaa || index == 0xb6)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment