On 06/20/2013 02:23 PM, Jens Neu wrote:
> On 19.06.2013 16:14, Roberto Ragusa wrote:
>> pstack on the process (better if you previously install the debuginfo rpm 
>> for the X server) 
> pstack with debuginfo for XServer as well as nouveau package:
> 
> #0  0x0000003a5bc0de4d in __lll_lock_wait () from /lib64/libpthread.so.0
> #1  0x0000003a5bc09cc1 in _L_lock_885 () from /lib64/libpthread.so.0
> #2  0x0000003a5bc09bda in pthread_mutex_lock () from /lib64/libpthread.so.0
> #3  0x0000003a6a2a86c0 in ?? () from /lib64/libGL.so.1
> #4  0x0000003a6a2acea0 in ?? () from /lib64/libGL.so.1
> #5  0x0000003a6a2ad3ca in ?? () from /lib64/libGL.so.1
> #6  0x0000003a67401bf7 in ?? () from /lib64/tls/libnvidia-tls.so.310.32
> #7  0x00007f430a4ca96f in mtdev_fetch_event () from /lib64/libmtdev.so.1
> #8  0x00007f430a4caa8d in mtdev_get () from /lib64/libmtdev.so.1
> #9  0x00007f430a6d3e06 in EvdevReadInput () from 
> /usr/lib64/xorg/modules/input/evdev_drv.so
> #10 0x0000000000489db7 in xf86SigioReadInput (fd=<optimized out>, 
> closure=0x29ba480) at xf86Events.c:299
> #11 0x00000000004b3528 in xf86SIGIO (sig=<optimized out>) at 
> ../shared/sigio.c:110
> #12 <signal handler called>
> #13 0x0000003a5bc09bd4 in pthread_mutex_lock () from /lib64/libpthread.so.0
> #14 0x0000003a6a2a86c0 in ?? () from /lib64/libGL.so.1
> #15 0x0000003a6a2acea0 in ?? () from /lib64/libGL.so.1
> #16 0x0000003a6a2ad386 in ?? () from /lib64/libGL.so.1
> #17 0x0000003a67401bf7 in ?? () from /lib64/tls/libnvidia-tls.so.310.32
> #18 0x0000000000478f06 in read (__nbytes=4096, __buf=0x2f19e50, 
> __fd=<optimized out>) at /usr/include/bits/unistd.h:44
> #19 _XSERVTransSocketRead (ciptr=0x3648870, buf=0x2f19e50 "\024", size=4096) 
> at /usr/include/X11/Xtrans/Xtranssock.c:2116
> #20 0x000000000046f2a6 in ReadRequestFromClient 
> (client=client@entry=0x2f0ccd0) at io.c:332
> #21 0x0000000000439666 in Dispatch () at dispatch.c:399
> #22 0x00000000004282da in main (argc=9, argv=0x7fff882da638, envp=<optimized 
> out>) at main.c:298
> 

Hmmm, I do not want to make false accusation, but as I'm reading it,
the code is doing something (22-14), it appears to be reading from a socket 
(18),
this implies taking a lock (13), a signal arrives in that moment (12) and 
something scary
is done in the signal handler (11-0), including some kind of read (10) which 
implies
taking some lock (2); probably deadlocking with 13, as the process remains 
stuck at 0.

It smells like a bug. Too much dangerous processing in a sig handler.

Anyone with better reading of this?

-- 
   Roberto Ragusa    mail at robertoragusa.it
-- 
users mailing list
users@lists.fedoraproject.org
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org

Reply via email to