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

CUDTUnited::m_GlobControlLock takes too much responsibility #2393

Open
3 tasks
maxsharabayko opened this issue Jun 22, 2022 · 1 comment
Open
3 tasks

CUDTUnited::m_GlobControlLock takes too much responsibility #2393

maxsharabayko opened this issue Jun 22, 2022 · 1 comment
Labels
[core] Area: Changes in SRT library core Type: Maintenance Work required to maintain or clean up the code
Milestone

Comments

@maxsharabayko
Copy link
Collaborator

maxsharabayko commented Jun 22, 2022

It looks like the CUDTUnited::m_GlobControlLock has to protect:

  • CUDTUnited::m_Sockets,
  • CUDTUnited::m_Groups,
  • CUDTUnited::m_PeerRec,
  • CUDTUnited::m_ClosedSockets,
  • CUDTUnited::m_ClosedGroups.

It also occasionally protects

  • CUDTUnited::m_mMultiplexer, although there is a dedicated m_mMultiplexerLock. See CUDTUnited::updateListenerMux(..).
  • WTF CUDTUnited::bind() locks CUDTSocket::m_ControlLock?

TODO

  • Define the scope of the CUDTUnited::m_GlobControlLock mutex.
  • Clean up the use of the CUDTUnited::m_GlobControlLock mutex.
  • Update the low level info document.

Epic #1610.

@maxsharabayko maxsharabayko added Type: Maintenance Work required to maintain or clean up the code [core] Area: Changes in SRT library core labels Jun 22, 2022
@maxsharabayko maxsharabayko added this to the Next Release milestone Jun 22, 2022
@gou4shi1
Copy link
Contributor

related issue #2252

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 Type: Maintenance Work required to maintain or clean up the code
Projects
None yet
Development

No branches or pull requests

2 participants