[mythtv] backtrack

Chad J McQuinn chadmcquinn at insightbb.com
Mon Feb 23 01:19:07 EST 2004


Using CVS as of this past Saturday, mythbackend segfaults periodically 
on my master backend. It seems that it is happy to sit idle for a few 
hours, but when a scheduled recording kicks in it will (sometimes) 
segfault. Sometimes it is not until the recording has been going for a 
while, and sometimes it is right away.

The system is an Athlon 2600XP, ASUS a7v8x/x mb, 512MB ram. This is the 
master back end which has two btxxx cards. There is also a slave 
backend with a PVR250, which does NOT generally segfault (at least not 
when the master backend does).

--------
(gdb) thread apply all bt full

Thread 12 (Thread 163851 (LWP 2763)):
#0  0x411c2568 in sigsuspend () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x41074478 in __pthread_wait_for_restart_signal ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x41070c5b in pthread_cond_wait at GLIBC_2.0 ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#3  0x40eba25f in QWaitCondition::wait(QMutex*, unsigned long) () from 
/usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#4  0x0807c4d3 in ProcessRequestThread::run() (
     this=0x43c5e5c0) at mainserver.cpp:61
No locals.
#5  0x40bffff8 in QProc::~QProc() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#6  0x41072811 in pthread_start_thread ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#7  0x41072915 in pthread_start_thread_event ()
    from /lib/i686/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.

Thread 11 (Thread 147466 (LWP 2762)):
#0  0x411c2568 in sigsuspend () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x41074478 in __pthread_wait_for_restart_signal ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x41070c5b in pthread_cond_wait at GLIBC_2.0 ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#3  0x40eba25f in QWaitCondition::wait(QMutex*, unsigned long) () from 
/usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#4  0x0807c4d3 in ProcessRequestThread::run() (
     this=0x43c52948) at mainserver.cpp:61
No locals.
#5  0x40bffff8 in QProc::~QProc() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#6  0x41072811 in pthread_start_thread ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#7  0x41072915 in pthread_start_thread_event ()
---Type <return> to continue, or q <return> to quit---
    from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 10 (Thread 131081 (LWP 2761)):
#0  0x411c2568 in sigsuspend () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x41074478 in __pthread_wait_for_restart_signal ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x41070c5b in pthread_cond_wait at GLIBC_2.0 ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#3  0x40eba25f in QWaitCondition::wait(QMutex*, unsigned long) () from 
/usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#4  0x0807c4d3 in ProcessRequestThread::run() (
     this=0x43c38420) at mainserver.cpp:61
No locals.
#5  0x40bffff8 in QProc::~QProc() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#6  0x41072811 in pthread_start_thread ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#7  0x41072915 in pthread_start_thread_event ()
    from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 9 (Thread 114696 (LWP 2760)):
#0  0x411c2568 in sigsuspend () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x41074478 in __pthread_wait_for_restart_signal ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x41070c5b in pthread_cond_wait at GLIBC_2.0 ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#3  0x40eba25f in QWaitCondition::wait(QMutex*, unsigned long) () from 
/usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#4  0x0807c4d3 in ProcessRequestThread::run() (
     this=0x43c0e5e0) at mainserver.cpp:61
No locals.
#5  0x40bffff8 in QProc::~QProc() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#6  0x41072811 in pthread_start_thread ()
    from /lib/i686/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#7  0x41072915 in pthread_start_thread_event ()
    from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 8 (Thread 98311 (LWP 2759)):
#0  0x411c2568 in sigsuspend () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x41074478 in __pthread_wait_for_restart_signal ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x41070c5b in pthread_cond_wait at GLIBC_2.0 ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#3  0x40eba25f in QWaitCondition::wait(QMutex*, unsigned long) () from 
/usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#4  0x0807c4d3 in ProcessRequestThread::run() (
     this=0x43c0f9b0) at mainserver.cpp:61
No locals.
#5  0x40bffff8 in QProc::~QProc() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#6  0x41072811 in pthread_start_thread ()
---Type <return> to continue, or q <return> to quit---
    from /lib/i686/libpthread.so.0
No symbol table info available.
#7  0x41072915 in pthread_start_thread_event ()
    from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 7 (Thread 81926 (LWP 2758)):
#0  0x41247be6 in nanosleep () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available.

Thread 6 (Thread 65541 (LWP 2757)):
#0  0x41247be6 in nanosleep () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available.

