Bug 479122

Summary: Xorg crashing after identifying a mouse as a keyboard
Product: [Fedora] Fedora Reporter: Milos Jakubicek <xjakub>
Component: xorg-x11-serverAssignee: Peter Hutterer <peter.hutterer>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: high    
Version: 10CC: xgl-maint
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: 2009-01-27 22:29:00 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:
Attachments:
Description Flags
Xorg log
none
Standard output of "xkbcomp -xkb :0 -" none

Description Milos Jakubicek 2009-01-07 12:26:03 UTC
Created attachment 328369 [details]
Xorg log

Description of problem:

Recently, I'm experiencing random crashes of X which seem to be related to my bluetooth mouse. The crashes are hard to track and happen sometimes after a day of running X, sometimes after a few seconds, but *always* I found the following sequence at the end of Xorg.0.old (full file will be attached):

(II) config/hal: Adding input device Trust Mouse 15352
(**) Trust Mouse 15352: always reports core events
(**) Trust Mouse 15352: Device: "/dev/input/event10"
(II) Trust Mouse 15352: Found 3 mouse buttons
(II) Trust Mouse 15352: Found x and y relative axes
(II) Trust Mouse 15352: Found keys
(II) Trust Mouse 15352: Configuring as mouse
(II) Trust Mouse 15352: Configuring as keyboard
(**) Trust Mouse 15352: YAxisMapping: buttons 4 and 5
(**) Trust Mouse 15352: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
(II) XINPUT: Adding extended input device "Trust Mouse 15352" (type: KEYBOARD)
(**) Option "xkb_rules" "evdev"
(**) Trust Mouse 15352: xkb_rules: "evdev"
(**) Option "xkb_model" "pc105"
(**) Trust Mouse 15352: xkb_model: "pc105"
(**) Option "xkb_layout" "us,cz"
(**) Trust Mouse 15352: xkb_layout: "us,cz"
(**) Option "xkb_options" "grp:shifts_toggle,grp_led:scroll"
(**) Trust Mouse 15352: xkb_options: "grp:shifts_toggle,grp_led:scroll"

Backtrace:
0: /usr/bin/X(xorg_backtrace+0x26) [0x4e7a26]
1: /usr/bin/X(xf86SigHandler+0x39) [0x47a679]
2: /lib64/libc.so.6 [0x3d7aa32f90]
3: /usr/bin/X(XkbWriteXKBGeometry+0x14c) [0x55878c]
4: /usr/bin/X(XkbWriteXKBKeymapForNames+0x5bb) [0x557d1b]
5: /usr/bin/X(XkbDDXLoadKeymapByNames+0x18a) [0x561cba]
6: /usr/bin/X(ProcXkbGetKbdByName+0x3ab) [0x53fb2b]
7: /usr/bin/X(Dispatch+0x364) [0x4468d4]
8: /usr/bin/X(main+0x45d) [0x42cd1d]
9: /lib64/libc.so.6(__libc_start_main+0xe6) [0x3d7aa1e576]
10: /usr/bin/X [0x42c0f9]

Fatal server error:
Caught signal 11.  Server aborting

The X server thinks my mouse is a keyboard, am I right?
I'm suspecting the recent update of this package to be the reason(?).

Version-Release number of selected component (if applicable):

xorg-x11-drv-keyboard-1.3.1-2.fc10.x86_64

How reproducible:

Hardly deterministic:( But since two weeks or so my X session always crashed after a time (usually I'm just suspending the laptop to RAM and it used to hold for months).

Steps to Reproduce:
1. Login to a X session
2. Work with the mouse and wait for the crash:(
  
Actual results:

Crash after a random amount of time.

Expected results:

No crashes;)

Additional info:

Smolt profile:
http://www.smolts.org/client/show/pub_bc0e2ea3-aa19-49f3-9439-b81881fb4a74

Comment 1 Peter Hutterer 2009-01-08 04:44:09 UTC
Looks very similar to Bug 469572. 
What's the output of rpm -qa | grep xorg-x11-server, setxkbmap -print and xkbcomp -xkb :0 -?

Comment 2 Milos Jakubicek 2009-01-08 10:06:43 UTC
>rpm -qa | grep xorg-x11-server
xorg-x11-server-common-1.5.3-6.fc10.x86_64
xorg-x11-server-utils-7.4-3.fc10.x86_64
xorg-x11-server-devel-1.5.3-6.fc10.x86_64
xorg-x11-server-Xorg-1.5.3-6.fc10.x86_64

>setxkbmap -print
xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwerty)" };
        xkb_types     { include "complete"      };
        xkb_compat    { include "complete+ledscroll(group_lock)"        };
        xkb_symbols   { include "pc+us+cz:2+inet(evdev)+group(shifts_toggle)"   };
        xkb_geometry  { include "pc(pc105)"     };
};

>xkbcomp -xkb :0 - > xkbcomp.output
Warning:          Could not load keyboard geometry for :0
                  BadAlloc (insufficient resources for operation)
                  Resulting keymap file will not describe geometry

(That's stderr, stdout posted as an attachment)

Comment 3 Milos Jakubicek 2009-01-08 10:07:59 UTC
Created attachment 328456 [details]
Standard output of "xkbcomp -xkb :0 -"

Comment 4 Milos Jakubicek 2009-01-08 10:19:45 UTC
(In reply to comment #1)
> Looks very similar to Bug 469572. 

Hm...it may look similar, but the backtrace is still different.

Comment 5 Peter Hutterer 2009-01-08 23:41:10 UTC
whot@dingo:~/Download/usr/lib/debug/usr/bin$ eu-addr2line -e X.debug 0x55878c
/usr/src/debug/xorg-server-1.5.3/xkb/xkbout.c:831

Looks like a dangling or uninitialized pointer when writing the geometry. How this happens I'm not sure, but the xkbcomp warning may contribute to it (I couldn't reproduce it here yet).

Can you try the below scratch build from koji please, it simply skips writing the geometry completely (this doesn't really matter). Can you reproduce the bug with it?

http://koji.fedoraproject.org/scratch/whot/task_1041247/

Comment 6 Milos Jakubicek 2009-01-15 17:07:48 UTC
Hm, it hasn't crashed since I installed your packages, but I don't think there is everything all right, it's just not so bad: instead of crashing, I see now in my Xorg.0.log:

(II) XINPUT: Adding extended input device "Trust Mouse 15352" (type: KEYBOARD)
(**) Option "xkb_rules" "evdev"
(**) Trust Mouse 15352: xkb_rules: "evdev"
(**) Option "xkb_model" "evdev"
(**) Trust Mouse 15352: xkb_model: "evdev"
(**) Option "xkb_layout" "us"
(**) Trust Mouse 15352: xkb_layout: "us"
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm
(EE) Error loading keymap /var/lib/xkb/server-0.xkm

Comment 7 Peter Hutterer 2009-01-27 22:29:00 UTC

*** This bug has been marked as a duplicate of bug 469572 ***