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

Issue 19863003: PNaCl on-demand installs: Make a separate async IPC to check if PNaCl is installed (Closed)

Created:
7 years, 5 months ago by jvoung (off chromium)
Modified:
7 years, 4 months ago
CC:
chromium-reviews, yusukes+watch_chromium.org, raymes+watch_chromium.org, yzshen+watch_chromium.org, piman+watch_chromium.org, native-client-reviews_googlegroups.com, ihf+watch_chromium.org
Visibility:
Public.

Description

PNaCl on-demand installs: Make a separate async IPC to check if PNaCl is installed. Previously, there was a single synchronous IPC that would check if PNaCl is installed, then install if not installed, as well as open the individual files read-only. That sync IPC would block the UI if it needed to install PNaCl. Instead separate checking from the opening a file read-only. Have a separate IPC that is async, so that the UI is not blocked, and progress events could eventually be sent. Some basic plumbing of progress events is set up, but not yet wired up to JS. Order of events is: CheckInstalled * if Installed, reply w/ success * if not Installed { send progress event indicated install start try install (may send more progress events) send progress of install success or failure } BUG=252760 TEST=unit_tests --gtest_filter=NaClFileHostTest* (and manual) Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=215844

Patch Set 1 #

Patch Set 2 : debug #

Patch Set 3 : add some tests and convert render_view_id to instance #

Patch Set 4 : semicolons #

Patch Set 5 : cleanup #

Patch Set 6 : enforce order #

Total comments: 1

Patch Set 7 : comment #

Patch Set 8 : const ref #

Total comments: 12

Patch Set 9 : dschuff review 1 #

Patch Set 10 : rebase #

Patch Set 11 : signed unsigned #

Patch Set 12 : int64_t to int64 #

Total comments: 24

Patch Set 13 : Add thread checks and split #

Patch Set 14 : use progress struct and simplify thread bouncing #

Patch Set 15 : more cleanup #

Patch Set 16 : struct #

Total comments: 2

Patch Set 17 : rebase #

Patch Set 18 : take out progress IPC for now #

Unified diffs Side-by-side diffs Delta from patch set Stats (+508 lines, -116 lines) Patch
M chrome/browser/nacl_host/nacl_file_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +17 lines, -1 line 0 comments Download
M chrome/browser/nacl_host/nacl_file_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 5 chunks +45 lines, -43 lines 0 comments Download
M chrome/browser/nacl_host/nacl_file_host_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +160 lines, -16 lines 0 comments Download
M chrome/browser/nacl_host/nacl_host_message_filter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +6 lines, -0 lines 0 comments Download
M chrome/browser/nacl_host/nacl_host_message_filter.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +23 lines, -0 lines 0 comments Download
M chrome/renderer/pepper/pnacl_translation_resource_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 3 chunks +26 lines, -3 lines 0 comments Download
M chrome/renderer/pepper/pnacl_translation_resource_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 7 chunks +107 lines, -21 lines 0 comments Download
M chrome/renderer/pepper/ppb_nacl_private_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 5 chunks +18 lines, -7 lines 0 comments Download
M components/nacl/common/nacl_browser_delegate.h View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M components/nacl/common/nacl_host_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +11 lines, -0 lines 0 comments Download
M components/nacl/common/pnacl_types.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +15 lines, -0 lines 0 comments Download
M components/nacl/common/pnacl_types.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +16 lines, -0 lines 0 comments Download
M ppapi/api/private/ppb_nacl_private.idl View 1 2 3 4 5 6 7 8 1 chunk +8 lines, -2 lines 0 comments Download
M ppapi/c/private/ppb_nacl_private.h View 1 2 3 4 5 6 7 8 4 chunks +17 lines, -11 lines 0 comments Download
M ppapi/native_client/src/trusted/plugin/pnacl_coordinator.h View 1 chunk +3 lines, -0 lines 0 comments Download
M ppapi/native_client/src/trusted/plugin/pnacl_coordinator.cc View 1 2 3 4 5 6 7 8 2 chunks +29 lines, -12 lines 0 comments Download
M ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 2 chunks +6 lines, -0 lines 0 comments Download

