Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 72856 - xorg keyboard repeat rate battle between xset and kbdrate
Summary: xorg keyboard repeat rate battle between xset and kbdrate
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High minor
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-29 14:16 UTC by David Lloyd
Modified: 2004-12-14 12:00 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Lloyd 2004-11-29 14:16:05 UTC
This is a pretty odd problem, but I've had it on two different gentoo systems now so I think it's a bug.

Basically, what you do is this.  In your x11-base/xorg-x11-6.8.0-r3 server running on 2.6.9-gentoo-r1, pull up a terminal and set your keyboard rate to 250ms/30cps with the kbdrate command.

Then, use xset to set the keyboard rate to something less than 250ms delay and more than 30cps repeat.  For this example, I used 180ms/90cps just to demonstrate the problem.

so: kbdrate -r 30 -d 250
then: xset r rate 180 90

What happens when you press a key is this: 
- delay for 180ms
- repeat at 90 cps for 70ms
- then repeat at 30 cps from then on

Interestingly, "xset r rate 1 255", in addition to the expected behavior of making your keyboard useless, doesn't seem to exhibit this behavior.

The relevant part of my X config:

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option      "CoreKeyboard" "true"
        Option      "XkbModel" "pc105"
        Option      "XkbLayout" "us"
EndSection

This can be worked around by simply using the same settings for xset that you use with kbdrate, but then you are limited to 250ms/30cps, which is too slow by my measure at least.

Reproducible: Always
Steps to Reproduce:
1. kbdrate -r 30 -d 250
2. xset r rate 180 90
3. press & hold a key

Actual Results:  
- delay for 180ms
- repeat at 90 cps for 70ms
- then repeat at 30 cps from then on


Expected Results:  
- delay for 180ms
- repeat at 90 cps
Comment 1 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-04 17:44:00 UTC
I've just added a patch to the kbd driver in 6.8.0-r4 to change how it deals with repeats (https://bugs.freedesktop.org/show_bug.cgi?id=1651). Please try it.

grep ^PATCH_VER /usr/portage/x11-base/xorg-x11/xorg-x11-6.8.0-r4.ebuild, and make sure it shows 0.2.10 or greater.
Comment 2 David Lloyd 2004-12-05 11:10:13 UTC
Ok, thanks.  It will be a couple days before I can test this.  I'll let you know how it goes.
Comment 3 David Lloyd 2004-12-09 09:00:10 UTC
Looks like 6.8.0-r4 is masked by package.mask, that looks scary!
Comment 4 Maurice van der Pot (RETIRED) gentoo-dev 2004-12-12 03:34:30 UTC
This breaks key repeating entirely for me. I can hold keys down, but they won't
start repeating. Key repeat was working perfectly in -r1 through -r3.
Comment 5 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-12 12:42:02 UTC
Try adding the extra patch mentioned in comment #8 of https://bugs.freedesktop.org/show_bug.cgi?id=1651.
Comment 6 Maurice van der Pot (RETIRED) gentoo-dev 2004-12-14 11:44:25 UTC
I applied the #8 one and now my keys are repeating just fine.
If you want me to try out the #9 one as well, let me know.
Comment 7 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-14 11:58:29 UTC
9 is just 8 combined with the previous stuff.

Anyhow, I've added this patch to our 6.8.0-r4.
Comment 8 Donnie Berkholz (RETIRED) gentoo-dev 2004-12-14 12:00:14 UTC
I think this is fixed as of yesterday afternoon. Please reopen if that isn't the case.