[roll] Roll fuchsia [vfs] Reduce the size of idle connections Future objects in rust can easily grow to be several KBs. If we have a thousand open connections each being handled by a multi KB future then we're using MBs of memory. Most of this memory is wasted because the connections sit idle most of the time and it's unlikely that more than a dozen connections will ever be handling a request at the same time. This change introduces a RequestListener that is optimized to reduce the memory usage of idle connections. The RequestListener dynamically heap allocates the futures for handling requests so the memory of these futures isn't consumed while the connections are idle. RequestListener manually implements Future to work around https://github.com/rust-lang/rust/issues/62958 and https://github.com/rust-lang/rust/issues/108906. This further reduces the size of an idle RequestListener to typically less than 80 bytes. RequestListener only reduces the idle memory overhead of the futures downstream from itself. There's still work to be done to reduce the size of futures upstream from the RequestListeners. Original-Bug: 398886282 Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1198690 Original-Revision: b911230aa356d2ead30455ed1828e9ae110b5772 GitOrigin-RevId: 03c5334b28b787f6f99cbdb5e01fb26f7300e66f Change-Id: I9d6d5cc1e66b5d2af3b937f28811599f2798594a
This repository contains Fuchsia's Global Integration manifest files.
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 in one of the communication channels documented at get involved.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party.