Comment 125 for bug 39315

Revision history for this message
David Gauchard (d-a-v) wrote :

Hello,

I have the same symptoms.
None of the options described above solve my problem.
In the meantime, I'm using a bad workaround (enabling repeat on some keys only using xset, see at the end of the post).

Let me describe my problem :
I'm running debian-stable (etch) withe the latest kernel (2.6.18.5)
Cpu: pentium 4 (single core, no hyper-threading).
Box : Dell Optiplex GX260
Symptoms :
The keyboard behaviour is usually correct, but when I press a key with involves some cpu calculation (more than displaying the key), then the systems behaves like if the key was not released. It is seen released "later". Typically the key is ctrl-T on firefox (I get tons of new tabs), / (slash) on firefox (when searching in a big page), ctrl-+ (this is horrible, I get a one huge letter after a while on my firefox window with this), enter in dselect (debian package management) on the search line (pressing / in the package list), ...
This does not happen in text-mode-virtual-console (with dselect).

This happens ONLY with 2.6 (any version from 2.6.15 up to 2.6.18), I have NO problem with 2.4.

What I tried :
Lots of combinations of acpi=off noacpi nosmp no apic nolapic notsc irqpoll noapictimer... (as described on a link above)
What I did not try :
Recompile a kernel with no smp and/or other PREEMPT config (the one shipped with Debian has SMP and CONFIG_PREEMPT_NONE=y)

For now I'm using this script where the list of number are keycodes which match the keys for which I want to enable repeat (backspace, del, arrows for now).
#!/bin/sh
xset r on
for i in `xmodmap -pke|awk '{print $2;}'`;do
        xset r $i
done
for i in `xmodmap -pke|awk '{print $2;}' | egrep -v "98|102|104|100|22|107"`; do
        xset -r $i
done

It is my office's PC so I have no much time to try everything.
I can live with this for now, but I'd prefer find a good solution. Maybe one of you have found something different to try so far. I'll let you know if I have time to recompile and try a new kernel.

david