Messages

Total messages: 21 (0 generated)
jvoung (off chromium)
Do you guys want to take a look first if this is reasonable? Waiting to ...
7 years, 5 months ago (2013-07-23 16:59:54 UTC) #1
Derek Schuff
https://codereview.chromium.org/19863003/diff/29002/chrome/browser/nacl_host/nacl_browser_delegate_impl.cc File chrome/browser/nacl_host/nacl_browser_delegate_impl.cc (right): https://codereview.chromium.org/19863003/diff/29002/chrome/browser/nacl_host/nacl_browser_delegate_impl.cc#newcode68 chrome/browser/nacl_host/nacl_browser_delegate_impl.cc:68: RequestFirstInstall(cus, pci, installed); maybe for another CL, but is ...
7 years, 5 months ago (2013-07-23 21:39:29 UTC) #2
jvoung (off chromium)
https://codereview.chromium.org/19863003/diff/29002/chrome/browser/nacl_host/nacl_browser_delegate_impl.cc File chrome/browser/nacl_host/nacl_browser_delegate_impl.cc (right): https://codereview.chromium.org/19863003/diff/29002/chrome/browser/nacl_host/nacl_browser_delegate_impl.cc#newcode68 chrome/browser/nacl_host/nacl_browser_delegate_impl.cc:68: RequestFirstInstall(cus, pci, installed); On 2013/07/23 21:39:29, Derek Schuff wrote: ...
7 years, 4 months ago (2013-07-31 21:41:07 UTC) #3
Derek Schuff
Make the commit message more descriptive (so that it makes sense out of context) and ...
7 years, 4 months ago (2013-07-31 22:08:12 UTC) #4
jvoung (off chromium)
Thanks for the review! dmichael, could you review too (and as pepper OWNER)? jln, could ...
7 years, 4 months ago (2013-08-01 00:50:07 UTC) #5
dmichael (off chromium)
https://codereview.chromium.org/19863003/diff/103001/chrome/browser/nacl_host/nacl_file_host.cc File chrome/browser/nacl_host/nacl_file_host.cc (right): https://codereview.chromium.org/19863003/diff/103001/chrome/browser/nacl_host/nacl_file_host.cc#newcode79 chrome/browser/nacl_host/nacl_file_host.cc:79: progress_callback.Run(0, -1); It's not documented anywhere what this means ...
7 years, 4 months ago (2013-08-01 17:33:49 UTC) #6
dmichael (off chromium)
https://codereview.chromium.org/19863003/diff/103001/chrome/renderer/pepper/pnacl_translation_resource_host.h File chrome/renderer/pepper/pnacl_translation_resource_host.h (right): https://codereview.chromium.org/19863003/diff/103001/chrome/renderer/pepper/pnacl_translation_resource_host.h#newcode61 chrome/renderer/pepper/pnacl_translation_resource_host.h:61: EnsurePnaclInstalledMap; By the way... what happens if a particular ...
7 years, 4 months ago (2013-08-01 17:37:00 UTC) #7
jvoung (off chromium)
https://codereview.chromium.org/19863003/diff/103001/chrome/browser/nacl_host/nacl_file_host.h File chrome/browser/nacl_host/nacl_file_host.h (right): https://codereview.chromium.org/19863003/diff/103001/chrome/browser/nacl_host/nacl_file_host.h#newcode35 chrome/browser/nacl_host/nacl_file_host.h:35: // If an request to install is issued, then ...
7 years, 4 months ago (2013-08-01 23:14:06 UTC) #8
jvoung (off chromium)
Thanks for the review! I looked into some of the parts, but will get to ...
7 years, 4 months ago (2013-08-01 23:14:34 UTC) #9
dmichael (off chromium)
https://codereview.chromium.org/19863003/diff/103001/chrome/renderer/pepper/pnacl_translation_resource_host.cc File chrome/renderer/pepper/pnacl_translation_resource_host.cc (right): https://codereview.chromium.org/19863003/diff/103001/chrome/renderer/pepper/pnacl_translation_resource_host.cc#newcode211 chrome/renderer/pepper/pnacl_translation_resource_host.cc:211: pending_ensure_pnacl_requests_.clear(); On 2013/08/01 23:14:07, jvoung (cr) wrote: > On ...
7 years, 4 months ago (2013-08-02 17:24:03 UTC) #10
jvoung (off chromium)
https://codereview.chromium.org/19863003/diff/103001/chrome/browser/nacl_host/nacl_file_host.cc File chrome/browser/nacl_host/nacl_file_host.cc (right): https://codereview.chromium.org/19863003/diff/103001/chrome/browser/nacl_host/nacl_file_host.cc#newcode79 chrome/browser/nacl_host/nacl_file_host.cc:79: progress_callback.Run(0, -1); On 2013/08/01 17:33:49, dmichael wrote: > It's ...
7 years, 4 months ago (2013-08-02 18:32:36 UTC) #11
dmichael (off chromium)
On 2013/08/02 18:32:36, jvoung (cr) wrote: > https://codereview.chromium.org/19863003/diff/103001/chrome/browser/nacl_host/nacl_file_host.cc > File chrome/browser/nacl_host/nacl_file_host.cc (right): > > https://codereview.chromium.org/19863003/diff/103001/chrome/browser/nacl_host/nacl_file_host.cc#newcode79 ...
7 years, 4 months ago (2013-08-02 19:39:14 UTC) #12
jvoung (off chromium)
On 2013/08/02 19:39:14, dmichael wrote: > On 2013/08/02 18:32:36, jvoung (cr) wrote: > > > ...
7 years, 4 months ago (2013-08-02 21:17:14 UTC) #13
Derek Schuff
On 2013/08/02 21:17:14, jvoung (cr) wrote: > Well, I think explicitly checking that it is ...
7 years, 4 months ago (2013-08-02 21:24:56 UTC) #14
dmichael (off chromium)
lgtm
7 years, 4 months ago (2013-08-05 22:38:11 UTC) #15
jvoung (off chromium)
Thanks dmichael. jln can you take a look, or +jschuh?
7 years, 4 months ago (2013-08-05 22:50:17 UTC) #16
jln (very slow on Chromium)
On 2013/08/05 22:50:17, jvoung (cr) wrote: > Thanks dmichael. > > jln can you take ...
7 years, 4 months ago (2013-08-05 23:01:55 UTC) #17
jln (very slow on Chromium)
*_messages.h lgtm, but I would prefer NaClViewMsg_EnsurePnaclInstalledProgress to be added in another CL when the ...
7 years, 4 months ago (2013-08-05 23:58:28 UTC) #18
jvoung (off chromium)
https://chromiumcodereview.appspot.com/19863003/diff/131001/chrome/renderer/pepper/pnacl_translation_resource_host.cc File chrome/renderer/pepper/pnacl_translation_resource_host.cc (right): https://chromiumcodereview.appspot.com/19863003/diff/131001/chrome/renderer/pepper/pnacl_translation_resource_host.cc#newcode224 chrome/renderer/pepper/pnacl_translation_resource_host.cc:224: void PnaclTranslationResourceHost::OnEnsurePnaclInstalledProgress( On 2013/08/05 23:58:28, Julien Tinnes wrote: > ...
7 years, 4 months ago (2013-08-06 01:11:13 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/jvoung@chromium.org/19863003/165001
7 years, 4 months ago (2013-08-06 03:10:44 UTC) #20
commit-bot: I haz the power
7 years, 4 months ago (2013-08-06 07:46:20 UTC) #21
Message was sent while issue was closed.
Change committed as 215844

Powered by Google App Engine
This is Rietveld 408576698