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

Issue 1811433002: [mojo-edk] Expose notification source to MojoWatch callbacks (Closed)

Created:
4 years, 9 months ago by Ken Rockot(use gerrit already)
Modified:
4 years, 9 months ago
CC:
Aaron Boodman, abarth-chromium, ben+mojo_chromium.org, chromium-reviews, darin (slow to review), qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[mojo-edk] Expose notification source to MojoWatch callbacks This adds a flags argument to watch callbacks and exposes a flag to indicate that the callback was invoked as a result of some external process event (i.e. an incoming EDK IPC message). The public C++ Watcher implementation is updated to take advantage of this, effectively allowing us to dispatch to Mojo bindings synchronously when they live on the IO thread and are servicing messages from out-of-process. BUG=590495 Committed: https://crrev.com/6aca885ca93bb6194e67be3c62ac409745595e3c Cr-Commit-Position: refs/heads/master@{#381767}

Patch Set 1 #

Total comments: 1

Patch Set 2 : Rename #

Total comments: 2

Patch Set 3 : #

Patch Set 4 : #

Total comments: 10

Patch Set 5 : #

Total comments: 5

Patch Set 6 : #

Patch Set 7 : #

Total comments: 2

Patch Set 8 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+113 lines, -42 lines) Patch
M mojo/edk/system/core.cc View 1 2 3 4 1 chunk +4 lines, -3 lines 0 comments Download
M mojo/edk/system/data_pipe_consumer_dispatcher.cc View 1 2 3 1 chunk +1 line, -3 lines 0 comments Download
M mojo/edk/system/data_pipe_producer_dispatcher.cc View 1 2 3 1 chunk +2 lines, -3 lines 0 comments Download
M mojo/edk/system/message_pipe_dispatcher.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M mojo/edk/system/node_channel.cc View 1 2 3 4 3 chunks +5 lines, -0 lines 0 comments Download
M mojo/edk/system/request_context.h View 1 2 3 4 5 3 chunks +15 lines, -1 line 0 comments Download
M mojo/edk/system/request_context.cc View 1 2 3 4 5 6 7 2 chunks +29 lines, -15 lines 0 comments Download
M mojo/edk/system/wait_set_dispatcher_unittest.cc View 1 2 3 4 2 chunks +5 lines, -0 lines 0 comments Download
M mojo/edk/system/watch_unittest.cc View 1 2 3 2 chunks +5 lines, -2 lines 0 comments Download
M mojo/edk/system/watcher.h View 1 2 3 2 chunks +6 lines, -3 lines 0 comments Download
M mojo/edk/system/watcher.cc View 1 2 3 2 chunks +6 lines, -5 lines 0 comments Download
M mojo/public/c/system/functions.h View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M mojo/public/c/system/types.h View 1 2 3 4 1 chunk +20 lines, -0 lines 0 comments Download
M mojo/public/cpp/system/watcher.h View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M mojo/public/cpp/system/watcher.cc View 1 2 3 4 1 chunk +10 lines, -4 lines 0 comments Download

Messages

