|
[mojo-edk] Simplify multiprocess pipe bootstrap
This introduces a new MergePort message at the Ports layer
for joining two independent port cycles which each have
an unused (i.e. unwritten, unread, unsent) receiving port.
MergePort allows us to create a MessagePipeDispatcher which
is immediately usable but which will eventually be linked to
a MessagePipeDispatcher on another port cycle, potentially in
another process.
The basic idea is to create a fully functional port pair but
only bind one port to an MPD. Do this on each end and
merge the dangling ports asynchronously.
The simplification here allows a lot of code to be deleted
from NodeController, some of which is deleted in this CL.
Future work will convert existing bootstrap sites back to
using synchronous bootstrap, including the token-based APIs.
BUG= 584764
TBR=ben@chromium.org for null check in mash shell
Committed: https://crrev.com/b3ea203171e07f5c7e476e94d210ec4ad53ce5b0
Cr-Commit-Position: refs/heads/master@{#374322}
Total comments: 6
Total comments: 4
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+745 lines, -661 lines) |
Patch |
 |
M |
mash/shell/shell_application_delegate.cc
|
View
|
1
2
3
4
5
6
|
1 chunk |
+6 lines, -2 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/embedder/embedder.h
|
View
|
1
2
3
4
|
4 chunks |
+27 lines, -7 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/embedder/embedder.cc
|
View
|
1
2
3
4
|
1 chunk |
+14 lines, -6 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/core.h
|
View
|
1
2
3
4
5
|
1 chunk |
+9 lines, -16 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/core.cc
|
View
|
1
2
3
4
|
2 chunks |
+33 lines, -38 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/multiprocess_message_pipe_unittest.cc
|
View
|
|
2 chunks |
+39 lines, -0 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/node_channel.h
|
View
|
1
2
3
4
|
2 chunks |
+5 lines, -12 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/node_channel.cc
|
View
|
1
2
3
4
|
4 chunks |
+11 lines, -36 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/node_controller.h
|
View
|
1
2
3
4
|
5 chunks |
+16 lines, -88 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/node_controller.cc
|
View
|
1
2
3
4
|
9 chunks |
+30 lines, -174 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/ports/event.h
|
View
|
|
2 chunks |
+6 lines, -0 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/ports/message.cc
|
View
|
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/ports/name.h
|
View
|
1
2
3
4
5
|
2 chunks |
+7 lines, -0 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/ports/node.h
|
View
|
|
3 chunks |
+17 lines, -0 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/ports/node.cc
|
View
|
1
|
4 chunks |
+152 lines, -27 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/ports/ports_unittest.cc
|
View
|
1
|
2 chunks |
+317 lines, -21 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/remote_message_pipe_bootstrap.h
|
View
|
|
3 chunks |
+10 lines, -12 lines |
0 comments
|
Download
|
 |
M |
mojo/edk/system/remote_message_pipe_bootstrap.cc
|
View
|
|
3 chunks |
+13 lines, -10 lines |
0 comments
|
Download
|
 |
M |
mojo/shell/runner/child/runner_connection.cc
|
View
|
1
2
3
4
5
6
|
2 chunks |
+3 lines, -13 lines |
0 comments
|
Download
|
 |
M |
mojo/shell/runner/host/child_process.cc
|
View
|
1
2
3
4
5
6
|
4 chunks |
+14 lines, -39 lines |
0 comments
|
Download
|
 |
M |
mojo/shell/runner/host/child_process_host.h
|
View
|
1
2
3
4
5
6
|
2 chunks |
+4 lines, -58 lines |
0 comments
|
Download
|
 |
M |
mojo/shell/runner/host/child_process_host.cc
|
View
|
1
2
3
4
5
6
|
5 chunks |
+9 lines, -102 lines |
0 comments
|
Download
|
Total messages: 32 (16 generated)
|