base::GlobalDescriptors is used to share file descriptors when forking processes. So far, keys are hard-coded.
Different modules using it have to agree on which range of these keys they use as to avoid collisions. Also there is quite a bit of logic that goes into mapping these FDs to a specific slot in the child process.
We should switch to having the FDs not having fixed values in the child process. Instead they would be passed to the child process with no extra work to ensure they are at a fixed slot. They would be identified by a string ID and registered in the FileDescriptorStore.
Comment 1 by benhenry@chromium.org
, Aug 1