Opened 11 years ago

Closed 11 years ago

#11616 closed Bug Report - General (fixed)

after f0d803b mythcommflag stalls on "Searching for Logo"

Reported by: warpme@… Owned by: JYA
Priority: minor Milestone: 0.27
Component: MythTV - Mythcommflag Version: Master Head
Severity: medium Keywords: commflag
Cc: Ticket locked: no

Description

After https://github.com/MythTV/mythtv/commit/f0d803b21de2321eddf889c0d07601d52ee25ad3 commflag stalls on "Searching for Logo". Reverting this commit seems to solve problem. I'm on g92f9a77-dirty-20130622. Here is backtrace from stalled mythcommflag

Thread 16 (Thread 0x7f069e5fe700 (LWP 1860)):
#0  0x00007f06b04ccc61 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f06afe31ae7 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007f06b0d753b3 in LoggerThread::run (this=0x156de80) at logging.cpp:389
#3  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x156dc00) at mthread.cpp:79
#4  0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#5  0x00007f06aaaf93b4 in ?? () from /usr/lib64/libGL.so.1
#6  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#7  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 15 (Thread 0x7f069ddfd700 (LWP 1861)):
#0  0x00007f06af2eb7d3 in epoll_wait () from /lib/libc.so.6
#1  0x00007f06a91fe0c1 in zmq::epoll_t::loop() () from /usr/lib/libmythzmq.so.1
#2  0x00007f06a920e7a6 in thread_routine () from /usr/lib/libmythzmq.so.1
#3  0x00007f06aaaf93b4 in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#5  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 14 (Thread 0x7f069d5fc700 (LWP 1862)):
#0  0x00007f06af2eb7d3 in epoll_wait () from /lib/libc.so.6
#1  0x00007f06a91fe0c1 in zmq::epoll_t::loop() () from /usr/lib/libmythzmq.so.1
#2  0x00007f06a920e7a6 in thread_routine () from /usr/lib/libmythzmq.so.1
#3  0x00007f06aaaf93b4 in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#5  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 13 (Thread 0x7f069cdfb700 (LWP 1863)):
#0  0x00007f06af2eb7d3 in epoll_wait () from /lib/libc.so.6
#1  0x00007f06a91fe0c1 in zmq::epoll_t::loop() () from /usr/lib/libmythzmq.so.1
#2  0x00007f06a920e7a6 in thread_routine () from /usr/lib/libmythzmq.so.1
#3  0x00007f06aaaf93b4 in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#5  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 12 (Thread 0x7f0697fff700 (LWP 1864)):
#0  0x00007f06af2eb7d3 in epoll_wait () from /lib/libc.so.6
#1  0x00007f06a91fe0c1 in zmq::epoll_t::loop() () from /usr/lib/libmythzmq.so.1
#2  0x00007f06a920e7a6 in thread_routine () from /usr/lib/libmythzmq.so.1
#3  0x00007f06aaaf93b4 in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#5  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 11 (Thread 0x7f06977fe700 (LWP 1865)):
#0  0x00007f06af2eb7d3 in epoll_wait () from /lib/libc.so.6
#1  0x00007f06a91fe0c1 in zmq::epoll_t::loop() () from /usr/lib/libmythzmq.so.1
#2  0x00007f06a920e7a6 in thread_routine () from /usr/lib/libmythzmq.so.1
#3  0x00007f06aaaf93b4 in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#5  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 10 (Thread 0x7f0696ffd700 (LWP 1866)):
#0  0x00007f06b04cf9bd in nanosleep () from /lib/libpthread.so.0
#1  0x00007f06b0dcbc5c in MythSystemLegacyManager::run (this=0x16bbfe0) at mythsystemunix.cpp:283
#2  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x1690a20) at mthread.cpp:79
#3  0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007f06aaaf93b4 in ?? () from /usr/lib64/libGL.so.1
#5  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#6  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 9 (Thread 0x7f06967fc700 (LWP 1867)):
---Type <return> to continue, or q <return> to quit---
#0  0x00007f06b04cf9bd in nanosleep () from /lib/libpthread.so.0
#1  0x00007f06b0dcd830 in MythSystemLegacySignalManager::run (this=0x16aac00) at mythsystemunix.cpp:515
#2  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x16aac80) at mthread.cpp:79
#3  0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#5  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 8 (Thread 0x7f0695ffb700 (LWP 1868)):
#0  0x00007f06b04cc8f4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f06afe31b8b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007f06b0dcad3e in MythSystemLegacyIOHandler::run (this=0x157c770) at mythsystemunix.cpp:100
#3  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x1573fc0) at mthread.cpp:79
#4  0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#5  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#6  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 7 (Thread 0x7f06957fa700 (LWP 1869)):
#0  0x00007f06b04cc8f4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f06afe31b8b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007f06b0dcad3e in MythSystemLegacyIOHandler::run (this=0x158c840) at mythsystemunix.cpp:100
#3  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x1696db0) at mthread.cpp:79
#4  0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#5  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#6  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 6 (Thread 0x7f068ffff700 (LWP 1873)):
#0  0x00007f06b04ccc61 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f06afe31ae7 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007f06b0cfa6f9 in MythSignalingTimer::run (this=0x7f069800e4b0) at mythsignalingtimer.cpp:84
#3  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x7f069800e510) at mthread.cpp:79
#4  0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#5  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#6  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 5 (Thread 0x7f0686bd0700 (LWP 1877)):
#0  0x00007f06b04ccc61 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f06afe31d1e in QWaitCondition::wait(QReadWriteLock*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007f06b1306a5a in RingBuffer::run (this=0x16b43f0) at ringbuffer.cpp:784
#3  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x1574090) at mthread.cpp:79
#4  0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#5  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#6  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 4 (Thread 0x7f0685fce700 (LWP 1878)):
#0  0x00007f06af2e306f in poll () from /lib/libc.so.6
#1  0x00007f06a8246774 in ?? () from /usr/lib/libglib-2.0.so.0
#2  0x00007f06a8246894 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f06aff59196 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007f06aff29f8f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007f06aff2a218 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f06afe2e6f0 in QThread::exec() () from /usr/lib/libQtCore.so.4
#7  0x00007f06b0ccc7be in MThreadInternal::QThreadRun (this=0x7f065401ff60) at mthread.cpp:81
#8  0x00007f06b0ccc0c8 in MThread::run (this=0x7f065401fee0) at mthread.cpp:321
#9  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x7f065401ff60) at mthread.cpp:79
#10 0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#11 0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#12 0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 3 (Thread 0x7f06857cd700 (LWP 1880)):
#0  0x00007f06af2e306f in poll () from /lib/libc.so.6
#1  0x00007f06a8246774 in ?? () from /usr/lib/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#2  0x00007f06a8246894 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007f06aff59196 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007f06aff29f8f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007f06aff2a218 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f06afe2e6f0 in QThread::exec() () from /usr/lib/libQtCore.so.4
#7  0x00007f06b0ccc7be in MThreadInternal::QThreadRun (this=0x7f0654021430) at mthread.cpp:81
#8  0x00007f06b0ccc0c8 in MThread::run (this=0x7f065401efc0) at mthread.cpp:321
#9  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x7f0654021430) at mthread.cpp:79
#10 0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#11 0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#12 0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 2 (Thread 0x7f0694ff9700 (LWP 1882)):
#0  0x00007f06b15ae130 in av_q2d (a=...) at ../../external/FFmpeg/libavutil/rational.h:70
#1  0x00007f06b15c9ac9 in AvFormatDecoder::ProcessAudioPacket (this=0x15ff800, curstream=0x1655e20, pkt=0x7f06702159c0, decodetype=kDecodeAV)
    at avformatdecoder.cpp:4399
