[mythtv] Mutex destroy failure problem (was: Slave backend hang after ANN command)

Jason Gillis jgillis at acm.org
Thu Apr 7 21:17:53 UTC 2005


John Patrick Poet wrote:
> I should add, that I have not had the frontend hang with the latest
> CVS.  My backend death problem is probably not related, but for some
> reason I though it was.
>

I did some research to dig into this today.  I'm not able to discover 
anything conclusive, but I have found that I can produce this failure in 
PlaybackSock::SendReceiveStringList().  ((This is easy to do, as I inserted 
a "sleep(10);" between the WriteStringList() and ReadStringList() calls in 
MainServer::reconnectTimeout() on the slave backend.  When the slave gets to 
that point, I simply kill the process, which causes the master backend to 
fall over.))

Tracing through things on the master end, it looks like when the call to 
ReadStringList() in SendReceiveStringList() fails due to the socket closure, 
something happens to sockLock.  Anytime after the socket is closed, calls 
referencing sockLock cause a seg. fault.  (Unfortunately, I don't know 
enough about Qt to figure out why the socket going away causes such problems 
with a (seemingly) unrelated QMutex object.)

I figured that I'd throw this info out there, as it might help narrow things 
down in the hunt for this problem.

Jason


-------

The following is a backtrace for my system:

Thread 12 (Thread 163851 (LWP 9022)):
#0  0x41477094 in __pthread_sigsuspend () from /lib/libpthread.so.0
No symbol table info available.
#1  0x41476ed9 in __pthread_wait_for_restart_signal ()
   from /lib/libpthread.so.0
No symbol table info available.
#2  0x41472fdb in pthread_cond_wait at GLIBC_2.0 () from /lib/libpthread.so.0
No symbol table info available.
#3  0x44dffe0c in ?? ()
No symbol table info available.

Thread 11 (Thread 147466 (LWP 9021)):
#0  0x41477094 in __pthread_sigsuspend () from /lib/libpthread.so.0
No symbol table info available.
#1  0x41476ed9 in __pthread_wait_for_restart_signal ()
   from /lib/libpthread.so.0
No symbol table info available.
#2  0x41472fdb in pthread_cond_wait at GLIBC_2.0 () from /lib/libpthread.so.0
No symbol table info available.
#3  0x416bca20 in __after_morecore_hook () from /lib/libc.so.6
No symbol table info available.

Thread 10 (Thread 131081 (LWP 9020)):
#0  0x41477094 in __pthread_sigsuspend () from /lib/libpthread.so.0
No symbol table info available.
#1  0x41476ed9 in __pthread_wait_for_restart_signal ()
   from /lib/libpthread.so.0
No symbol table info available.
#2  0x41472fdb in pthread_cond_wait at GLIBC_2.0 () from /lib/libpthread.so.0
No symbol table info available.
#3  0x416bca20 in __after_morecore_hook () from /lib/libc.so.6
No symbol table info available.

Thread 9 (Thread 114696 (LWP 9019)):
#0  0x41477094 in __pthread_sigsuspend () from /lib/libpthread.so.0
No symbol table info available.
#1  0x41476ed9 in __pthread_wait_for_restart_signal ()
   from /lib/libpthread.so.0
No symbol table info available.
#2  0x41472fdb in pthread_cond_wait at GLIBC_2.0 () from /lib/libpthread.so.0
No symbol table info available.
#3  0x416bca20 in __after_morecore_hook () from /lib/libc.so.6
No symbol table info available.

Thread 8 (Thread 98311 (LWP 9018)):
#0  0x41477094 in __pthread_sigsuspend () from /lib/libpthread.so.0
No symbol table info available.
#1  0x41476ed9 in __pthread_wait_for_restart_signal ()
   from /lib/libpthread.so.0
No symbol table info available.
#2  0x41472fdb in pthread_cond_wait at GLIBC_2.0 () from /lib/libpthread.so.0
No symbol table info available.
#3  0xffffffff in ?? ()
No symbol table info available.

Thread 7 (Thread 81926 (LWP 9016)):
#0  0x41630086 in nanosleep () from /lib/libc.so.6
No symbol table info available.

Thread 6 (Thread 65541 (LWP 9015)):
#0  0x41630086 in nanosleep () from /lib/libc.so.6
No symbol table info available.

Thread 5 (Thread 49156 (LWP 9014)):
#0  0x41630086 in nanosleep () from /lib/libc.so.6
No symbol table info available.

Thread 4 (Thread 32771 (LWP 9013)):
#0  0x00000000 in ?? ()
No symbol table info available.

Thread 3 (Thread 16386 (LWP 9011)):
#0  0x41630086 in nanosleep () from /lib/libc.so.6
No symbol table info available.

Thread 2 (Thread 32769 (LWP 9010)):
#0  0x41655858 in poll () from /lib/libc.so.6
No symbol table info available.
#1  0x41473c75 in __pthread_manager () from /lib/libpthread.so.0
No symbol table info available.
#2  0x41473f79 in __pthread_manager_event () from /lib/libpthread.so.0
No symbol table info available.
#3  0x4165dfaa in clone () from /lib/libc.so.6
No symbol table info available.

Thread 1 (Thread 16384 (LWP 9005)):
#0  0x41657a51 in select () from /lib/libc.so.6
No symbol table info available.
#1  0x41442bd0 in ?? () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#2  0x0000000f in ?? ()
No symbol table info available.
#3  0x080dd588 in ?? ()
No symbol table info available.
#0  0x00000000 in ?? ()



More information about the mythtv-dev mailing list