[mythtv-commits] Ticket #10970: Mythbackend failed recordings, deadlocks

MythTV noreply at mythtv.org
Fri Aug 3 20:55:53 UTC 2012


#10970: Mythbackend failed recordings, deadlocks
-----------------------------------------+--------------------------------
 Reporter:  Peter Townsend <elpinkus@…>  |          Owner:
     Type:  Bug Report - General         |         Status:  infoneeded_new
 Priority:  minor                        |      Milestone:  unknown
Component:  MythTV - General             |        Version:  Master Head
 Severity:  medium                       |     Resolution:
 Keywords:                               |  Ticket locked:  0
-----------------------------------------+--------------------------------

Comment (by danielk):

 As far as I can tell this shouldn't be happening.

 StreamHandler::Start() seems to be waiting for the thread to start. It's
 waiting for either _running or _error to be set. I don't see any way that
 DVBStreamHandler::run() can exit without setting either of those. It also
 seems like DVBStreamHandler::RunTS() is running a piece of code that would
 only be run after setting _running to true, however that could be in
 service of another stream. It is possible that MTHread::start() has called
 QThread::start(), but the thread was never started because we ran out of
 memory or we exceeded our process allocation. However, that shouldn't
 occur with any normally configured Linux system. Finally, while _running
 is not declared as volatile, the while loop that checks it calls a
 function outside the current translation unit so gcc should not optimise
 the check away since it can't know that _running isn't set by that call.

-- 
Ticket URL: <http://code.mythtv.org/trac/ticket/10970#comment:3>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center


More information about the mythtv-commits mailing list