Bug 766520 - X crashes on key enter
Summary: X crashes on key enter
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: xorg-x11-server
Version: 16
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: X/OpenGL Maintenance List
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-12-12 09:10 UTC by Freddy Willemsen
Modified: 2012-01-19 13:46 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-01-19 13:46:39 UTC
Type: ---


Attachments (Terms of Use)
core dump produced by X (688.29 KB, application/x-gzip)
2011-12-12 09:19 UTC, Freddy Willemsen
no flags Details

Description Freddy Willemsen 2011-12-12 09:10:03 UTC
Description of problem:
X server crashes upon keyboard input when laptop is used with Docking Station and Yubikey is inserted prior to booting.

Version-Release number of selected component (if applicable):
xorg-x11-server-Xorg-1.11.2-3.fc16.x86_64
xorg-x11-drv-intel-2.17.0-1.fc16.x86_64

How reproducible:
Put laptop in docking station. As soon as network is available, open a terminal and type some random characters.

Steps to Reproduce:
1. Insert yubikey in laptop
2. Put Laptop in Docking Station
3. Startup and type characters in a terminal.
  
Actual results:
X crashes

Expected results:
No crashes.

Additional info:
Everything is fine when not used in docking station. Laptop is a Dell E6500 with an advanced E-port Docking Station. If I insert the Yubikey after full startup, things seem to be OK. I am using LXDE as Desktop Environment.

Core dump is attached. gdb results for core dump:

GNU gdb (GDB) Fedora (7.3.50.20110722-10.fc16)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/X...Reading symbols from /usr/lib/debug/usr/bin/Xorg.debug...done.
done.
[New LWP 1965]
Missing separate debuginfo for 
Try: yum --disablerepo='*' --enablerepo='*-debuginfo' install /usr/lib/debug/.build-id/9f/6a5fda6fec28b048eb78a4340676aa14bf9be5
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/bin/X -core -verbose -logverbose -background none :0 vt01 -nolisten tcp'.
Program terminated with signal 6, Aborted.
#0  0x00007f7eb9d46285 in __GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64	  return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);

Comment 1 Freddy Willemsen 2011-12-12 09:19:01 UTC
Created attachment 545640 [details]
core dump produced by X

Comment 2 Freddy Willemsen 2011-12-13 09:00:40 UTC
I tested with the latest rawhide version (xorg-x11-server-1.11.99.1-9.20111109.fc17), same result.

Funny thing is that after X crashes (and restarts), a lot of other programs crash as well (pidgin, lxdm-greeter, pcmanfm). In $HOME/.xsession-errors a lot of "Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0." entries can be seen.

Comment 3 Freddy Willemsen 2011-12-13 10:35:58 UTC
The X server crashed on me twice this morning, without the Yubikey being attached. So the Yubikey thing might simply be a symptom, not a cause.

Comment 4 Freddy Willemsen 2011-12-16 08:31:33 UTC
The Yubikey is definitely not the cause. Open a terminal and typing, well, pretty much anything can result in a crash. It renders the docking station useless this way.

Did some more digging with gdb:

[root@lptfrwi /]# gdb /usr/bin/X core.1430
GNU gdb (GDB) Fedora (7.3.50.20110722-10.fc16)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/X...Reading symbols from /usr/lib/debug/usr/bin/Xorg.debug...done.
done.
[New LWP 1430]
Missing separate debuginfo for
Try: yum --disablerepo='*' --enablerepo='*-debuginfo' install /usr/lib/debug/.build-id/9f/6a5fda6fec28b048eb78a4340676aa14bf9be5
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/bin/X -core -verbose -logverbose -background none :0 vt01 -nolisten tcp'.
Program terminated with signal 6, Aborted.
#0  0x000000366e236285 in __GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64	  return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
(gdb) bt f
#0  0x000000366e236285 in __GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
        resultvar = 0
        pid = <optimized out>
        selftid = 1430
#1  0x000000366e237b9b in __GI_abort () at abort.c:91
        save_stage = 2
        act = {__sigaction_handler = {sa_handler = 0x7dc880 <tmpBuffer.10170>,
            sa_sigaction = 0x7dc880 <tmpBuffer.10170>}, sa_mask = {__val = {
              4615396, 21111472, 1, 140735199068656, 8285024, 51797696, 0,
              140735199068000, 4614971, 64, 206158430232, 140735199068016,
              140735199067824, 140735199067936, 5747794, 1}},
          sa_flags = 1856038496, sa_restorer = 0x7defe0 <tty_attr>}
        sigs = {__val = {32, 0 <repeats 15 times>}}
#2  0x000000000046a40e in OsAbort () at utils.c:1251
No locals.
#3  0x000000000048193c in ddxGiveUp (error=EXIT_ERR_ABORT) at xf86Init.c:955
        i = <optimized out>
#4  0x0000000000466a52 in AbortServer () at log.c:416
No locals.
#5  0x0000000000466c37 in FatalError (
    f=0x579078 "Caught signal %d (%s). Server aborting\n") at log.c:547
        args = {{gp_offset = 24, fp_offset = 48,
            overflow_arg_area = 0x7fff778c40a0,
            reg_save_area = 0x7fff778c3fd0}}
        beenhere = 1
