[roll] Roll fuchsia [overnet] Wake quiche writers that return Err(Done)

When quiche returns Err(Done) from stream_send(), it may not have
actually established the stream. This can mean that when we call
writable() on the connection, we won't ever get that stream ID.

Since we go to sleep when we get Err(Done), and we use writable() to
determine when we wake up again, this means writing stalls forever.

To fix this, we add a new set of wakers that is always woken when the
connection becomes writable without checking if a particular stream is
writable. Err(Done) adds us to that waker set rather than the usual
waker set for writers.

This may fix a few connection stall issues we've seen previously, and is
absolutely necessary for the Quiche 0.10 upgrade.

Original-Bug: 79699
Original-Bug: 87439
Original-Bug: 87372
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/611746
Original-Revision: cf8dfcd391210bb71b919280f2c9f4e99090eba1
GitOrigin-RevId: da46811a3a6aa6f786b6684eb54b20c8b60966b1
Change-Id: I2029d1af8370cfd5761a3e1266aec76742b3eb00
1 file changed
tree: 9a882b82818d2e6c9813cdefcf80962f607ac135
  1. infra/
  2. third_party/
  3. cts
  4. firmware
  5. flower
  6. jiri.lock
  7. minimal
  8. prebuilts
  9. README.md
  10. stem
  11. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia on Freenode.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.