[mythtv-commits] Ticket #13571: Crash of backend on delete of program being recorded
MythTV
noreply at mythtv.org
Sun Apr 5 08:54:51 UTC 2020
#13571: Crash of backend on delete of program being recorded
--------------------------------+-------------------------------
Reporter: Klaas de Waal | Owner: Klaas de Waal
Type: Bug Report - Crash | Status: assigned
Priority: minor | Milestone: 32.0
Component: MythTV - General | Version: Master Head
Severity: medium | Resolution:
Keywords: | Ticket locked: 0
--------------------------------+-------------------------------
Comment (by Klaas de Waal):
The code is inside the following lock:
{{{
TVRec::s_inputsLock.lockForRead();
...
TVRec::s_inputsLock.unlock();
}}}
The m_encoderList (tvList) contains values for all entries in the
capturecard table that are connected to a videosource. The m_encoderList
is only extended when a new virtual tuner is added and in that code the
lockForWrite is used. That is not happening here, the number of elements
in the QMap is constant.
With the lockForRead it is possible to have multiple readers so the QMap
can be traversed by different threads simultaneously. My understanding of
the QMap is that this is allowed, QMap being documented as re-entrant.
--
Ticket URL: <https://code.mythtv.org/trac/ticket/13571#comment:13>
MythTV <http://www.mythtv.org>
MythTV Media Center
More information about the mythtv-commits
mailing list