#2  0x00007f06b15cbd2e in AvFormatDecoder::GetFrame (this=0x15ff800, decodetype=kDecodeAV) at avformatdecoder.cpp:4759
#3  0x00007f06b154a3d5 in MythPlayer::DecoderGetFrame (this=0x15b6070, decodetype=kDecodeAV, unsafe=false) at mythplayer.cpp:3307
#4  0x00007f06b1549dc7 in MythPlayer::DecoderLoop (this=0x15b6070, pause=false) at mythplayer.cpp:3228
#5  0x00007f06b1532d55 in DecoderThread::run (this=0x167c990) at mythplayer.cpp:110
#6  0x00007f06b0ccc7a3 in MThreadInternal::run (this=0x1658220) at mthread.cpp:79
#7  0x00007f06afe3168b in ?? () from /usr/lib/libQtCore.so.4
#8  0x00007f06b04c8e0e in start_thread () from /lib/libpthread.so.0
#9  0x00007f06af2eb1ed in clone () from /lib/libc.so.6

Thread 1 (Thread 0x7f06b2d387c0 (LWP 1859)):
#0  0x00007f06af2bcb5d in nanosleep () from /lib/libc.so.6
#1  0x00007f06af2e55d4 in usleep () from /lib/libc.so.6
#2  0x00007f06b154d1f6 in MythPlayer::WaitForSeek (this=0x15b6070, frame=199, seeksnap_wanted=0) at mythplayer.cpp:3831
#3  0x00007f06b154cf3f in MythPlayer::DoFastForward (this=0x15b6070, frames=50, inaccuracy=0) at mythplayer.cpp:3781
#4  0x00007f06b154d065 in MythPlayer::DoJumpToFrame (this=0x15b6070, frame=200, inaccuracy=0) at mythplayer.cpp:3799
#5  0x00007f06b1550450 in MythPlayer::GetRawVideoFrame (this=0x15b6070, frameNumber=200) at mythplayer.cpp:4437
#6  0x000000000040abff in ClassicLogoDetector::searchForLogo (this=0x165e550, player=0x15b6070) at ClassicLogoDetector.cpp:118
#7  0x000000000040ff8a in ClassicCommDetector::go (this=0x15f5c70) at ClassicCommDetector.cpp:369
#8  0x0000000000451656 in DoFlagCommercials (program_info=0x7fffe154a670, showPercentage=false, fullSpeed=false, jobid=27492, cfp=0x15b6070,
    commDetectMethod=COMM_DETECT_ALL, outputfilename=..., useDB=true) at main.cpp:584