Total messages: 28 (6 generated)
Ken Rockot(use gerrit already)
Yuzhu could you look at bindings, John at //ipc? Still running real benchmarks for this. ...
4 years, 9 months ago (2016-03-16 03:07:15 UTC) #2
Ken Rockot(use gerrit already)
Also, to clarify since I didn't think it was appropriate to mention this in the ...
4 years, 9 months ago (2016-03-16 03:10:05 UTC) #3
Ken Rockot(use gerrit already)
On 2016/03/16 at 03:10:05, Ken Rockot wrote: > Also, to clarify since I didn't think ...
4 years, 9 months ago (2016-03-16 03:10:44 UTC) #4
jam
On 2016/03/16 03:07:15, Ken Rockot wrote: > Yuzhu could you look at bindings, John at ...
4 years, 9 months ago (2016-03-16 15:26:26 UTC) #5
yzshen1
https://codereview.chromium.org/1811433002/diff/1/mojo/public/cpp/bindings/binding.h File mojo/public/cpp/bindings/binding.h (right): https://codereview.chromium.org/1811433002/diff/1/mojo/public/cpp/bindings/binding.h#newcode211 mojo/public/cpp/bindings/binding.h:211: // Allows synchronous dispatch for this Binding. When sync ...
4 years, 9 months ago (2016-03-16 15:38:18 UTC) #6
Ken Rockot(use gerrit already)
We could plumb the detail through from the system layer, but adds a lot of ...
4 years, 9 months ago (2016-03-16 15:54:58 UTC) #7
Ken Rockot(use gerrit already)
After some more careful consideration I've decided to stick with this approach. I think it ...
4 years, 9 months ago (2016-03-16 18:12:37 UTC) #8
yzshen1
LGTM https://codereview.chromium.org/1811433002/diff/20001/mojo/public/cpp/bindings/lib/multiplex_router.h File mojo/public/cpp/bindings/lib/multiplex_router.h (right): https://codereview.chromium.org/1811433002/diff/20001/mojo/public/cpp/bindings/lib/multiplex_router.h#newcode149 mojo/public/cpp/bindings/lib/multiplex_router.h:149: void EnableImmediateDispatchOfEventsFromSameThread(bool enabled) { nit: DCHECK(thread_checker_.CalledOnValidThread()); https://codereview.chromium.org/1811433002/diff/20001/mojo/public/cpp/bindings/tests/associated_interface_unittest.cc File ...
4 years, 9 months ago (2016-03-16 18:31:33 UTC) #9
Ken Rockot(use gerrit already)
+amistry since this has turned into an EDK change
4 years, 9 months ago (2016-03-16 21:13:52 UTC) #12
yzshen1
https://codereview.chromium.org/1811433002/diff/60001/mojo/edk/system/request_context.cc File mojo/edk/system/request_context.cc (right): https://codereview.chromium.org/1811433002/diff/60001/mojo/edk/system/request_context.cc#newcode25 mojo/edk/system/request_context.cc:25: if (!tls_context_->Get()) nit: it seems the two tls_context_->Get() (line ...
4 years, 9 months ago (2016-03-16 21:53:52 UTC) #13
Anand Mistry (off Chromium)
https://codereview.chromium.org/1811433002/diff/60001/mojo/edk/system/request_context.cc File mojo/edk/system/request_context.cc (right): https://codereview.chromium.org/1811433002/diff/60001/mojo/edk/system/request_context.cc#newcode28 mojo/edk/system/request_context.cc:28: RequestContext* current_context = tls_context_->Get(); There's something very fishy about ...
4 years, 9 months ago (2016-03-16 23:04:14 UTC) #14
Ken Rockot(use gerrit already)
https://codereview.chromium.org/1811433002/diff/60001/mojo/edk/system/request_context.cc File mojo/edk/system/request_context.cc (right): https://codereview.chromium.org/1811433002/diff/60001/mojo/edk/system/request_context.cc#newcode25 mojo/edk/system/request_context.cc:25: if (!tls_context_->Get()) On 2016/03/16 at 21:53:52, yzshen1 wrote: > ...
4 years, 9 months ago (2016-03-17 00:15:34 UTC) #15
Anand Mistry (off Chromium)
https://codereview.chromium.org/1811433002/diff/80001/mojo/edk/system/request_context.cc File mojo/edk/system/request_context.cc (right): https://codereview.chromium.org/1811433002/diff/80001/mojo/edk/system/request_context.cc#newcode35 mojo/edk/system/request_context.cc:35: RequestContext::Source notification_source = tls_context_->Get()->source(); I don't think this is ...
4 years, 9 months ago (2016-03-17 01:53:09 UTC) #16
Ken Rockot(use gerrit already)
https://codereview.chromium.org/1811433002/diff/80001/mojo/edk/system/request_context.cc File mojo/edk/system/request_context.cc (right): https://codereview.chromium.org/1811433002/diff/80001/mojo/edk/system/request_context.cc#newcode35 mojo/edk/system/request_context.cc:35: RequestContext::Source notification_source = tls_context_->Get()->source(); On 2016/03/17 at 01:53:09, Anand ...
4 years, 9 months ago (2016-03-17 01:56:36 UTC) #17
chromium-reviews
On Mar 16, 2016 6:56 PM, <rockot@chromium.org> wrote: > > > https://codereview.chromium.org/1811433002/diff/80001/mojo/edk/system/request_context.cc > File mojo/edk/system/request_context.cc ...
4 years, 9 months ago (2016-03-17 02:06:01 UTC) #18
Ken Rockot(use gerrit already)
https://codereview.chromium.org/1811433002/diff/80001/mojo/edk/system/request_context.cc File mojo/edk/system/request_context.cc (right): https://codereview.chromium.org/1811433002/diff/80001/mojo/edk/system/request_context.cc#newcode35 mojo/edk/system/request_context.cc:35: RequestContext::Source notification_source = tls_context_->Get()->source(); On 2016/03/17 at 01:56:36, Ken ...
4 years, 9 months ago (2016-03-17 15:44:30 UTC) #19
Ken Rockot(use gerrit already)
things are less dumb now
4 years, 9 months ago (2016-03-17 17:09:51 UTC) #20
Anand Mistry (off Chromium)
lgtm https://codereview.chromium.org/1811433002/diff/120001/mojo/edk/system/request_context.cc File mojo/edk/system/request_context.cc (right): https://codereview.chromium.org/1811433002/diff/120001/mojo/edk/system/request_context.cc#newcode57 mojo/edk/system/request_context.cc:57: CHECK(watch_notify_finalizers_.container().empty()); optional nit: I'd argue these should be ...
4 years, 9 months ago (2016-03-17 17:26:50 UTC) #21
Ken Rockot(use gerrit already)
https://codereview.chromium.org/1811433002/diff/120001/mojo/edk/system/request_context.cc File mojo/edk/system/request_context.cc (right): https://codereview.chromium.org/1811433002/diff/120001/mojo/edk/system/request_context.cc#newcode57 mojo/edk/system/request_context.cc:57: CHECK(watch_notify_finalizers_.container().empty()); On 2016/03/17 at 17:26:49, Anand Mistry wrote: > ...
4 years, 9 months ago (2016-03-17 17:29:56 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1811433002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1811433002/140001
4 years, 9 months ago (2016-03-17 17:30:15 UTC) #25
commit-bot: I haz the power
Committed patchset #8 (id:140001)
4 years, 9 months ago (2016-03-17 19:10:57 UTC) #26
commit-bot: I haz the power
4 years, 9 months ago (2016-03-17 19:12:10 UTC) #28
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/6aca885ca93bb6194e67be3c62ac409745595e3c
Cr-Commit-Position: refs/heads/master@{#381767}

Powered by Google App Engine
This is Rietveld 408576698