Thread 5 (Thread 49156 (LWP 2756)):
#0  0x41270ef1 in select () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x410601cc in typeinfo for QMotifStyle ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#2  0x40e3b04c in QSocket::waitForMore(int, bool*) const
     () from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#3  0x40e3b09e in QSocket::waitForMore(int) const ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.

#4  0x40746534 in ReadStringList(QSocket*, QStringList&) (
     socket=0x43cb4c30, list=@0x4338b82c) at util.cpp:345
         sizestr = <incomplete type>
         size = 0
         utf8 = <incomplete type>
         read = 439
         zerocnt = 1127791732
         str = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x4103ed40, static shared_null = 0x80acc98}
#5  0x0807c93b in PlaybackSock::SendReceiveStringList(QStringList&) 
(this=0x80be3e8, strlist=@0x4338b82c)
     at playbacksock.cpp:42
         ok = 67
#6  0x0807d61c in PlaybackSock::StartRecording(int, ProgramInfo*) 
(this=0x80be3e8, capturecardnum=11,
     pginfo=0x43c22978) at playbacksock.cpp:173
---Type <return> to continue, or q <return> to quit---
         strlist = {<QValueList<QString>> = {
     sh = 0x43c9e018}, <No data fields>}
         ret = 1089368841
#7  0x08058caa in EncoderLink::StartRecording(ProgramInfo*) 
(this=0x80db878, rec=0x43c22978) at encoderlink.cpp:250
         retval = 0
#8  0x08084f3f in Scheduler::RunScheduler() (
     this=0x80d16d8) at scheduler.cpp:1395
         msg = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80acc98, static shared_null = 0x80acc98}
         lockit = {mtx = 0x80d12f0}
         retval = 1
         recIter = {<_List_iterator_base> = {
     _M_node = 0x43c99fe0}, <No data fields>}
         prerollseconds = 120
         secsleft = -2
         nexttv = (EncoderLink *) 0x80db878
         nextRecording = (ProgramInfo *) 0x43c22978
         nextrectime = {d = {jd = 2453058}, t = {
     ds = 68400000}}
         curtime = {d = {jd = 2453058}, t = {
     ds = 68281122}}
---Type <return> to continue, or q <return> to quit---
         lastupdate = {d = {jd = 2453058}, t = {
     ds = 64920589}}
         recordfileprefix = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80dcae8, static shared_null = 0x80acc98}
         startIter = {<_List_iterator_base> = {
     _M_node = 0x43c99ee0}, <No data fields>}
         blockShutdown = true
         idleSince = {d = {jd = 0}, t = {ds = 0}}
         idleTimeoutSecs = 0
         idleWaitForRecordingTime = 15
         firstRun = false
#9  0x080863ef in Scheduler::SchedulerThread(void*) (
     param=0x80d16d8) at scheduler.cpp:1594
         sched = (Scheduler *) 0x80d16d8
#10 0x41072811 in pthread_start_thread ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#11 0x41072915 in pthread_start_thread_event ()
    from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 4 (Thread 32771 (LWP 2755)):
---Type <return> to continue, or q <return> to quit---
#0  0x41247be6 in nanosleep () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available.

Thread 3 (Thread 16386 (LWP 2753)):
#0  0x4107774b in write () from /lib/i686/libpthread.so.0
No symbol table info available.
#1  0x41aa54c8 in _db_process_ ()
    from /usr/lib/libmysqlclient.so.12
No symbol table info available.
#2  0x41a8fa2a in net_real_write ()
    from /usr/lib/libmysqlclient.so.12
No symbol table info available.
#3  0x41a8f5c8 in net_flush ()
    from /usr/lib/libmysqlclient.so.12
No symbol table info available.
#4  0x41a8f82a in net_write_command ()
    from /usr/lib/libmysqlclient.so.12
No symbol table info available.
#5  0x41a785db in simple_command ()
    from /usr/lib/libmysqlclient.so.12
No symbol table info available.
#6  0x41a7b29b in mysql_send_query ()
---Type <return> to continue, or q <return> to quit---
    from /usr/lib/libmysqlclient.so.12
No symbol table info available.
#7  0x41a7b4d0 in mysql_real_query ()
    from /usr/lib/libmysqlclient.so.12
No symbol table info available.
#8  0x41a5ab71 in QMYSQLResult::reset(QString const&) ()
    from /usr/lib/qt3/plugins/sqldrivers/libqsqlmysql.so
