[mythtv-commits] Ticket #9868: Hang in Live TV channel change
MythTV
noreply at mythtv.org
Wed Aug 3 13:32:32 UTC 2011
#9868: Hang in Live TV channel change
---------------------------------------------+----------------------------
Reporter: skd5aner <skd5aner@…> | Owner: janne
Type: Bug Report - Hang/Deadlock | Status: new
Priority: minor | Milestone: unknown
Component: MythTV - Video Playback | Version: 0.24-fixes
Severity: medium | Resolution:
Keywords: Live TV, channel changing, hang | Ticket locked: 0
---------------------------------------------+----------------------------
Comment (by Ian Dall <ian@…>):
I am seeing what looks like the same bug still in v0.25pre-2771-g3378703.
I get two slightly different manifestations. One is a SIGSEGV and the
other is a "hang" with the guide screen showing but unpopulated.
When I don't get a SIGSEGV I get the messages:
{{{
2011-08-03 21:27:46.554236 E TV: LiveTV not successfully started
2011-08-03 21:27:46.554413 I TV: Main UI disabled.
2011-08-03 21:27:46.727464 I TV: Entering main playback loop.
2011-08-03 21:28:32.007203 I TV: Exiting main playback loop.
QMutex::lock: mutex lock failure: Invalid argument
}}}
My theory is that both behaviours have the same cause because when I catch
the SIGSEGV with gdb, the screen shows the guide in much the same state at
for the "Invalid argument" case. Both cases have similar stack traces
(like the gdb.txt attachment).Probably there is some uninitialised
location, and depending on exactly what rubbish is in the location causes
either a SIGSEGV or other undefined behaviour.
GuideGrid::updateChannels calls m_player->GetPlayerReadLock. It seems
that since the LiveTV was not successfully started, maybe there is no
valid mutex to lock. Certainly, after the SIGSEGV, gdb shows
{{{
(gdb) frame 0
#0 0x02e1d90a in QMutex::lock (this=0xa071c40) at thread/qmutex.cpp:151
(gdb) print d
$9 = (QMutexPrivate *) 0x0
}}}
so attempting to access d->recursive will cause the fault.
I'm attaching a backtrace for the SIGSEGV case.
--
Ticket URL: <http://code.mythtv.org/trac/ticket/9868#comment:1>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
More information about the mythtv-commits
mailing list