Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(385)

Issue 1206093002: Update ChannelReader to use AttachmentBroker. (Closed)

Created:
5 years, 6 months ago by erikchen
Modified:
5 years, 4 months ago
Reviewers:
Tom Sepez
CC:
chromium-reviews, darin-cc_chromium.org, jam
Base URL:
https://chromium.googlesource.com/chromium/src.git@attachment_broker3_listener
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Update ChannelReader to use AttachmentBroker. Previously, translating from bytes into messages and dispatching the messages was accomplished in a single step. I've split this into two steps. The function TranslateInputData turns bytes into messages, and puts those messages in a queue. The function DispatchMessages() dispatches messages from the queue. Messages cannot be dispatched until all attachments have been brokered, so DispatchMessages() will sometimes wait (asynchronously) for the attachments to get brokered. BUG=466437 Committed: https://crrev.com/de9412b8832db0c6e1e283e9f8fce53eb4fd4e67 Cr-Commit-Position: refs/heads/master@{#340509}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : Diff against top of tree for CQ. #

Patch Set 4 : #

Patch Set 5 : #

Total comments: 14

Patch Set 6 : Comments from tsepez (and rebase). #

Patch Set 7 : Comments from tsepez. #

Patch Set 8 : Add compile time conditionals. #

Patch Set 9 : Make a message copy since translation/dispatch is now decoupled. #

Patch Set 10 : Add a missing enum comparison. #

Patch Set 11 : Add an optimization to immediately dispatch messages after translation. #

Total comments: 3

Patch Set 12 : Comments from tsepez. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+575 lines, -69 lines) Patch
M ipc/BUILD.gn View 1 2 3 4 5 6 7 8 10 2 chunks +2 lines, -0 lines 0 comments Download
M ipc/attachment_broker.h View 1 2 3 4 5 6 7 3 chunks +35 lines, -6 lines 0 comments Download
A ipc/attachment_broker.cc View 1 2 3 4 5 1 chunk +37 lines, -0 lines 0 comments Download
M ipc/attachment_broker_win.h View 1 2 3 4 5 4 chunks +6 lines, -3 lines 0 comments Download
M ipc/attachment_broker_win.cc View 3 2 chunks +10 lines, -2 lines 0 comments Download
M ipc/brokerable_attachment.h View 1 2 3 4 3 chunks +34 lines, -1 line 0 comments Download
M ipc/brokerable_attachment.cc View 1 3 2 chunks +13 lines, -2 lines 0 comments Download
M ipc/handle_attachment_win.h View 1 3 1 chunk +2 lines, -0 lines 0 comments Download
M ipc/handle_attachment_win.cc View 1 3 2 chunks +19 lines, -1 line 0 comments Download
M ipc/ipc.gyp View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M ipc/ipc.gypi View 1 2 3 4 5 6 7 8 10 1 chunk +1 line, -0 lines 0 comments Download
M ipc/ipc_channel_nacl.h View 1 chunk +2 lines, -1 line 0 comments Download
M ipc/ipc_channel_nacl.cc View 1 chunk +5 lines, -1 line 0 comments Download
M ipc/ipc_channel_posix.h View 1 chunk +2 lines, -1 line 0 comments Download
M ipc/ipc_channel_posix.cc View 1 2 3 4 5 6 7 8 9 2 chunks +6 lines, -2 lines 0 comments Download
M ipc/ipc_channel_reader.h View 1 2 3 4 5 6 7 8 9 10 5 chunks +74 lines, -11 lines 0 comments Download
M ipc/ipc_channel_reader.cc View 1 2 3 4 5 6 7 8 9 10 11 5 chunks +138 lines, -28 lines 0 comments Download
A ipc/ipc_channel_reader_unittest.cc View 1 2 3 4 5 6 7 1 chunk +156 lines, -0 lines 0 comments Download
M ipc/ipc_channel_win.h View 1 chunk +2 lines, -1 line 0 comments Download
M ipc/ipc_channel_win.cc View 1 2 3 4 5 6 2 chunks +10 lines, -5 lines 0 comments Download
M ipc/ipc_message.h View 1 2 3 4 5 2 chunks +5 lines, -0 lines 0 comments Download
M ipc/ipc_message.cc View 1 2 3 4 5 6 7 8 2 chunks +0 lines, -4 lines 0 comments Download
M ipc/ipc_message_attachment_set.h View 3 1 chunk +2 lines, -0 lines 0 comments Download
M ipc/ipc_message_attachment_set.cc View 3 1 chunk +13 lines, -0 lines 0 comments Download

Messages

