Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Data race when TLPKTDROP while checking loss for ACK candidate #1668

Merged

Conversation

ethouris
Copy link
Collaborator

Fixes #1662

The problem is that the check for empty Receiver Loss List was done without locking, so potentially the loss list could be purged between the check and getting the contents. This way the getFirstLoss function might potentially return SRT_SEQNO_NONE (-1) and then take this value further down the processing path without checking.

@ethouris ethouris self-assigned this Nov 23, 2020
@ethouris ethouris added [core] Area: Changes in SRT library core Priority: Critical Priority: High and removed Priority: Critical labels Nov 23, 2020
srtcore/core.cpp Outdated Show resolved Hide resolved
@codecov

This comment has been minimized.

@maxsharabayko maxsharabayko added the Type: Bug Indicates an unexpected problem or unintended behavior label Nov 24, 2020
@maxsharabayko maxsharabayko added this to the v1.4.3 milestone Nov 24, 2020
@maxsharabayko maxsharabayko merged commit b7eb2d2 into Haivision:master Nov 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[core] Area: Changes in SRT library core Priority: High Type: Bug Indicates an unexpected problem or unintended behavior
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] srt-live-transmit sender stuck, repeatedly
2 participants