[mythtv] Backend crashes almost daily

flo flo at flobittner.de
Sun Oct 7 18:51:24 UTC 2007


Crashed again!

In pespacket.cpp i changed the return to false:
    {
        VERBOSE(VB_RECORD, "AddTSPacket: Out of sync!!! "
                "Need to wait for next payloadStart" +
                QString(" PID: 0x%1, continuity counter: %2 (expected %3).")
                .arg(packet->PID(),0,16).arg(cc).arg(ccExp));
        return false;
    }

After 10 hours i got this now:

*************************************** gdb.txt
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1090525504 (LWP 29843)]
EITCache::DropChannel (this=0x773ad0, channel=4366348010) 
at /usr/lib/qt3/include/qmap.h:675
675             return sh->node_count;

Thread 420 (Thread 1241594176 (LWP 24135)):
#0  0x00002aba6ee07302 in __select_nocancel () from /lib64/libc.so.6
No symbol table info available.
#1  0x00002aba69e6b8eb in DVBSignalMonitor::RunTableMonitorTS 
(this=0x2aaaac02ce50) at dvbsignalmonitor.cpp:367
        timeout = {tv_sec = 0, tv_usec = 32000}
        len = 376
        remainder = 0
        buffer_size = 2820000
        buffer = <value optimized out>
        dvr_fname = {static null = {static null = <same as static member of an 
already seen type>, d = 0x705e20, static share
d_null = 0x705e20}, d = 0xaed5d0, static shared_null = 0x705e20}
        dvr_fd = 27
        fd_select_set = {fds_bits = {0 <repeats 16 times>}}
#2  0x00002aba69e6d3a9 in DVBSignalMonitor::TableMonitorThread (param=0x1c) at 
dvbsignalmonitor.cpp:173
No locals.
#3  0x00002aba6e3d409e in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#4  0x00002aba6ee0d4cd in clone () from /lib64/libc.so.6
No symbol table info available.
#5  0x0000000000000000 in ?? ()
No symbol table info available.
...
*************************************** myth.log

2007-10-07 20:01:15.119 TVRec(2): Got good signal
2007-10-07 20:01:15.136 TVRec(2): ClearFlags(WaitingForSignal,) -> 
RunMainLoop,AskAllowRecording,SignalMonitorRunning,EITScannerRunning,
2007-10-07 20:01:15.146 DVBSM(3)::AddPIDFilter(0x12): 
2007-10-07 20:01:15.151 DVBSM(3)::AddPIDFilter(0xb11): 
2007-10-07 20:01:15.152 DVBSM(3)::AddPIDFilter(0xb12): 
2007-10-07 20:01:17.203 DTVSM(3)::SetNIT(): net_id = 133
2007-10-07 20:01:17.215 SM(3)::AddFlags: Seen(NIT,) Match() Wait()
2007-10-07 20:01:53.350 MainServer::HandleAnnounce Monitor
2007-10-07 20:01:53.446 adding: server as a client (events: 0)
2007-10-07 20:03:05.189 EITScanner: Added 178 EIT Events
2007-10-07 20:03:05.190 EITScanner: Added 5 EIT Events
2007-10-07 20:04:30.471 TVRec(1): SetChannel() -- begin
2007-10-07 20:04:30.538 TVRec(1): ClearFlags(RingBufferReady,) -> 
RunMainLoop,SignalMonitorRunning,EITScannerRunning,
2007-10-07 20:04:30.539 TVRec(1): Request: Program(no) channel(29) input() 
flags(EITScan,)
2007-10-07 20:04:30.559 TVRec(1): TeardownSignalMonitor() -- begin
2007-10-07 20:04:30.560 DVBSM(2)::Stop: begin
2007-10-07 20:04:30.573 SM(2)::Stop: begin
2007-10-07 20:04:30.671 SM(2)::Stop: end
2007-10-07 20:04:30.675 DVBSM(2): RunTableMonitorTS(): shutdown
2007-10-07 20:04:30.687 DVBSM(2)::RemovePIDFilter(0x0): 
2007-10-07 20:04:30.688 DVBSM(2)::RemovePIDFilter(0x10): 
2007-10-07 20:04:30.695 DVBSM(2)::RemovePIDFilter(0x11): 
2007-10-07 20:04:30.715 DVBSM(2)::RemovePIDFilter(0x12): 
2007-10-07 20:04:30.723 DVBSM(2)::RemovePIDFilter(0x64): 
2007-10-07 20:04:30.724 DVBSM(2)::RemovePIDFilter(0xb11): 
2007-10-07 20:04:30.731 DVBSM(2)::RemovePIDFilter(0xb12): 
2007-10-07 20:04:30.739 DVBSM(2): RunTableMonitorTS(): end
2007-10-07 20:04:30.771 DVBSM(2)::Stop: end
2007-10-07 20:04:30.772 TVRec(1): TeardownSignalMonitor() -- end
2007-10-07 20:04:30.773 TVRec(1): ClearFlags(SignalMonitorRunning,) -> 
RunMainLoop,EITScannerRunning,
2007-10-07 20:04:30.774 TVRec(1): ClearFlags(PENDINGACTIONS,) -> 
RunMainLoop,EITScannerRunning,
2007-10-07 20:04:30.774 DVBChan(2): Opening DVB channel
2007-10-07 20:04:30.775 DVBChan(2): SetChannelByString(29): 
2007-10-07 20:04:30.796 DVBChan(2): Frequency: 12460500 Symbol Rate: 27500000 
Pol: h Inv: Auto
2007-10-07 20:04:30.798 DVBChan(2): Old Params: Frequency: 11719500 Symbol 
Rate: 27500000 Pol: h Inv: Auto
			DVBChan(2): New Params: Frequency: 12460500 Symbol Rate: 27500000 Pol: h 