Total messages: 57 (26 generated)
erikchen
tsepez: Please review. This CL depends on 2 previous CLs: 1) "Stub in more IPC ...
5 years, 6 months ago (2015-06-25 01:35:27 UTC) #4
erikchen
tsepez: Please review.
5 years, 5 months ago (2015-07-13 17:29:24 UTC) #5
Tom Sepez
https://codereview.chromium.org/1206093002/diff/100001/ipc/attachment_broker.cc File ipc/attachment_broker.cc (right): https://codereview.chromium.org/1206093002/diff/100001/ipc/attachment_broker.cc#newcode14 ipc/attachment_broker.cc:14: void AttachmentBroker::AddObserver(AttachmentBroker::Observer* observer) { do we care if |observer| ...
5 years, 5 months ago (2015-07-13 18:28:48 UTC) #6
erikchen
tsepez: PTAL https://codereview.chromium.org/1206093002/diff/100001/ipc/attachment_broker.cc File ipc/attachment_broker.cc (right): https://codereview.chromium.org/1206093002/diff/100001/ipc/attachment_broker.cc#newcode14 ipc/attachment_broker.cc:14: void AttachmentBroker::AddObserver(AttachmentBroker::Observer* observer) { On 2015/07/13 18:28:47, ...
5 years, 5 months ago (2015-07-17 18:44:01 UTC) #8
Tom Sepez
lgtm
5 years, 5 months ago (2015-07-17 21:34:07 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/160001
5 years, 5 months ago (2015-07-20 23:44:48 UTC) #11
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/40573)
5 years, 5 months ago (2015-07-21 00:08:10 UTC) #13
erikchen
tsepez: PTAL Patch set 8 wraps calls to member functions of AttachmentBroker in compile time ...
5 years, 5 months ago (2015-07-21 21:37:42 UTC) #15
Tom Sepez
lgtm
5 years, 5 months ago (2015-07-21 22:13:07 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/200001
5 years, 5 months ago (2015-07-21 22:20:44 UTC) #18
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/82937)
5 years, 5 months ago (2015-07-21 23:52:45 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/200001
5 years, 5 months ago (2015-07-22 01:00:41 UTC) #22
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_gn_rel on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_gn_rel/builds/112179)
5 years, 5 months ago (2015-07-22 01:22:57 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/200001
5 years, 5 months ago (2015-07-22 01:42:09 UTC) #26
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/89905) win_chromium_x64_rel_ng on tryserver.chromium.win (JOB_FAILED, ...
5 years, 5 months ago (2015-07-22 02:15:07 UTC) #28
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/220001
5 years, 5 months ago (2015-07-22 18:05:10 UTC) #30
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/240001
5 years, 5 months ago (2015-07-22 18:10:27 UTC) #33
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/41485)
5 years, 5 months ago (2015-07-22 19:36:36 UTC) #35
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/280001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1206093002/280001
5 years, 5 months ago (2015-07-22 22:13:08 UTC) #37
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_compile_dbg_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_compile_dbg_ng/builds/74802) linux_chromium_clobber_rel_ng on ...
5 years, 5 months ago (2015-07-22 23:07:55 UTC) #39
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/280001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1206093002/280001
5 years, 5 months ago (2015-07-22 23:45:18 UTC) #44
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 5 months ago (2015-07-23 00:19:15 UTC) #46
erikchen
On 2015/07/23 00:19:15, commit-bot: I haz the power wrote: > Dry run: This issue passed ...
5 years, 5 months ago (2015-07-23 00:34:37 UTC) #47
erikchen
On 2015/07/23 00:34:37, erikchen wrote: > On 2015/07/23 00:19:15, commit-bot: I haz the power wrote: ...
5 years, 5 months ago (2015-07-24 00:23:41 UTC) #48
Tom Sepez
lgtm https://codereview.chromium.org/1206093002/diff/280001/ipc/ipc_channel_reader.cc File ipc/ipc_channel_reader.cc (right): https://codereview.chromium.org/1206093002/diff/280001/ipc/ipc_channel_reader.cc#newcode110 ipc/ipc_channel_reader.cc:110: // While we could theoretically updated blocked_ids_ and ...
5 years, 4 months ago (2015-07-27 15:21:47 UTC) #49
erikchen
https://codereview.chromium.org/1206093002/diff/280001/ipc/ipc_channel_reader.cc File ipc/ipc_channel_reader.cc (right): https://codereview.chromium.org/1206093002/diff/280001/ipc/ipc_channel_reader.cc#newcode110 ipc/ipc_channel_reader.cc:110: // While we could theoretically updated blocked_ids_ and call ...
5 years, 4 months ago (2015-07-27 16:23:48 UTC) #50
Tom Sepez
On 2015/07/27 16:23:48, erikchen wrote: > https://codereview.chromium.org/1206093002/diff/280001/ipc/ipc_channel_reader.cc > File ipc/ipc_channel_reader.cc (right): > > https://codereview.chromium.org/1206093002/diff/280001/ipc/ipc_channel_reader.cc#newcode110 > ...
5 years, 4 months ago (2015-07-27 16:28:23 UTC) #51
erikchen
https://codereview.chromium.org/1206093002/diff/280001/ipc/ipc_channel_reader.cc File ipc/ipc_channel_reader.cc (right): https://codereview.chromium.org/1206093002/diff/280001/ipc/ipc_channel_reader.cc#newcode110 ipc/ipc_channel_reader.cc:110: // While we could theoretically updated blocked_ids_ and call ...
5 years, 4 months ago (2015-07-27 17:15:38 UTC) #52
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1206093002/300001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1206093002/300001
5 years, 4 months ago (2015-07-27 17:16:33 UTC) #55
commit-bot: I haz the power
Committed patchset #12 (id:300001)
5 years, 4 months ago (2015-07-27 18:26:34 UTC) #56
commit-bot: I haz the power
5 years, 4 months ago (2015-07-27 18:27:40 UTC) #57
Message was sent while issue was closed.
Patchset 12 (id:??) landed as
https://crrev.com/de9412b8832db0c6e1e283e9f8fce53eb4fd4e67
Cr-Commit-Position: refs/heads/master@{#340509}

Powered by Google App Engine
This is Rietveld 408576698