base/android: Make Linker an implementation detail of LibraryLoader
Restrict Linker functionality to be "package private", do not expose the whole Linker API to clients. Reduce verbosity in code comments about the Linker, and reformulate them in terms of RELRO producer/consumer, rather than process type. This way the App Zygote can become the RELRO producer without contradicting all these explanations. Remove ChromiumLinkerParams. Previously I thought that in the new protocol it would expand, but now I realized that it is better to extend the messages that happen later in Linker lifetime. Extract the bundle exchange between linkers in different processes into LibraryLoader's inner class. This looks cleaner because it makes the communication protocol handled in one compact place. Before this change it was nontrivial to verify that communication is not racy. The plan is to add functionality to the MultiProcessMessageHandler to make it possible to sometimes move the RELRO FD from isolated processes into the browser process, without leaking a lot of knowledge about it outside of the package o.c.b.library_loader. With this change the MultiProcessMessageHandler will make sense to move to another file. Bug: 1154224 Change-Id: I2c027961530947a93bca44ce70b8b9dcd25e1b2f Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2607931 Commit-Queue: Egor Pasko <pasko@chromium.org> Reviewed-by:Bo <boliu@chromium.org> Reviewed-by:
Benoit L <lizeb@chromium.org> Cr-Commit-Position: refs/heads/master@{#840993}
Showing
Please register or sign in to comment