#9  0x0000000000453876 in FlagCommercials (program_info=0x7fffe154a670, jobid=27492, outputfilename=..., useDB=true, fullSpeed=false) at main.cpp:941
#10 0x00000000004543bd in FlagCommercials (chanid=9901, starttime=..., jobid=27492, outputfilename=..., fullSpeed=false) at main.cpp:993
#11 0x0000000000456317 in main (argc=9, argv=0x7fffe154b168) at main.cpp:1221
(gdb)

Attachments (1)

stuckCommFlags.zip (29.4 KB) - added by George Nassas <gnassas@…> 11 years ago.
backtraces for a half dozen stuck comflags

Download all attachments as: .zip

Change History (5)

comment:1 Changed 11 years ago by Nicolas Riendeau

Milestone: unknown0.27
Owner: set to JYA
Status: newassigned

comment:2 Changed 11 years ago by warpme@…

Hmm - it looks like problem isn't caused by f0d803b as without this commit it is still present. Probably some other last commits cause it...

comment:3 Changed 11 years ago by JYA

Status: assignedinfoneeded

Could you make another backtrace snapshot on another instance?

want to remove any doubts ...

thanks

Changed 11 years ago by George Nassas <gnassas@…>

Attachment: stuckCommFlags.zip added

backtraces for a half dozen stuck comflags

comment:4 Changed 11 years ago by Jean-Yves Avenard <jyavenard@…>

Resolution: fixed
Status: infoneededclosed

In c9d8533fe8fc19fead0ad896f37bb8f07367cc57/mythtv:

audio player was initialized as having audio out by default, even if no audio output had beed created. This caused to always try to decode audio even when not required (like during commflagging)

Also, exit early in AVFD::ProcessAudioPacket? if no one is listening.

Fixes #11616

Note: See TracTickets for help on using tickets.