[mythtv-commits] Ticket #4854: Backend crashes with MythEvents; probable memory corruption
MythTV
mythtv at cvs.mythtv.org
Tue Mar 4 08:48:38 UTC 2008
#4854: Backend crashes with MythEvents; probable memory corruption
-------------------------------------+--------------------------------------
Reporter: tim at electronghost.co.uk | Owner: ijr
Type: defect | Status: new
Priority: major | Milestone: unknown
Component: mythtv | Version: unknown
Severity: high | Mlocked: 0
-------------------------------------+--------------------------------------
On an x86_64 box, watching LiveTV and channel hopping (which generates
plenty of MythEvents), I get a backend crash within about 6 channel
changes.
I've investigated where the crashes occur with kdbg, and they are caused
by a corrupted 'extradata' in a MythEvent; instrumenting up mythevent.h
and mythevent.cpp with a bunch of 'QString crashme=extradata.join(" // ")'
statements and feeding the core dump to kdbg shows a corrupted extradata
field 'most every crash.
However, it's most often the one in the ExtraDataList() method which
fires, and not the one in the constructor, indicating that the QStringList
was fine when it was added, and after it was deep copied.
This leads me to think that someone, somewhere, is writing to memory when
they shouldn't be :-)
I've spent some time trying to get it to happen with valgrind, but have
been unable to produce the problem in that circumstance, so I wonder if
it's timing-related? Possibly something is missing a mutex that should
have one? The backend is running on a Core2Duo, so threading problems
might show up that wouldn't on a single core system.
I'm quite happy to try things. C++ isn't my first language but I can speak
pidgin :-)
--
Ticket URL: <http://svn.mythtv.org/trac/ticket/4854>
MythTV <http://svn.mythtv.org/trac>
MythTV
More information about the mythtv-commits
mailing list