No symbol table info available.
#9  0x40e927be in QSqlQuery::exec(QString const&) ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#10 0x40e96640 in QSqlDatabase::exec(QString const&) const
     () from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#11 0x40709221 in MythContext::KickDatabase(QSqlDatabase*)
     (db=0x80d1248) at mythcontext.cpp:715
         result = <incomplete type>
         i = 0

         query = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80daed8, static shared_null = 0x80acc98}
#12 0x402fd776 in TVRec::SetChannel(bool) (
     this=0x80d5a58, needopen=true) at tv_rec.cpp:729
---Type <return> to continue, or q <return> to quit---
         thequery = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x4003be18, static shared_null = 0x80acc98}
         query = <incomplete type>
         inputname = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x4238bbe0, static shared_null = 0x80acc98}
         chanstr = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x4238b95c, static shared_null = 0x80acc98}
#13 0x402fb57c in TVRec::HandleStateChange() (
     this=0x80d5a58) at tv_rec.cpp:412
         tmpInternalState = kState_None
         changed = false
         startRecorder = false
         closeRecorder = false
         killRecordingFile = false
         statename = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80d1180, static shared_null = 0x80acc98}
---Type <return> to continue, or q <return> to quit---
         origname = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80d4a40, static shared_null = 0x80acc98}
#14 0x402fdca1 in TVRec::RunTV() (this=0x80d5a58)
     at tv_rec.cpp:783
No locals.
#15 0x402fdc3e in TVRec::EventThread(void*) (
     param=0x80d5a58) at tv_rec.cpp:767
         thetv = (TVRec *) 0x80d5a58
#16 0x41072811 in pthread_start_thread ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#17 0x41072915 in pthread_start_thread_event ()
    from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 2 (Thread 32769 (LWP 2752)):
#0  0x4126f537 in poll () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x4107196e in __pthread_manager ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x41071bbb in __pthread_manager_event ()
---Type <return> to continue, or q <return> to quit---
    from /lib/i686/libpthread.so.0
No symbol table info available.

Thread 1 (Thread 16384 (LWP 2744)):
#0  0x411c2568 in sigsuspend () from /lib/i686/libc.so.6
No symbol table info available.
#1  0x41074478 in __pthread_wait_for_restart_signal ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#2  0x41075e40 in __pthread_alt_lock ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#3  0x41072d07 in pthread_mutex_lock ()
    from /lib/i686/libpthread.so.0
No symbol table info available.
#4  0x40eb923c in QRecursiveMutexPrivate::lock() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#5  0x40eb9644 in QMutex::lock() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#6  0x40bc3459 in QEventLoop::processEvents(unsigned) ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#7  0x40c1f066 in QEventLoop::enterLoop() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#8  0x40c1ef08 in QEventLoop::exec() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#9  0x40c0b3d1 in QApplication::exec() ()
    from /usr/lib/qt3/lib/libqt-mt.so.3
No symbol table info available.
#10 0x0805e422 in main (argc=5, argv=0xbffff3a4)
     at main.cpp:503
         a = <incomplete type>
         logfile = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80b5180, static shared_null = 0x80acc98}
         binname = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80b51b8, static shared_null = 0x80acc98}
         verboseString = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80b51f8, static shared_null = 0x80acc98}
---Type <return> to continue, or q <return> to quit---
         daemonize = false
         printsched = false
         nosched = false
         printexpire = false
         logfd = 3
         pidfs = <incomplete type>
         db = (struct QSqlDatabase *) 0x80bdb70
         subthread = (struct QSqlDatabase *) 0x80b8678
         expthread = (struct QSqlDatabase *) 0x80bdf48
         transthread = (struct QSqlDatabase *) 0x80be9f8
         msdb = (struct QSqlDatabase *) 0x80be898
         port = 6543
         statusport = 6544
         myip = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80d1360, static shared_null = 0x80acc98}
         masterip = {static null = {
     static null = <same as static member of an already seen type>, d = 
0x80acc98, static shared_null = 0x80acc98},
   d = 0x80d1a60, static shared_null = 0x80acc98}
         ismaster = true
         runsched = true
         expdb = (struct QSqlDatabase *) 0x80bdf48
---Type <return> to continue, or q <return> to quit---
         trandb = (struct QSqlDatabase *) 0x80be9f8
#11 0x411af7f7 in __libc_start_main ()
    from /lib/i686/libc.so.6
No symbol table info available.
#0  0x4107774b in write () from /lib/i686/libpthread.so.0
(gdb)
(gdb)
(gdb)



More information about the mythtv-dev mailing list