Bug 461756 - Crash when I switch to another display using a KVM switch
Summary: Crash when I switch to another display using a KVM switch
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: xorg-x11-drv-evdev
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Peter Hutterer
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F10Beta, F10BetaBlocker
TreeView+ depends on / blocked
 
Reported: 2008-09-10 12:51 UTC by Caolan McNamara
Modified: 2013-01-10 04:47 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-09-15 17:59:24 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
xorg.conf (428 bytes, text/plain)
2008-09-10 12:51 UTC, Caolan McNamara
no flags Details
Xorg.0.conf before switching (216.75 KB, text/plain)
2008-09-10 12:52 UTC, Caolan McNamara
no flags Details
Xorg.0.conf.old after switching back (223.76 KB, text/plain)
2008-09-10 12:53 UTC, Caolan McNamara
no flags Details

Description Caolan McNamara 2008-09-10 12:51:24 UTC
Created attachment 316305 [details]
xorg.conf

Description of problem:


Version-Release number of selected component (if applicable):
xorg-x11-drv-evdev-2.0.4-2.fc10.x86_64

How reproducible:


Steps to Reproduce:
1. Stick a usb KVM switch into a rawhide x86_64 box
2. Switch to another display, switch back
3. X has exited and restarted
  
Additional info:

I imagine that the same effect might be seen if a usb keyboard is simply unplugged, without any KVM in the loop

X driver itself doesn't matter, logs here will be with nouveau, but happens with vesa too

Comment 1 Caolan McNamara 2008-09-10 12:52:30 UTC
Created attachment 316308 [details]
Xorg.0.conf before switching

Comment 2 Caolan McNamara 2008-09-10 12:53:07 UTC
Created attachment 316310 [details]
Xorg.0.conf.old after switching back

Comment 3 Caolan McNamara 2008-09-10 12:54:06 UTC
Presumably this is the magic bit...

(II) UnloadModule: "evdev"

Backtrace:
0: /usr/bin/Xorg(xf86SigHandler+0x65) [0x47a105]
1: /lib64/libc.so.6 [0x3538a33130]
2: /usr/lib64/xorg/modules/input//evdev_drv.so [0x7f5bbee9bd00]
3: /usr/bin/Xorg [0x4e4498]
4: /usr/bin/Xorg(WaitForSomething+0x56b) [0x4e4aeb]
5: /usr/bin/Xorg(Dispatch+0x7f) [0x4465ff]
6: /usr/bin/Xorg(main+0x45d) [0x42ccbd]
7: /lib64/libc.so.6(__libc_start_main+0xe6) [0x3538a1e566]
8: /usr/bin/Xorg [0x42c099]

I guess on switch away evdev gets unloaded causing the trouble

Comment 4 Caolan McNamara 2008-09-10 12:55:18 UTC
The F-9 box switched-to survives fine, and all is well if I drop to a vt on the rawhide box, switch, switch-back, and restore the X vt

Comment 5 Peter Hutterer 2008-09-11 11:51:57 UTC
I've seen this before, but I haven't been able to reproduce it. There must be some magic trigger. Funnily enough, I have a mouse that dies about every second and gets removed and re-added and I have yet to trigger this.

What I think happens is that the event is processed after the mouse has been deleted + freed already. How that happens is unclear as of yet.

Comment 6 Caolan McNamara 2008-09-11 12:20:56 UTC
Here's how I can reproduce this.

At gdm hold down a key on the usb keyboard, e.g. a and pull out the usb mouse, stick the mouse back end, and release the key. Wait a few secs, now hold down the same key again and pull out the mouse. ka-pow, death

Comment 7 Jesse Keating 2008-09-12 19:26:01 UTC
I can produce this easily by having both the keyboard and mouse go away.  I've reproduced it both during installs (keyboard/mouse fed by usb) and on my laptop.  During installs I kvm switch away.  On my laptop I just shut off the LCD monitor, which is acting as a USB hub for my keyboard/mouse.

Since this is very easily triggered, I'm marking it a beta blocker.

Comment 8 Peter Hutterer 2008-09-13 10:15:28 UTC
My fault. I did patch it, but being offline it never went into CVS. 

Please try xorg-x11-drv-evdev-2.0.4-3, ajax committed the fix for it.

Comment 9 Adam Jackson 2008-09-15 17:59:24 UTC
Believe this is fixed in 2.0.4-3.  Closing.  Please reopen if this doesn't fix it for you.


Note You need to log in before you can comment on or make changes to this bug.