[mythtv] 0.14 Backend Segfault

Poobah poobah at techsquadron.com
Mon Apr 19 23:16:25 EDT 2004


I get (seemingly) random backend segfaults about once every few days and
have to restart mythbackend.  I finally caught one in gdb, and I think
it happened when I tried to pull up the mythweb listings.

The error I got on the mythweb page:

User Notice at /var/www/htdocs/mythweb/includes/mythbackend.php, line
122:
Unexpected response to MYTH_PROTO_VERSION:

And the gdb trace:

Program received signal SIGPIPE, Broken pipe.

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 10195)]
0x406ee2c2 in WriteStringList(QSocket*, QStringList&) (socket=0x6,
    list=@0xbffff340) at util.cpp:314
314             int temp = socket->writeBlock(payload.data() + written,
size);
(gdb) thread apply all bt full

Thread 23 (Thread 344086 (LWP 10375)):
#0  0x41083b7b in read () from /lib/libpthread.so.0
No symbol table info available.
#1  0x40409e90 in __JCR_LIST__ () from
/usr/local/lib/libmythtv-0.14.so.0
No symbol table info available.

Thread 22 (Thread 327701 (LWP 10370)):
#0  0x41257c36 in nanosleep () from /lib/libc.so.6
No symbol table info available.

Thread 12 (Thread 163851 (LWP 10227)):
#0  0x411d5411 in do_sigsuspend () from /lib/libc.so.6
No symbol table info available.
#1  0x411d54d7 in sigsuspend () from /lib/libc.so.6
No symbol table info available.
#2  0x410801e8 in __pthread_wait_for_restart_signal ()
   from /lib/libpthread.so.0
No symbol table info available.
#3  0x4107cd78 in pthread_cond_wait at GLIBC_2.0 () from
/lib/libpthread.so.0
No symbol table info available.
#4  0x40dd7c18 in QWaitCondition::wait(QMutex*, unsigned long) ()
   from /opt/qt/lib/libqt-mt.so.3
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#5  0x080f13b4 in ?? ()
No symbol table info available.
#6  0xbe5ffa64 in ?? ()
No symbol table info available.
#7  0x08078e63 in std::vector<ProcessRequestThread*,
std::allocator<ProcessRequestThread*> >::push_back(ProcessRequestThread*
const&) (this=0xbe5ffbe0,
    __x=@0x4d4f5246) at stl_vector.h:599
No locals.
Previous frame inner to this frame (corrupt stack?)
0x406ee2c2      314             int temp =
socket->writeBlock(payload.data() + written, size);
(gdb)


I'm running a Linux From Scratch system, and apparently pulled a lot of
the debugging symbols from libc.  If these are needed, I can re-compile
them and try to catch another one.  I'll also see if it is reproducible
through mythweb.

Other machine specs (if important):
P4 1.8Ghz
Dual PVR-250
Separate Front-end/back-end configuration

Thanx!

Mark Hanson
poobah at techsquadron.com


More information about the mythtv-dev mailing list