forked from chromium/chromium
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Connection Migration V2: split the QuicChromiumPacketWriter's write b…
…locked status into two separate invariants. - |write_in_progress_| is tracking writer status, and is set when an asynchronous write doesn't complete, or HandleWriteError/MaybeRetryAfterWriteError is in progress. - |force_write_blocked_| is tracking whether writer should be forced blocked regardless of |write_in_progress_|. QuicChromiumClientSession will set force_write_blocked to true when no alternate network is available or connection migration is in progress to complete to ensure no packets can be written until migration completes. QuicChromiumClientSession::WriteToNewPacket will undo force writer blocked. If packet writer becomes unblocked immediately or after the in-flight write completes, QuicChromiumClientSession::OnWriteUnblocked will be invoked to send a packet after migration. The packet can be a cached packet if |packet_| is set. If there's no cached packet, a queued packet will be sent if there's any, and a ping packet will be sent if writer is still unblocked. See http://crbug.com/859674 for detailed motivations. Bug: 859674 Change-Id: Icdbbb5e14f8439c6601e2c19d9a03f05f17d4bc0 Reviewed-on: https://chromium-review.googlesource.com/1125286 Commit-Queue: Zhongyi Shi <zhongyi@chromium.org> Reviewed-by: Ryan Hamilton <rch@chromium.org> Cr-Commit-Position: refs/heads/master@{#573869}
- Loading branch information
Showing
5 changed files
with
312 additions
and
64 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.