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

Issue 1832623002: PNaCl Dynamic Linking: Using unordered_set to disallow duplicate modules. (Closed)

Created:
4 years, 9 months ago by Sean Klein
Modified:
4 years, 8 months ago
Reviewers:
Mark Seaborn
CC:
native-client-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/native_client/src/native_client.git@master
Target Ref:
refs/heads/master
Project:
nacl
Visibility:
Public.

Description

PNaCl Dynamic Linking: Using unordered_set to disallow duplicate modules. Also adds mechanism to add DSOs as sonames rather than full filenames. The unordered_set uses sonames (rather than pathnames) as a unique identifier. In the future, this will allow us to ignore duplicates dependencies. If, for example, multiple modules depend on libc.so, then there should be a quick way to identify if libc.so already exists in the list of instantiated modules. TEST=pll_loader_test BUG=https://bugs.chromium.org/p/nativeclient/issues/detail?id=4351 Committed: https://chromium.googlesource.com/native_client/src/native_client/+/b756424472fdd7689518c557e1e66d25f5350bdd

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : Using unordered_set, preserving vector. #

Total comments: 2

Patch Set 4 : Added AddBySoname/SetSonameSearchPaths, tested in pll_loader_test #

Total comments: 10

Patch Set 5 : Code review #

Unified diffs Side-by-side diffs Delta from patch set Stats (+57 lines, -11 lines) Patch
M src/untrusted/pll_loader/pll_loader.h View 1 2 3 4 3 chunks +14 lines, -1 line 0 comments Download
M src/untrusted/pll_loader/pll_loader.cc View 1 2 3 4 2 chunks +28 lines, -0 lines 0 comments Download
M tests/pnacl_dynamic_loading/nacl.scons View 1 2 3 4 1 chunk +3 lines, -2 lines 0 comments Download
M tests/pnacl_dynamic_loading/pll_loader_test.cc View 1 2 3 4 1 chunk +12 lines, -8 lines 0 comments Download

Messages

Total messages: 25 (12 generated)
Sean Klein
I'll check that the bots pass, but I thought it would be good to get ...
4 years, 9 months ago (2016-03-23 22:12:51 UTC) #2
Mark Seaborn
On 23 March 2016 at 15:12, <smklein@chromium.org> wrote: > Reviewers: Mark Seaborn > CL: https://codereview.chromium.org/1832623002/ ...
4 years, 9 months ago (2016-03-24 18:25:22 UTC) #4
Sean Klein
On 2016/03/24 18:25:22, Mark Seaborn wrote: > On 23 March 2016 at 15:12, <mailto:smklein@chromium.org> wrote: ...
4 years, 9 months ago (2016-03-24 22:10:34 UTC) #8
Sean Klein
(sorry for the empty message. Double clicking reply is a bad idea.) > OK, some ...
4 years, 9 months ago (2016-03-24 22:15:43 UTC) #9
Mark Seaborn
https://codereview.chromium.org/1832623002/diff/40001/src/untrusted/pll_loader/pll_loader.cc File src/untrusted/pll_loader/pll_loader.cc (right): https://codereview.chromium.org/1832623002/diff/40001/src/untrusted/pll_loader/pll_loader.cc#newcode26 src/untrusted/pll_loader/pll_loader.cc:26: const char *GetSoname(const char *path) { I'm not sure ...
4 years, 9 months ago (2016-03-25 17:57:28 UTC) #10
Sean Klein
https://codereview.chromium.org/1832623002/diff/40001/src/untrusted/pll_loader/pll_loader.cc File src/untrusted/pll_loader/pll_loader.cc (right): https://codereview.chromium.org/1832623002/diff/40001/src/untrusted/pll_loader/pll_loader.cc#newcode26 src/untrusted/pll_loader/pll_loader.cc:26: const char *GetSoname(const char *path) { On 2016/03/25 17:57:28, ...
4 years, 9 months ago (2016-03-25 18:43:57 UTC) #11
Mark Seaborn
On 25 March 2016 at 11:43, <smklein@chromium.org> wrote: > > > https://codereview.chromium.org/1832623002/diff/40001/src/untrusted/pll_loader/pll_loader.cc > File src/untrusted/pll_loader/pll_loader.cc ...
4 years, 9 months ago (2016-03-25 18:52:46 UTC) #12
Sean Klein
> I think we will still want an AddByFilename(). For comparison, dlopen() > can take ...
4 years, 9 months ago (2016-03-25 18:55:09 UTC) #13
Sean Klein
On 2016/03/25 18:55:09, Sean Klein wrote: > > I think we will still want an ...
4 years, 9 months ago (2016-03-25 23:57:03 UTC) #18
Mark Seaborn
LGTM https://codereview.chromium.org/1832623002/diff/100001/src/untrusted/pll_loader/pll_loader.cc File src/untrusted/pll_loader/pll_loader.cc (right): https://codereview.chromium.org/1832623002/diff/100001/src/untrusted/pll_loader/pll_loader.cc#newcode100 src/untrusted/pll_loader/pll_loader.cc:100: struct stat buf; Nit: putting this immediately before ...
4 years, 9 months ago (2016-03-26 00:30:11 UTC) #19
Sean Klein
https://codereview.chromium.org/1832623002/diff/100001/src/untrusted/pll_loader/pll_loader.cc File src/untrusted/pll_loader/pll_loader.cc (right): https://codereview.chromium.org/1832623002/diff/100001/src/untrusted/pll_loader/pll_loader.cc#newcode100 src/untrusted/pll_loader/pll_loader.cc:100: struct stat buf; On 2016/03/26 00:30:10, Mark Seaborn wrote: ...
4 years, 9 months ago (2016-03-26 00:47:25 UTC) #20
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1832623002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1832623002/120001
4 years, 8 months ago (2016-03-28 15:57:39 UTC) #23
commit-bot: I haz the power
4 years, 8 months ago (2016-03-28 16:56:00 UTC) #25
Message was sent while issue was closed.
Committed patchset #5 (id:120001) as
https://chromium.googlesource.com/native_client/src/native_client/+/b75642447...

Powered by Google App Engine
This is Rietveld 408576698