Comment 1 for bug 264196

Revision history for this message
In , Tarmo-itech (tarmo-itech) wrote :

When holding a key down keyboard repeat starts with softrepeat delay/rate settings and is interrupted temporarily when the kernel autorepeat delay/rate would have caused a character to be repeated if the kernel autorepeat would be used.

It's easiest to demonstrate the problem when setting "xset r rate 175 100; kbdrate -r 2 -d 1000" (incidentally also the settings that least disturb softrepeat). So when holding a key down the 175ms delay and 100/sec repeat rate works perfectly for 1000ms (exactly when the kernel repeat delay kicks in), then there's a shot interruption and the 100/sec rate is again continued and again interrupted, but this time after about 500ms (basically at 2/sec, which is the kernel repeate rate).

With default kbdrate settings (those set by xset itself, delay 250ms and 10.9 cps), the problem is even more annoying because the fast softrepeat rate only lasts for 250ms and then slows down to a very slow rate probably dictated by the 10.9 cps. So basically after the kernel repeat delay only the really slow kernel repeat rate applies as softrepeat seems to get no chance of doing anything between the short interruptions caused by the kernel autorepeat.

This is all with xorg-server 1.5.0, kernel 2.6.25, evdev 2.0.4.

I don't remember this problem to have existed with the kbd driver and unfortunately I'm no longer able to get the kbd driver to work (I think it gets confused by the event device which hal is providing and I'm not sure what to do about it).

Thank you,