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

Issue 418423002: Pepper: Stop using SRPC for irt_open_resource(). (Closed)

Created:
6 years, 5 months ago by teravest
Modified:
6 years, 3 months ago
CC:
chromium-reviews
Project:
chromium
Visibility:
Public.

Description

Pepper: Stop using SRPC for irt_open_resource(). This registers an IRT interface in Chromium instead of using the one provided by NaCl. This reuses the ManifestServiceChannel used for providing irt_open_resource() in non-SFI mode. In this change, the Chromium implementation of NACL_IRT_RESOURCE_OPEN_v0_1 takes precedence over the one supplied by NaCl (which is SRPC-based). The SRPC-based codepath in service_runtime.cc needs to be kept because the PNaCl translator doesn't have the IRT available yet. I've added a check to enforce that's the only user of that codepath. BUG=394130 TEST=Manually tested with a file token that didn't resolve with a local patch that forced GetFilePath to fail in nacl_process_host.cc and confirmed that URLLoader* still passed. CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:linux_rel_precise32 R=dmichael@chromium.org, mseaborn@chromium.org, tsepez@chromium.org Committed: https://chromium.googlesource.com/chromium/src/+/cffdd030d9ecd5e2ef50de941fca337a94c3b476

Patch Set 1 #

Total comments: 2

Patch Set 2 : Fix IrtManifestFile test #

Patch Set 3 : PNaCl translator fix #

Patch Set 4 : Remove SRPC-based manifest tests #

Patch Set 5 : windows fix #

Total comments: 6

Patch Set 6 : fixes for dmichael #

Total comments: 11

Patch Set 7 : fixes except validation caching #

Patch Set 8 : Fixed validation caching, tested on linux #

Patch Set 9 : Build fixes for other compilers #

Patch Set 10 : #

Total comments: 33

Patch Set 11 : Rebase and move test removal to a different change #

Patch Set 12 : fixes for mseaborn and dmichael #

Total comments: 4

Patch Set 13 : Fix file tokens for invalid files #

Patch Set 14 : Rebased and moved a cond_var signal under a lock #

Patch Set 15 : linux build fix #

Patch Set 16 : spelling fix #

Total comments: 4

Patch Set 17 : Add comment at WriteHandle #

Total comments: 28

Patch Set 18 : fixes for mseaborn #

Total comments: 3

Patch Set 19 : nits for dmichael #

Patch Set 20 : rebased #

Unified diffs Side-by-side diffs Delta from patch set Stats (+466 lines, -73 lines) Patch
M components/nacl/browser/nacl_process_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +5 lines, -1 line 0 comments Download
M components/nacl/browser/nacl_process_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 3 chunks +80 lines, -21 lines 0 comments Download
M components/nacl/common/nacl_messages.h View 1 2 3 4 5 6 7 1 chunk +11 lines, -0 lines 0 comments Download
M components/nacl/loader/DEPS View 1 2 3 4 5 6 7 1 chunk +1 line, -0 lines 0 comments Download
M components/nacl/loader/nacl_ipc_adapter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 5 chunks +26 lines, -0 lines 0 comments Download
M components/nacl/loader/nacl_ipc_adapter.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 6 chunks +145 lines, -2 lines 0 comments Download
M components/nacl/loader/nacl_listener.h View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +12 lines, -0 lines 0 comments Download
M components/nacl/loader/nacl_listener.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 9 chunks +69 lines, -5 lines 0 comments Download
M components/nacl/renderer/manifest_service_channel.h View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +8 lines, -5 lines 0 comments Download
M components/nacl/renderer/manifest_service_channel.cc View 1 2 3 4 5 6 7 4 chunks +29 lines, -18 lines 0 comments Download
M components/nacl/renderer/ppb_nacl_private_impl.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +8 lines, -8 lines 0 comments Download
M ppapi/nacl_irt/irt_ppapi.cc View 1 2 3 4 5 6 2 chunks +20 lines, -3 lines 0 comments Download
M ppapi/nacl_irt/irt_start.cc View 1 chunk +1 line, -1 line 0 comments Download
M ppapi/nacl_irt/manifest_service.h View 1 2 3 4 5 6 7 2 chunks +3 lines, -0 lines 0 comments Download
M ppapi/nacl_irt/manifest_service.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +27 lines, -4 lines 0 comments Download
M ppapi/native_client/src/trusted/plugin/service_runtime.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +10 lines, -0 lines 0 comments Download
M ppapi/proxy/nacl_message_scanner.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +7 lines, -3 lines 0 comments Download
M ppapi/proxy/ppapi_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +4 lines, -2 lines 0 comments Download

