Skip to content

Conversation

lyqfjcs
Copy link

@lyqfjcs lyqfjcs commented Sep 30, 2025

Fix a potential deadlock between PingChannel and PingCheckMgr.

This patch changes sendNext() to:

  • Release the channel lock before calling next_to_send_cb_.
  • Reacquire the lock afterward and re-check canSend() before proceeding.
  • Keep setting sending_ inside the locked region to ensure only one send path is active at a time.

…ck to avoid deadlock

Fix a potential deadlock between PingChannel and PingCheckMgr.

This patch changes sendNext() to:
- Release the channel lock before calling next_to_send_cb_.
- Reacquire the lock afterward and re-check canSend() before proceeding.
- Keep setting `sending_` inside the locked region to ensure only one
  send path is active at a time.
@lyqfjcs
Copy link
Author

lyqfjcs commented Sep 30, 2025

fix in #151

@lyqfjcs lyqfjcs closed this Sep 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant