Refactor process manager to enable spawnd discovery.
The process manager now allocates a special LMP endpoint for monitor.0 and
gives said endpoint to monitor.0 as part of the export_cb. After monitor.0
spawns spawnd, it uses that endpoint to send the new spawnd's iref to the
process manager. The latter then binds with spawnd, to keep track of its state.
For app cores, a similar workflow applies, except inter-monitor communication
is now performed. Namely, the new app core's monitor sends the new app core's
spawnd to monitor.0, which forwards it to the process manager. The latter then
binds with the app core's spawnd just the same.
Diagrams for the discovery protocol can be found at https://goo.gl/eJE37u.
Signed-off-by: Razvan Damachi <razvan.damachi@gmail.com>
25 files changed: