[BUG] Deadlock in bstats(..) and sendCtrlAck() #2167
Labels
[core]
Area: Changes in SRT library core
Priority: Critical
Type: Bug
Indicates an unexpected problem or unintended behavior
Milestone
CUDT::sendCtrlAck()
locksm_RcvBufferLock
, and laterm_StatsLock
.After PR #2146
CUDT::bstats(..)
locksm_StatsLock
and laterm_RcvBufferLock
ingetAvailRcvBufferSizeLock()
.Possible solutions:
getAvailRcvBufferSizeNoLock()
instead (not a good one).CUDT::sendCtrlAck()
. Only access to the receiver buffer must be protected with this mutex. The receiving state of the socket (e.g.m_iRcvLastAck
,m_tsLastAckTime
,m_ACKWindow
, etc.) must be protected with a different mutex (which one?).SRT version affected: SRT v1.4.5 dev.
The text was updated successfully, but these errors were encountered: