I still would like to investigate it a little more, but anyway: using xserver-1.4 (from git server-1.4-branch) and evdev git (as of today, last commit is fa15e90993325...), I have a server crash in the following scenario:
- press shift+numlock
- type something else
It doesn't happen if I use the latest released evdev driver (1.1.5, although it's incompatible with xserver-1.4 according to bug #13222).
Created attachment 12545 [details]
xserver log of the crash
Starting program: /usr/bin/Xorg
[Thread debugging using libthread_db enabled]
[New Thread -1211705664 (LWP 2914)]
X.Org X Server 1.4.0
Release Date: 5 September 2007
X Protocol Version 11, Revision 0
Build Operating System: Linux_126.96.36.199-desktop-1mdv Mandriva
Current Operating System: Linux optimus.conectiva 188.8.131.52-desktop-1mdv #1 SMP Wed Oct 31 22:32:29 CET 2007 i686
Build Date: 14 November 2007 02:19:25PM
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Module Loader present
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Wed Nov 14 15:06:59 2007
(==) Using config file: "/etc/X11/xorg.conf"
[tcsetpgrp failed in terminal_inferior: Operation not permitted]
(II) Module "ramdac" already built-in
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning: Multiple names for keycode 211
> Using <I211>, ignoring <AB11>
Errors from xkbcomp are not fatal to the X server
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1211705664 (LWP 2914)]
0x00000000 in ?? ()
#0 0x00000000 in ?? ()
#1 0x08191cb4 in XkbHandleBell (force=0 '\0', eventOnly=0 '\0', kbd=0x840cfe8, percent=50 '2', pCtrl=0x840d248,
class=<value optimized out>, name=257, pWin=0x0, pClient=0x0) at xkbEvents.c:408
#2 0x081ada83 in _XkbDDXBeepExpire (timer=0x0, now=0, arg=0x840cfe8) at ddxBeep.c:291
#3 0x081adc5d in XkbDDXAccessXBeep (dev=0x840cfe8, what=1, which=16) at ddxBeep.c:329
#4 0x0819a1f3 in _XkbFilterControls (xkbi=0x840d168, filter=0x8411594, keycode=<value optimized out>, pAction=0xbfa2c684)
#5 0x0819b635 in XkbHandleActions (dev=0x840cfe8, kbd=0x840cfe8, xE=0x820febc, count=1) at xkbActions.c:1224
#6 0x0819b960 in XkbProcessKeyboardEvent (xE=0x820febc, keybd=0x840cfe8, count=1) at xkbPrKeyEv.c:189
#7 0x081938a4 in AccessXFilterPressEvent (xE=0x820febc, keybd=0x840cfe8, count=1) at xkbAccessX.c:568
#8 0x0819be78 in ProcessKeyboardEvent (xE=0x820febc, keybd=0x840cfe8, count=1) at xkbPrKeyEv.c:225
#9 0x0811cf0c in mieqProcessInputEvents () at mieq.c:249
#10 0x080c3bac in ProcessInputEvents () at xf86Events.c:241
#11 0x080889ad in Dispatch () at dispatch.c:421
I'm using a PS2 Logitech Access Keyboard, on Linux.
An embarassingly trivial patch is at:
Agreed, this is an Xserver bug.
Though, I could have sworn that we fixed this before the 1.4 release.
pushed as 55888552769ce6361174285b09dfb78ee22c170d.