Bug 117346

Summary: XFree86 claims that KDKBDREP ioctl() is not working.
Product: [Fedora] Fedora Reporter: Aleksey Nogin <aleksey>
Component: xorg-x11Assignee: Mike A. Harris <mharris>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideKeywords: Triaged
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-01-20 17:07:25 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Aleksey Nogin 2004-03-03 00:19:21 UTC
I am seeing

(EE) lnx_kbd.c: Unable to set the keyboard repeat rate using the
KDKBDREP ioctl().  This may be caused by a buggy kernel.

in my X logs. The error message itself was added as a part of a bug
115769 fix, but AFAIU bug 115769 comment #41 the message is indeed an
indication of a kernel bug.

I am currently running XFree86-4.3.0-62 and kernel-2.6.3-1.116
(recompiled with kernel-2.6.3-i686.config as .config with no changes
except for enabling CONFIG_SOFTWARE_SUSPEND).

Comment 1 Mike A. Harris 2004-03-05 07:45:15 UTC
Hi Alexkey,

This problem could occur for two reasons.  One is if the kernel
you happen to be using, does not support the KDKBDREP ioctl at all,
in which case the kernel should be updated to a current kernel
which supports this ioctl.  Our current kernels do support this
ioctl however, so that shouldn't be the problem.

The other problem, is if the ioctl fails for some reason.  That
could either be a kernel bug, or it could possibly be the ioctl
being called with invalid data or somesuch.

Just for an additional datapoint, if you use the official Red Hat
kernel build, does this problem occur, or does it only occur if you
recompile the kernel yourself?

Thanks in advance.


Comment 2 Aleksey Nogin 2004-03-07 03:32:48 UTC
> Just for an additional datapoint, if you use the official Red Hat
> kernel build, does this problem occur

I rebooted to 2.6.3-1.118 official kernel and I still see 

(EE) lnx_kbd.c: Unable to set the keyboard repeat rate using the KDKBDREP
     ioctl().  This may be caused by a buggy kernel.

in my X log.

Comment 3 Mike A. Harris 2004-03-31 20:39:09 UTC
Our kernels have this ioctl, so I'm not sure why you should see this
message under our kernels.  In the future, I'll add some additional
debugging data to see exactly why the ioctl fails.

Reassigning to myself for now, since there's not any proof of kernel
bug present.  It could be a legitimate reason the ioctl fails, so
before we can consider it a kernel bug we need more data.

Comment 4 Aleksey Nogin 2004-03-31 22:10:08 UTC
I am _not_ seeing this with xorg-x11-0.0.6.6-0.0.2004_03_11.9
and kernel-2.6.4-1.298

Comment 5 Mike A. Harris 2004-03-31 22:58:59 UTC
The patch to add the warnings/etc. to the log file are currently
disabled in xorg-x11.  ;o)

I'll re-enable them in the future though when I'm investigating this
area of code again, and add the ioctl failure errno's to the log,
so we can tell why the ioctl fails.  It could be due to kernel bug,
or it could be due to X calling the ioctl incorrectly perhaps.

Since this area of code has had some problems, I'd really like to
ensure the current code is 100% correct, since I doubt the original
authors ever even tested it before putting it in XFree86, since
it _never_ worked until we fixed it.  ;o)

When I play with it again, I'll update this report also, as a headsup.

Thanks for the update also.

TTYL

Comment 6 Mike A. Harris 2005-02-11 23:16:20 UTC
I've updated the messages to be X_WARNING instead of X_ERROR, and
also reduced the alarmist nature of the messages.