[mythtv-commits] Ticket #10981: Commit 643ad3e [Fix race in LoadInBackground() handling] causes abort on entering Watch Recordings
MythTV
noreply at mythtv.org
Tue Aug 7 10:11:19 UTC 2012
#10981: Commit 643ad3e [Fix race in LoadInBackground() handling] causes abort on
entering Watch Recordings
-----------------------------------+--------------------------------------
Reporter: Lawrence Rust <lvr@…> | Type: Bug Report - General
Status: new | Priority: minor
Milestone: unknown | Component: MythTV - General
Version: Master Head | Severity: medium
Keywords: | Ticket locked: 0
-----------------------------------+--------------------------------------
Using a debug build of Qt, entering the watch recordings menu,
mythfrontend aborts with this log:
{{{
2012-08-07 11:40:41.754876 C Received Aborted
QMutex::lock: Deadlock detected in thread 2985436960
Aborted (core dumped)
}}}
Backtrace:
{{{
Program terminated with signal 6, Aborted.
#0 0xb76e9424 in __kernel_vsyscall ()
(gdb) bt
#0 0xb76e9424 in __kernel_vsyscall ()
#1 0xb249ae71 in raise (sig=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2 0xb249e34e in abort () at abort.c:92
#3 0xb277a30f in qt_message_output (msgType=QtFatalMsg,
buf=0xa561088 "ASSERT failure in QMutex::unlock(): \"A mutex must be
unlocked in the same thread that locked it.\", file thread/qmutex.cpp,
line 370")
at global/qglobal.cpp:2259
#4 0xb277a48e in qt_message (msgType=QtFatalMsg,
msg=0xb28e6940 "ASSERT failure in %s: \"%s\", file %s, line %d",
ap=0xa2ca9234 "\261|\216\262 }\216\262d|\216\262r\001")
at global/qglobal.cpp:2305
#5 0xb277a549 in qFatal (
msg=0xb28e6940 "ASSERT failure in %s: \"%s\", file %s, line %d")
at global/qglobal.cpp:2488
#6 0xb277a587 in qt_assert_x (where=0xb28e7cb1 "QMutex::unlock()",
what=0xb28e7d20 "A mutex must be unlocked in the same thread that
locked it.", file=0xb28e7c64 "thread/qmutex.cpp", line=370) at
global/qglobal.cpp:2012
#7 0xb277e2df in QMutex::unlock (this=0xa5fb7f8) at thread/qmutex.cpp:369
#8 0xb5b8a11f in ScreenLoadTask::run (this=0xa2e0de0) at
mythscreentype.cpp:33
#9 0xb5d28a06 in MPoolThread::run (this=0xa600910) at mthreadpool.cpp:87
#10 0xb5d25f74 in MThreadInternal::run (this=0xa1afd00) at mthread.cpp:79
#11 0xb27832e0 in QThreadPrivate::start (arg=0xa1afd00)
at thread/qthread_unix.cpp:266
#12 0xb2705e99 in start_thread (arg=0xa2ca9b70) at pthread_create.c:304
#13 0xb25419ee in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
}}}
Appears that the new mutex is being unlocked by a thread other than the
one that locked it.
--
Ticket URL: <http://code.mythtv.org/trac/ticket/10981>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
More information about the mythtv-commits
mailing list