#6  0x0000000000467dbe in OsSigHandler (sip=<optimized out>, signo=3,
    unused=<optimized out>) at osinit.c:146
No locals.
#7  OsSigHandler (signo=3, sip=<optimized out>, unused=<optimized out>)
    at osinit.c:108
No locals.
#8  <signal handler called>
No symbol table info available.
#9  0x000000366e2e8863 in __select_nocancel ()
    at ../sysdeps/unix/syscall-template.S:82
No locals.
#10 0x0000000000460266 in WaitForSomething (pClientsReady=0x3165ec0)
    at WaitFor.c:232
        i = <optimized out>
        waittime = {tv_sec = 0, tv_usec = 199334}
        wt = 0x7fff778c4740
        timeout = <optimized out>
        clientsReadable = {fds_bits = {0 <repeats 16 times>}}
        clientsWritable = {fds_bits = {67872, 0, 8186520, 233779689216, 98240,
            52829152, 32752, 233779689216, 8186520, 234178491288, 21112336,
            21112336, 52422240, 16384, 21112712, 21112336}}
        selecterr = <optimized out>
        nready = 0
        devicesReadable = {fds_bits = {52422240, 16384, 21112712,
            140716555730464, 21112336, 52422400, 29, 140716558181936,
            21112568, 16384, 29, 18, 8186520, 21060864, 21057520, 21077400}}
        now = <optimized out>
        someReady = <optimized out>
#11 0x000000000043378a in Dispatch () at dispatch.c:381
        clientReady = 0x3165ec0
        result = <optimized out>
        client = <optimized out>
        nready = <optimized out>
        icheck = 0x7e6450
        start_tick = <optimized out>
#12 0x0000000000422db5 in main (argc=<optimized out>, argv=0x7fff778c4968,
    envp=<optimized out>) at main.c:287
        i = <optimized out>
        alwaysCheckForInput = {0, 1}
(gdb) list
59	    if (__builtin_expect (pid <= 0, 0))
60	      pid = (pid & INT_MAX) == 0 ? selftid : -pid;
61	#endif
62
63	#if __ASSUME_TGKILL
64	  return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
65	#else
66	# ifdef __NR_tgkill
67	  int res = INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
68	  if (res != -1 || errno != ENOSYS)
(gdb) list
69	    return res;
70	# endif
71	  return INLINE_SYSCALL (tkill, 2, selftid, sig);
72	#endif
73	}
74	libc_hidden_def (raise)
75	weak_alias (raise, gsignal)

Comment 5 Freddy Willemsen 2011-12-16 16:00:43 UTC
I am slowly going nuts here. It seems that the 'Enter' key on any keyboard except for the laptops internal keyboard causes the crash. No matter in what application I use the Enter key (tried geany, libreoffice-writer, lxterminal). The Yubikey is seen as an usb keyboard and does provide an CRLF after input, so that one triggers it as well. I have tried a Logitech UltraX and a Logitech Cordless Desktop EX110 keyboard.

Been fiddling around with xkb settings to no avail.

When the X server crashes it drops me back to lxdm (logical, cause systemd logs you out). However, attempting to log back in crashes the X server over and over again. Only a reboot would help.

I have tried the latest rawhide packages for mesa/xorg-x11-server, same issue.

I am in desperate need of some help and/or feedback.

Comment 6 Freddy Willemsen 2012-01-06 13:28:07 UTC
This may be a kernel thing. I thought I solved it by using a rawhide 3.2 kernel. However, with kernel 3.2.0-2.fc17.x86_64 X keeps crashing (whether docked or not), kernel 3.2.0-0.rc7.git4.1.fc17.x86_64 works fine.

It does seem to be a whole lot more stable if I remove the 'rhgb quiet' boot parameters.

Comment 7 Ken Dreyer 2012-01-13 15:24:53 UTC
Sounds (In reply to comment #5)
> I am slowly going nuts here. It seems that the 'Enter' key on any keyboard
> except for the laptops internal keyboard causes the crash.

This symptom sounds similar to F15 Bug 720137 - X crashes when ENTER key is pressed , but worse if it's crashing over and over for you?

Comment 8 Freddy Willemsen 2012-01-14 12:34:20 UTC
It certainly looks like the same problem, intermittent crashes on login when the enter keys is used. As I am using lxdm, this certainly is not a display manager issue.

I can say however that kernel 3.2 does not have this problem, as long as you omit the 'rhgb quiet' boot parameters (I read somewhere the boot splash is an issue on 3.2 so this might not be related to this bug).

I installed kernel-3.1.9-1 this morning and so far the problem has not arisen yet. I even put the 'rhgb quiet' back in. So it looks like the issue was resolved somewhere after kernel-3.1.6.

I will test this for a week or so. If no more crashes occur, I will close this bug.

Comment 9 Freddy Willemsen 2012-01-19 13:46:39 UTC
I can confirm that this bug no longer exists using kernel-3.1.9-1. I am once again a very happy user!


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