[mythtv] backend crash on dvb channel change, backtrace included
Juha Pahkala
juhis at trinity.is-a-geek.com
Mon May 3 03:09:32 EDT 2004
Hello,
I'm experiencing a mythbackend crash when changing channels. I've tried
several cvs snapshots recently, and this bug seems to affect them all. I
have a DVB setup with one capture card. It's around 90% reproducable when
changing to one particular channel, channel #3 (MTV3 in HTV cable network
in Helsinki). With other channels, I'm not sure if I've ever seen it.
The DVB setup, including this particular channel, is know to work using
eg. mplayer. But it's really strange it seems to be only this one channel
that mythtv is having difficulties with. Attached is a backtrace of the
situation, if someone with a little bit of understanding of mythtv could
take a look at it and see what's going on, I'd be really grateful. Also,
It'd be interesting to know if anybody else has a setup that is
succesfully working here in Helsinki with 'MTV3' the channel I'm having
trouble with.
Best regards,
Juha
bash:# gdb mythbackend
GNU gdb 6.1-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-linux"...Using host libthread_db library
"/lib/tls/libthread_db.so.1".
(gdb) handle SIGPIPE nostop
Signal Stop Print Pass to program Description
SIGPIPE No Yes Yes Broken pipe
(gdb) run
Starting program: /usr/local/mythtv-x11/bin/mythbackend
[Thread debugging using libthread_db enabled]
[New Thread 1097051136 (LWP 22501)]
Starting up as the master server.
2004-05-03 08:26:41 DVB#0 Using DVB card 0, with frontend VES1820 based
DVB-C frontend.
2004-05-03 08:26:44 DVB#0 WARNING - Status: NO LOCK!
2004-05-03 08:26:45 DVB#0 WARNING - Status: CARRIER | VITERBI | SIGNAL |
NO LOCK!
2004-05-03 08:26:45 DVB#0 Successfully tuned to channel 1.
[New Thread 1107188656 (LWP 22517)]
[New Thread 1115577264 (LWP 22518)]
[New Thread 1123965872 (LWP 22519)]
[New Thread 1132354480 (LWP 22520)]
[New Thread 1140743088 (LWP 22521)]
[New Thread 1149131696 (LWP 22522)]
2004-05-03 08:26:45 mythbackend version: 0.15.20040331-1 www.mythtv.org
2004-05-03 08:26:45 Enabled verbose msgs : important general
[New Thread 1157520304 (LWP 22523)]
[New Thread 1165908912 (LWP 22524)]
[New Thread 1174297520 (LWP 22525)]
[New Thread 1182686128 (LWP 22526)]
[New Thread 1191074736 (LWP 22527)]
2004-05-03 08:26:47 Found changes in the todo list.
2004-05-03 08:26:49 Scheduled 19 items in 1.51726 seconds.
2004-05-03 08:26:49 Recording starts soon, AUTO-Startup assumed
2004-05-03 08:28:41 MainServer::HandleAnnounce Playback
2004-05-03 08:28:41 adding: server as a client (events: 0)
2004-05-03 08:28:41 Getting next free recorder : -1
2004-05-03 08:28:41 MainServer::HandleAnnounce Playback
2004-05-03 08:28:41 adding: server as a client (events: 1)
2004-05-03 08:28:41 MainServer::HandleAnnounce Playback
2004-05-03 08:28:41 adding: server as a client (events: 0)
[New Thread 1201564592 (LWP 22552)]
2004-05-03 08:28:42 MainServer::HandleAnnounce Playback
2004-05-03 08:28:42 adding: server as a client (events: 0)
2004-05-03 08:28:42 adding: server as a remote ringbuffer
2004-05-03 08:28:42 Changing from None to WatchingLiveTV
[New Thread 1211104176 (LWP 22553)]
2004-05-03 08:28:42 DVB#0 Recorder: Card opened successfully.
[New Thread 1219492784 (LWP 22554)]
Audiostream: Layer: 1 BRate: 224 kb/s Freq: 48.0 kHz
Videostream: ASPECT: 4:3 Size = 720x576 FRate: 25 fps BRate: 10.00 Mbit/s
2004-05-03 08:29:19 DVB#0 WARNING - Status: NO LOCK!
2004-05-03 08:29:19 DVB#0 Successfully tuned to channel 3.
2004-05-03 08:29:19 DVB#0 WARNING - Uncorrectable error in packet, dropped.
Audiostream: Layer: 2 BRate: 32 kb/s Freq: 48.0 kHz
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1211104176 (LWP 22553)]
0x4039e23c in ps_pes (p=0x80e6848) at dvbdev/transform.c:1976
1976 if (pv->has_vi && pv->vi.bit_rate && !pv->muxr){
Current language: auto; currently c
Thread 15 (Thread 1219492784 (LWP 22554)):
#0 0x4134acdc in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1 0x4134ab18 in sleep () from /lib/tls/libc.so.6
No symbol table info available.
#2 0x4037576d in DVBRecorder::QualityMonitorThread (this=0x80df1d8)
at dvbrecorder.cpp:817
fe_stats = {snr = 1074000112, ss = 1078984703, ber = 0,
ub = 4294967295, status = 31}
cardid = 9
#3 0x40375d7d in DVBRecorder::QualityMonitorHelper (self=0x80df1d8)
at dvbrecorder.cpp:861
No locals.
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 14 (Thread 1211104176 (LWP 22553)):
#0 0x4039e23c in ps_pes (p=0x80e6848) at dvbdev/transform.c:1976
check = 1077537389
pbuf =
"Ð÷/H\224KO at H÷/H¡x7@Ð÷/H(\025\016\b\005p\034B\001\000\000"
SCR = 0
pv = (ipack *) 0x78
pa = (ipack *) 0x80e6848
#1 0x4039e6b4 in send_ipack (p=0x80e6848) at dvbdev/transform.c:2046
streamid = 0
off = 1211103208
ac3_off = 0
ai = {layer = 1208025088, bit_rate = 1078938516,
frequency = 1211103144, mode = 1077373643, mode_extension = 1211103192,
emphasis = 1078938516, framesize = 1211103176, off = 1077373761}
nframes = 0
f = 0
#2 0x4039f4b9 in instant_repack (buf=0x80f64a6 "", count=110, p=0x80e6848)
at dvbdev/transform.c:2389
0 l = 96
pl = (short unsigned int *) 0x80f64aa
c = 110
#3 0x40374780 in DVBRecorder::ReadFromDMX (this=0x80df1d8)
at dvbrecorder.cpp:583
pes_offset = 74
pid = 128
cc = 2 '\002'
content = 3 '\003'
ip = (ipack *) 0x80e6848
pkts = 43
curpkt = 25
readsz = 8084
pktbuf = (
unsigned char *) 0x80f6458 "G@\2002IQß¡½x~»\003\237¸t", 'ÿ'
<repeats 62 times>
#4 0x40373002 in DVBRecorder::StartRecording (this=0x80df1d8)
at dvbrecorder.cpp:453
ret = 1
dataflow = 1
polls = {fd = 25, events = 1, revents = 1}
qualthread = 1219492784
qthreadexists = true
#5 0x4034cff6 in SpawnEncode (param=0x80df200) at tv_rec.cpp:40
nvr = (class RecorderBase *) 0x80df200
#6 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#7 0x00000000 in ?? ()
No symbol table info available.
Thread 13 (Thread 1201564592 (LWP 22552)):
#0 0x4134acdc in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1 0x41373ffb in usleep () from /lib/tls/libc.so.6
No symbol table info available.
#2 0x4023f047 in ThreadedFileWriter::DiskLoop (this=0x80e53f8)
at RingBuffer.cpp:212
size = 0
timer = {ds = 30556711}
#3 0x4023e7b1 in ThreadedFileWriter::boot_writer (wotsit=0x80e53f8)
at RingBuffer.cpp:91
fw = (ThreadedFileWriter *) 0x80e53f8
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 12 (Thread 1191074736 (LWP 22527)):
#0 0x411b20e5 in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib/tls/libpthread.so.0
No symbol table info available.
#1 0x40f0c478 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2 0x0807ea0f in ProcessRequestThread::run (this=0x80d48e8)
at mainserver.cpp:61
No locals.
#3 0x40c1cf3a in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 11 (Thread 1182686128 (LWP 22526)):
#0 0x411b4236 in __lll_mutex_lock_wait () from /lib/tls/libpthread.so.0
No symbol table info available.
#1 0x411b215e in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib/tls/libpthread.so.0
No symbol table info available.
#2 0x40f0c478 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#3 0x0807ea0f in ProcessRequestThread::run (this=0x80d47a0)
at mainserver.cpp:61
No locals.
#4 0x40c1cf3a in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#5 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#6 0x00000000 in ?? ()
No symbol table info available.
Thread 10 (Thread 1174297520 (LWP 22525)):
#0 0x411b20e5 in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib/tls/libpthread.so.0
No symbol table info available.
#1 0x40f0c478 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2 0x0807ea0f in ProcessRequestThread::run (this=0x80d4658)
at mainserver.cpp:61
No locals.
#3 0x40c1cf3a in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 9 (Thread 1165908912 (LWP 22524)):
#0 0x411b20e5 in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib/tls/libpthread.so.0
No symbol table info available.
#1 0x40f0c478 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2 0x0807ea0f in ProcessRequestThread::run (this=0x80d4510)
at mainserver.cpp:61
No locals.
#3 0x40c1cf3a in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 8 (Thread 1157520304 (LWP 22523)):
#0 0x411b20e5 in pthread_cond_wait@@GLIBC_2.3.2 ()
from /lib/tls/libpthread.so.0
No symbol table info available.
#1 0x40f0c478 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2 0x0807ea0f in ProcessRequestThread::run (this=0x80d4400)
at mainserver.cpp:61
No locals.
#3 0x40c1cf3a in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 7 (Thread 1149131696 (LWP 22522)):
#0 0x4134acdc in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1 0x4134ab18 in sleep () from /lib/tls/libc.so.6
No symbol table info available.
#2 0x0809454c in Transcoder::TranscodePoll (this=0x80d4108)
at transcoder.cpp:419
transData = (TranscodeData *) 0x0
#3 0x08094635 in Transcoder::TranscodePollThread (param=0x80d4108)
at transcoder.cpp:437
thetv = (Transcoder *) 0x80d4108
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 6 (Thread 1140743088 (LWP 22521)):
#0 0x4134acdc in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1 0x4134ab18 in sleep () from /lib/tls/libc.so.6
No symbol table info available.
#2 0x0809688e in HouseKeeper::RunHouseKeeping (this=0x80d3c20)
at housekeeper.cpp:152
period = 0
maxhr = 0
minhr = 0
#3 0x080973bf in HouseKeeper::doHouseKeepingThread (param=0x80d3c20)
at housekeeper.cpp:211
hkeeper = (HouseKeeper *) 0x80d3c20
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 5 (Thread 1132354480 (LWP 22520)):
#0 0x4134acdc in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1 0x4134ab18 in sleep () from /lib/tls/libc.so.6
No symbol table info available.
#2 0x080549db in AutoExpire::RunExpirer (this=0x80d3b18) at
autoexpire.cpp:121
statbuf = {f_type = 61267, f_bsize = 4096, f_blocks = 28845040,
f_bfree = 8897470, f_bavail = 7725263, f_files = 14663680,
f_ffree = 14663511, f_fsid = {__val = {0, 0}}, f_namelen = 255,
f_frsize = 4096, f_spare = {0, 0, 0, 0, 0}}
freespace = 29
minFree = 0
recordfileprefix = {static null = {
static null = <same as static member of an already seen type>,
d = 0x80ae070, static shared_null = 0x80ae070}, d = 0x80d4070,
static shared_null = 0x80ae070}
#3 0x08054a55 in AutoExpire::ExpirerThread (param=0x80d3b18)
at autoexpire.cpp:128
expirer = (AutoExpire *) 0x80d3b18
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 4 (Thread 1123965872 (LWP 22519)):
#0 0x4134acdc in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1 0x4134ab18 in sleep () from /lib/tls/libc.so.6
No symbol table info available.
#2 0x08087780 in Scheduler::RunScheduler (this=0x80d8688)
at scheduler.cpp:1047
statuschanged = false
recIter = {<std::_List_iterator_base> = {
_M_node = 0x80e0fc8}, <No data fields>}
prerollseconds = 0
secsleft = 40
nexttv = (EncoderLink *) 0x0
nextRecording = (ProgramInfo *) 0x80d6a70
nextrectime = {d = {jd = 2453129}, t = {ds = 30600000}}
curtime = {d = {jd = 2453129}, t = {ds = 30559536}}
lastupdate = {d = {jd = 2453129}, t = {ds = 30407505}}
recordfileprefix = {static null = {
static null = <same as static member of an already seen type>,
d = 0x80ae070, static shared_null = 0x80ae070}, d = 0x80d3fd0,
static shared_null = 0x80ae070}
startIter = {<std::_List_iterator_base> = {
_M_node = 0x80e0fc8}, <No data fields>}
blockShutdown = false
idleSince = {d = {jd = 0}, t = {ds = 0}}
idleTimeoutSecs = 0
idleWaitForRecordingTime = 15
firstRun = false
fillstart = {tv_sec = 1083562007, tv_usec = 573018}
fillend = {tv_sec = 1083562009, tv_usec = 90276}
#3 0x08088065 in Scheduler::SchedulerThread (param=0x80d8688)
at scheduler.cpp:1156
sched = (Scheduler *) 0x80d8688
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 3 (Thread 1115577264 (LWP 22518)):
#0 0x4134acdc in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1 0x41373ffb in usleep () from /lib/tls/libc.so.6
No symbol table info available.
#2 0x40352710 in TVRec::RunTV (this=0x80d3da8) at tv_rec.cpp:787
No locals.
#3 0x403526a5 in TVRec::EventThread (param=0x80d3da8) at tv_rec.cpp:769
thetv = (TVRec *) 0x80d3da8
#4 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5 0x00000000 in ?? ()
No symbol table info available.
Thread 2 (Thread 1107188656 (LWP 22517)):
#0 0x413710b5 in poll () from /lib/tls/libc.so.6
No symbol table info available.
#1 0x4039512c in DVBSections::ThreadLoop (this=0x80db050)
at dvbsections.cpp:189
ret = 1
buffer = "\002±¯\000\021ß\000\000
\200ð\023\f\004\200´\201h\016\003ÀM\032\020\006ÀM\032À\b\000\002â\000ð\020\002\003\032H_R\001\000\016\003ÀEÙ\006\001\002\004â\212ð\021\003\001g\n\004fin\000R\001\212\016\003À\002v\006é\021ð\f\016\003À\003\037V\005fin\t\000\006ä\003ð\017\016\003À\000\200Y\bfin\021\000\001\0002\006ä\004ð\017\016\003À\000\200Y\bswe\021\000\002\0002\005ì0ð\a\016\003À\0004o\000\vì&ð$\016\003À\000\003R\001e\023\005\000\000\f&\000\024\r\000e\000\000\bÿÿÿÿÿÿÿÿf\004\000ð\000\001\vì'ð$\016\003À\000\003R\001Ê\023\005\000"...
head = {table_id = 2 '\002', section_length = 431, table_id_ext = 17,
current_next = true, version = 15 '\017', section_number = 0 '\0',
section_last = 0 '\0'}
#2 0x403950bb in DVBSections::ThreadHelper (cls=0x80db050)
at dvbsections.cpp:174
No locals.
#3 0x411af974 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#4 0x00000000 in ?? ()
No symbol table info available.
Thread 1 (Thread 1097051136 (LWP 22501)):
#0 0x411b242f in pthread_cond_signal@@GLIBC_2.3.2 ()
from /lib/tls/libpthread.so.0
No symbol table info available.
#1 0x40f0c1c2 in QWaitCondition::wakeOne () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2 0x0807cc51 in ProcessRequestThread::setup (this=0x80d47a0,
sock=0x80d6758)
at mainserver.cpp:42
No locals.
#3 0x08062880 in MainServer::readSocket (this=0x80d42e8) at
mainserver.cpp:171
socket = (struct QSocket *) 0x80d6758
testsock = (PlaybackSock *) 0x80e4fa0
prt = (ProcessRequestThread *) 0x80d47a0
#4 0x08097aa4 in MainServer::qt_invoke (this=0x80d42e8, _id=6,
_o=0xbfffe090)
at moc_mainserver.cpp:100
No locals.
#5 0x40c84dac in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#6 0x40c84be4 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#7 0x40fd1bfe in QSocket::readyRead () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#8 0x40e73327 in QSocket::sn_read () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#9 0x40fd1ce3 in QSocket::qt_invoke () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#10 0x40c84dac in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#11 0x40c84f0d in QObject::activate_signal () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#12 0x40fa3142 in QSocketNotifier::activated () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#13 0x40ca0d30 in QSocketNotifier::event () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#14 0x40c2948f in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#15 0x40c28a9b in QApplication::notify () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#16 0x40c191ca in QEventLoop::activateSocketNotifiers ()
from /usr/lib/libqt-mt.so.3
No symbol table info available.
#17 0x40bd4b28 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#18 0x40c3ccf8 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#19 0x40c3cba8 in QEventLoop::exec () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#20 0x40c296e1 in QApplication::exec () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#21 0x08060479 in main (argc=1, argv=0xbffffa34) at main.cpp:609
a = <incomplete type>
logfile = {static null = {
static null = <same as static member of an already seen type>,
d = 0x80ae070, static shared_null = 0x80ae070}, d = 0x80b61f8,
static shared_null = 0x80ae070}
binname = {static null = {
static null = <same as static member of an already seen type>,
d = 0x80ae070, static shared_null = 0x80ae070}, d = 0x80b6230,
static shared_null = 0x80ae070}
verboseString = {static null = {
static null = <same as static member of an already seen type>,
d = 0x80ae070, static shared_null = 0x80ae070}, d = 0x80b6270,
static shared_null = 0x80ae070}
daemonize = false
printsched = false
nosched = false
printexpire = false
logfd = -1
pidfs = <incomplete type>
db = (struct QSqlDatabase *) 0x80be158
subthread = (struct QSqlDatabase *) 0x80be520
expthread = (struct QSqlDatabase *) 0x80bfce0
hkthread = (struct QSqlDatabase *) 0x80c0050
transthread = (struct QSqlDatabase *) 0x80bf018
msdb = (struct QSqlDatabase *) 0x80be888
port = 6543
statusport = 6544
myip = {static null = {
static null = <same as static member of an already seen type>,
d = 0x80ae070, static shared_null = 0x80ae070}, d = 0x80d37d8,
static shared_null = 0x80ae070}
masterip = {static null = {
static null = <same as static member of an already seen type>,
d = 0x80ae070, static shared_null = 0x80ae070}, d = 0x80d36a8,
static shared_null = 0x80ae070}
ismaster = true
runsched = true
expdb = (struct QSqlDatabase *) 0x80bfce0
hkdb = (struct QSqlDatabase *) 0x80c0050
trandb = (struct QSqlDatabase *) 0x80bf018
0x4039e23c 1976 if (pv->has_vi && pv->vi.bit_rate
&& !pv->muxr){
More information about the mythtv-dev
mailing list