Inv: Auto
2007-10-07 20:04:30.798 DVBChan(2): Tune(): Tuning to 1860500kHz
2007-10-07 20:04:30.801 dvbchannel.cpp:wait_for_backend: Status: 
Signal,Carrier,
2007-10-07 20:04:30.802 DVBChan(2): Tune(): Frequency tuning successful.
2007-10-07 20:04:30.803 DVBChan(2): SetChannelByString(29): Tuned to 
frequency.
2007-10-07 20:04:30.804 TVRec(1): Starting Signal Monitor
2007-10-07 20:04:30.804 TVRec(1): SetupSignalMonitor(1, 0)
2007-10-07 20:04:30.805 DVBChan(2): Opening DVB channel
2007-10-07 20:04:30.807 SM(2)::AddFlags: Seen() Match() Wait(Sig,SNR,BER,UB,)
2007-10-07 20:04:30.808 DVBSM(2)::constructor(): initial flags 0x7400000
2007-10-07 20:04:31.111 TVRec(1): Signal monitor successfully created
2007-10-07 20:04:31.204 TVRec(1): Setting up table monitoring.
2007-10-07 20:04:31.215 Using profile 'Live TV' to record
2007-10-07 20:04:31.236 TVRec(1): DVB service_id 1793 on net_id 133 tsid 5
2007-10-07 20:04:31.243 DTVSM(2)::SetDVBService(transport_id: 5, network_id: 
133, service_id: 1793): 
2007-10-07 20:04:31.247 SM(2)::RemoveFlags: Seen(PMT,SDT,) Match(PMT,SDT,) 
Wait()
2007-10-07 20:04:31.255 SM(2)::AddFlags: Seen() Match() Wait(PMT,SDT,)
2007-10-07 20:04:31.259 SM(2)::AddFlags: Seen() Match() Wait(PMT,SDT,)
2007-10-07 20:04:31.268 SM(2)::AddFlags: Seen() Match() Wait()
2007-10-07 20:04:31.268 TVRec(1): Successfully set up DVB table monitoring.
2007-10-07 20:04:31.269 SM(2)::Start: begin
2007-10-07 20:04:31.283 DVBSM(2)::UpdateValues: Signal Locked
2007-10-07 20:04:31.284 SM(2)::Start: end
2007-10-07 20:04:31.299 TVRec(1): SetFlags(SignalMonitorRunning,) -> 
RunMainLoop,SignalMonitorRunning,EITScannerRunning,
2007-10-07 20:04:31.300 TVRec(1): ClearFlags(WaitingForSignal,) -> 
RunMainLoop,SignalMonitorRunning,EITScannerRunning,
2007-10-07 20:04:31.301 TVRec(1): SetFlags(WaitingForSignal,) -> 
RunMainLoop,WaitingForSignal,SignalMonitorRunning,EITScannerRunning,
2007-10-07 20:04:31.302 TVRec(1): ClearFlags(NeedToStartRecorder,) -> 
RunMainLoop,WaitingForSignal,SignalMonitorRunning,EITScannerRunning,
2007-10-07 20:04:31.300 DVBSM(2)::UpdateValues: Waiting for table monitor to 
start
2007-10-07 20:04:31.304 DVBSM(2)::UpdateValues: Table monitor started
2007-10-07 20:04:31.303 TVRec(1): SetChannel() -- end
2007-10-07 20:04:31.303 DVBSM(2): RunTableMonitorTS(): begin (# of pids 3)
2007-10-07 20:04:31.311 DVBSM(2)::AddPIDFilter(0x0): 
2007-10-07 20:04:31.312 DVBSM(2)::AddPIDFilter(0x10): 
2007-10-07 20:04:31.313 DVBSM(2)::AddPIDFilter(0x11): 
2007-10-07 20:04:31.307 EITScanner: Now looking for EIT data on multiplex of 
channel 29

***************************************

It's not the same channel as before, this channel also was set to 
useonairguide=1. Did i mess up the database when i used some sql commends and 
set useonairguide=0 for channels i don't use? How does the crawler use this 
attribute? Is it ok to activate only some channels on a transponder?

Or could my hardware be damaged, i have some problems with 2 transponders 
whose channels have interferences!?

Thanks,
Flo


More information about the mythtv-dev mailing list