[mythtv-commits] Ticket #1564: SEGFAULT in SIParser::CheckTrackers
MythTV
mythtv at cvs.mythtv.org
Thu Mar 23 15:06:05 UTC 2006
#1564: SEGFAULT in SIParser::CheckTrackers
-----------------------+----------------------------------------------------
Reporter: anonymous | Owner: danielk
Type: defect | Status: reopened
Priority: minor | Milestone: 0.20
Component: dvb | Version: head
Severity: medium | Resolution:
-----------------------+----------------------------------------------------
Comment (by cizek at rcn.com):
FWIW: I tried using pmap_lock and got a similar result (deadlock). Using
the new mutex (in pnum_lock.patch) has worked for me since yesterday.
Going beyond. The problem I found was when a distinct scanner was
created. The constructor for DVBSIParser creates a new thread to run
"siparser->StartSectionReader()" which calls "SIParser::CheckTrackers()".
After the creation of the DVBSIParser object, we call ReinitSIParser() in
the original thread. ReinitSIParser() (through a called function) clears
pnum_pid, potentially at the same time that CheckTrackers() is using
pnum_pid. I'm very sure this "clear while in use" is what caused my
crash.
I have two tuners, but I think that just doubles the odds that this will
happen. I don't think there's any interaction between the two.
Anyway, YMMV, Hope this helps. If you have any questions for me you're
welcome to email me direct.
Bill
--
Ticket URL: <http://cvs.mythtv.org/trac/ticket/1564>
MythTV <http://www.mythtv.org/>
MythTV
More information about the mythtv-commits
mailing list