Messages

Total messages: 49 (9 generated)
Mark Seaborn
Have you checked that validation caching still works after this? Do we have test coverage ...
6 years, 5 months ago (2014-07-25 22:06:36 UTC) #1
teravest
On 2014/07/25 22:06:36, Mark Seaborn wrote: > Have you checked that validation caching still works ...
6 years, 4 months ago (2014-07-29 17:14:03 UTC) #2
teravest
Okay, I think this looks good and seems to be passing tests now. I had ...
6 years, 4 months ago (2014-07-31 16:14:29 UTC) #3
teravest
On 2014/07/31 16:14:29, teravest wrote: > Okay, I think this looks good and seems to ...
6 years, 4 months ago (2014-07-31 20:59:07 UTC) #4
Mark Seaborn
On 31 July 2014 13:59, <teravest@chromium.org> wrote: > On 2014/07/31 16:14:29, teravest wrote: > >> ...
6 years, 4 months ago (2014-08-01 00:58:37 UTC) #5
teravest
Got this working on windows now. It looks like the failed tryjobs are noise. I ...
6 years, 4 months ago (2014-08-04 15:22:36 UTC) #6
dmichael (off chromium)
lgtm from my standpoint, but I'm not that knowledgeable about the NaCl and non-SFI stuff. ...
6 years, 4 months ago (2014-08-05 16:04:04 UTC) #7
teravest
https://codereview.chromium.org/418423002/diff/80001/ppapi/nacl_irt/irt_ppapi.cc File ppapi/nacl_irt/irt_ppapi.cc (right): https://codereview.chromium.org/418423002/diff/80001/ppapi/nacl_irt/irt_ppapi.cc#newcode5 ppapi/nacl_irt/irt_ppapi.cc:5: #include <stdio.h> On 2014/08/05 16:04:04, dmichael wrote: > ^^^ ...
6 years, 4 months ago (2014-08-05 18:15:29 UTC) #8
Mark Seaborn
Are you sure this keeps validation caching working? IIRC, when Hidehiko implemented the Chrome-IPC-based open_resource() ...
6 years, 4 months ago (2014-08-07 04:46:23 UTC) #9
teravest
This patch currently breaks validation caching. Thanks for following up there-- I zeroed out the ...
6 years, 4 months ago (2014-08-07 18:47:03 UTC) #10
Mark Seaborn
On 7 August 2014 11:47, <teravest@chromium.org> wrote: > This patch currently breaks validation caching. Thanks ...
6 years, 4 months ago (2014-08-07 22:55:17 UTC) #11
Mark Seaborn
On 7 August 2014 15:54, Mark Seaborn <mseaborn@chromium.org> wrote: > On 7 August 2014 11:47, ...
6 years, 4 months ago (2014-08-07 23:19:19 UTC) #12
teravest
On Thu, Aug 7, 2014 at 4:54 PM, Mark Seaborn <mseaborn@chromium.org> wrote: > On 7 ...
6 years, 4 months ago (2014-08-11 19:41:27 UTC) #13
Mark Seaborn
On 11 August 2014 12:41, Justin TerAvest <teravest@chromium.org> wrote: > On Thu, Aug 7, 2014 ...
6 years, 4 months ago (2014-08-13 17:48:22 UTC) #14
teravest
On Wed, Aug 13, 2014 at 11:48 AM, Mark Seaborn <mseaborn@chromium.org> wrote: > On 11 ...
6 years, 4 months ago (2014-08-13 20:05:53 UTC) #15
teravest
Patchset #9 (id:160001) has been deleted
6 years, 3 months ago (2014-08-27 15:25:56 UTC) #16
teravest
Patchset #9 (id:180001) has been deleted
6 years, 3 months ago (2014-08-27 15:26:05 UTC) #17
teravest
Okay, it looks like I've got validation caching working-- the tests that we have pass, ...
6 years, 3 months ago (2014-08-27 19:51:21 UTC) #18
dmichael (off chromium)
dmichael@chromium.org changed reviewers: + bbudge@chromium.org
6 years, 3 months ago (2014-08-27 20:49:14 UTC) #19
dmichael (off chromium)
Leaving early, but took a quick look. +bbudge who knows this stuff as well. https://codereview.chromium.org/418423002/diff/220001/components/nacl/browser/nacl_process_host.cc ...
6 years, 3 months ago (2014-08-27 20:49:14 UTC) #20
Mark Seaborn
https://codereview.chromium.org/418423002/diff/100001/ppapi/native_client/src/trusted/plugin/service_runtime.cc File ppapi/native_client/src/trusted/plugin/service_runtime.cc (right): https://codereview.chromium.org/418423002/diff/100001/ppapi/native_client/src/trusted/plugin/service_runtime.cc#newcode181 ppapi/native_client/src/trusted/plugin/service_runtime.cc:181: CHECK(!service_runtime_->main_service_runtime()); On 2014/08/07 18:47:02, teravest wrote: > On 2014/08/07 ...
6 years, 3 months ago (2014-08-28 21:33:49 UTC) #21
Mark Seaborn
More comments after having done a full pass over the change... https://codereview.chromium.org/418423002/diff/220001/chrome/test/data/nacl/manifest_file/pm_manifest_file_test.cc File chrome/test/data/nacl/manifest_file/pm_manifest_file_test.cc (left): ...
6 years, 3 months ago (2014-08-28 23:40:22 UTC) #22
teravest
https://codereview.chromium.org/418423002/diff/220001/chrome/test/data/nacl/manifest_file/pm_manifest_file_test.cc File chrome/test/data/nacl/manifest_file/pm_manifest_file_test.cc (left): https://codereview.chromium.org/418423002/diff/220001/chrome/test/data/nacl/manifest_file/pm_manifest_file_test.cc#oldcode1 chrome/test/data/nacl/manifest_file/pm_manifest_file_test.cc:1: /* On 2014/08/28 23:40:22, Mark Seaborn wrote: > BTW, ...
6 years, 3 months ago (2014-09-04 22:13:30 UTC) #25
teravest
https://codereview.chromium.org/418423002/diff/300001/components/nacl/loader/nacl_ipc_adapter.cc File components/nacl/loader/nacl_ipc_adapter.cc (right): https://codereview.chromium.org/418423002/diff/300001/components/nacl/loader/nacl_ipc_adapter.cc#newcode603 components/nacl/loader/nacl_ipc_adapter.cc:603: RewriteMessage(orig_msg, PpapiHostMsg_OpenResource::ID); The failure on Windows is that we ...
6 years, 3 months ago (2014-09-04 22:22:41 UTC) #26
Mark Seaborn
https://codereview.chromium.org/418423002/diff/300001/components/nacl/loader/nacl_ipc_adapter.cc File components/nacl/loader/nacl_ipc_adapter.cc (right): https://codereview.chromium.org/418423002/diff/300001/components/nacl/loader/nacl_ipc_adapter.cc#newcode603 components/nacl/loader/nacl_ipc_adapter.cc:603: RewriteMessage(orig_msg, PpapiHostMsg_OpenResource::ID); On 2014/09/04 22:22:41, teravest wrote: > The ...
6 years, 3 months ago (2014-09-05 15:43:46 UTC) #27
teravest
I was able to add the CHECKs for ensuring the file_token values are equal to ...
6 years, 3 months ago (2014-09-06 02:25:15 UTC) #28
Mark Seaborn
https://codereview.chromium.org/418423002/diff/380001/ppapi/proxy/nacl_message_scanner.cc File ppapi/proxy/nacl_message_scanner.cc (right): https://codereview.chromium.org/418423002/diff/380001/ppapi/proxy/nacl_message_scanner.cc#newcode54 ppapi/proxy/nacl_message_scanner.cc:54: SerializedHandle::WriteHeader(handle.header(), msg); BTW, this has a return valid that ...
6 years, 3 months ago (2014-09-08 16:26:53 UTC) #29
teravest
https://codereview.chromium.org/418423002/diff/380001/ppapi/proxy/nacl_message_scanner.cc File ppapi/proxy/nacl_message_scanner.cc (right): https://codereview.chromium.org/418423002/diff/380001/ppapi/proxy/nacl_message_scanner.cc#newcode54 ppapi/proxy/nacl_message_scanner.cc:54: SerializedHandle::WriteHeader(handle.header(), msg); On 2014/09/08 16:26:53, Mark Seaborn wrote: > ...
6 years, 3 months ago (2014-09-08 20:25:28 UTC) #30
Mark Seaborn
LGTM. When you CQ this, please test against linux_rel_precise32 so that the Non-SFI uses of ...
6 years, 3 months ago (2014-09-09 04:42:30 UTC) #31
teravest
https://codereview.chromium.org/418423002/diff/220001/components/nacl/loader/nacl_listener.cc File components/nacl/loader/nacl_listener.cc (right): https://codereview.chromium.org/418423002/diff/220001/components/nacl/loader/nacl_listener.cc#newcode278 components/nacl/loader/nacl_listener.cc:278: virtual bool OnMessageReceived(const IPC::Message& msg) OVERRIDE { On 2014/09/09 ...
6 years, 3 months ago (2014-09-09 16:49:07 UTC) #32
dmichael (off chromium)
Just some nits. lgtm https://codereview.chromium.org/418423002/diff/420001/components/nacl/loader/nacl_ipc_adapter.cc File components/nacl/loader/nacl_ipc_adapter.cc (right): https://codereview.chromium.org/418423002/diff/420001/components/nacl/loader/nacl_ipc_adapter.cc#newcode651 components/nacl/loader/nacl_ipc_adapter.cc:651: (NaClHandle) sh.descriptor().fd, We don't cast ...
6 years, 3 months ago (2014-09-09 19:19:44 UTC) #33
teravest
+tsepez for components/nacl/common/nacl_messages.h ppapi/proxy/ppapi_messages.h This change adds some file token fields that are communicated between ...
6 years, 3 months ago (2014-09-09 19:30:10 UTC) #35
Tom Sepez
Messages LGTM.
6 years, 3 months ago (2014-09-09 23:51:24 UTC) #36
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/teravest@chromium.org/418423002/440001
6 years, 3 months ago (2014-09-10 00:06:57 UTC) #38
commit-bot: I haz the power
Try jobs failed on following builders: android_arm64_dbg_recipe on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/android_arm64_dbg_recipe/builds/3464) android_clang_dbg_recipe on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/android_clang_dbg_recipe/builds/3292) chromium_presubmit ...
6 years, 3 months ago (2014-09-10 01:08:42 UTC) #41
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/teravest@chromium.org/418423002/460001
6 years, 3 months ago (2014-09-10 15:31:11 UTC) #43
commit-bot: I haz the power
Try jobs failed on following builders: linux_rel_precise32 on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_rel_precise32/builds/81)
6 years, 3 months ago (2014-09-10 18:25:09 UTC) #45
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/teravest@chromium.org/418423002/460001
6 years, 3 months ago (2014-09-10 18:52:36 UTC) #47
commit-bot: I haz the power
Patchset 20 (id:??) landed as https://crrev.com/cffdd030d9ecd5e2ef50de941fca337a94c3b476 Cr-Commit-Position: refs/heads/master@{#294208}
6 years, 3 months ago (2014-09-10 19:27:43 UTC) #48
teravest
6 years, 3 months ago (2014-09-10 19:29:06 UTC) #49
Message was sent while issue was closed.
Committed patchset #20 (id:460001) manually as cffdd03 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698