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

Issue 2633593004: Android: Use linker script to hide all non-JNI symbols (Closed)

Created:
3 years, 11 months ago by agrieve
Modified:
3 years, 10 months ago
Reviewers:
brettw, Torne, digit1
CC:
chromium-reviews, cbentzel+watch_chromium.org, mikecase+watch_chromium.org, jbudorick+watch_chromium.org, android-webview-reviews_chromium.org, agrieve+watch_chromium.org, ynovikov, Jamie Madill, wolenetz
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Android: Use linker script to hide all non-JNI symbols The linker script is applied to all shared_library() targets by default, just like the hide_jni one was. This reduces the size of libchrome.so by 220kb. BUG=448386 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_cronet_tester Review-Url: https://codereview.chromium.org/2633593004 Cr-Commit-Position: refs/heads/master@{#448988} Committed: https://chromium.googlesource.com/chromium/src/+/6888d5002b2eabe4fac226f0e5124fbd62bdd215

Patch Set 1 #

Patch Set 2 : missed two spots #

Patch Set 3 : forgot to git add :/ #

Patch Set 4 : sub-repos now updated #

Unified diffs Side-by-side diffs Delta from patch set Stats (+48 lines, -65 lines) Patch
M android_webview/BUILD.gn View 1 2 3 2 chunks +4 lines, -2 lines 0 comments Download
M android_webview/test/BUILD.gn View 2 chunks +3 lines, -2 lines 0 comments Download
D build/android/android_no_jni_exports.lst View 1 chunk +0 lines, -17 lines 0 comments Download
A build/android/android_only_explicit_jni_exports.lst View 1 2 1 chunk +13 lines, -0 lines 0 comments Download
A build/android/android_only_jni_exports.lst View 1 2 1 chunk +13 lines, -0 lines 0 comments Download
M build/config/BUILDCONFIG.gn View 1 2 3 2 chunks +3 lines, -8 lines 0 comments Download
M build/config/android/BUILD.gn View 1 2 3 1 chunk +4 lines, -7 lines 0 comments Download
M chrome/android/BUILD.gn View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M components/cronet/android/BUILD.gn View 1 2 3 2 chunks +0 lines, -15 lines 0 comments Download
D components/cronet/android/only_jni_exports.lst View 1 chunk +0 lines, -10 lines 0 comments Download
M gpu/BUILD.gn View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M testing/test.gni View 1 chunk +1 line, -1 line 0 comments Download
M third_party/netty-tcnative/BUILD.gn View 1 chunk +1 line, -1 line 0 comments Download
M tools/android/memconsumer/BUILD.gn View 1 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 49 (25 generated)
agrieve
I'll need to roll both angle and ffmpeg since they have shared_library targets :/. I ...
3 years, 11 months ago (2017-01-16 14:46:38 UTC) #16
Torne
I have an existing bug open for preventing this from regressing (I fixed them all ...
3 years, 11 months ago (2017-01-16 15:03:26 UTC) #17
agrieve
On 2017/01/16 15:03:26, Torne wrote: > I have an existing bug open for preventing this ...
3 years, 11 months ago (2017-01-16 15:17:41 UTC) #18
Torne
On 2017/01/16 15:17:41, agrieve wrote: > Thanks for this! > > From what I could ...
3 years, 11 months ago (2017-01-16 15:21:22 UTC) #19
Torne
One other thought that occurs to me: I forget what the current state actually is, ...
3 years, 11 months ago (2017-01-18 13:29:16 UTC) #20
agrieve
On 2017/01/18 13:29:16, Torne wrote: > One other thought that occurs to me: I forget ...
3 years, 11 months ago (2017-01-18 16:49:23 UTC) #21
Torne
On 2017/01/18 16:49:23, agrieve wrote: > On 2017/01/18 13:29:16, Torne wrote: > > One other ...
3 years, 11 months ago (2017-01-18 16:53:58 UTC) #22
digit1
The component build requires shared libraries to continue exposing their symbols (but hiding the Java_ ...
3 years, 11 months ago (2017-01-19 16:57:07 UTC) #23
digit1
3 years, 11 months ago (2017-01-19 16:57:41 UTC) #25
Torne
On 2017/01/19 16:57:07, digit1 wrote: > The component build requires shared libraries to continue exposing ...
3 years, 11 months ago (2017-01-19 16:59:15 UTC) #26
digit1
On 2017/01/19 16:59:15, Torne wrote: > Hiding the Java_ ones is not okay, because then ...
3 years, 11 months ago (2017-01-19 17:11:53 UTC) #27
Torne
On 2017/01/19 17:11:53, digit1 wrote: > On 2017/01/19 16:59:15, Torne wrote: > > Hiding the ...
3 years, 11 months ago (2017-01-19 17:20:13 UTC) #28
agrieve
On 2017/01/19 16:57:07, digit1 wrote: > The component build requires shared libraries to continue exposing ...
3 years, 11 months ago (2017-01-19 17:39:49 UTC) #30
agrieve
On 2017/01/19 17:39:49, agrieve wrote: > On 2017/01/19 16:57:07, digit1 wrote: > > The component ...
3 years, 11 months ago (2017-01-19 17:42:07 UTC) #31
Torne
On 2017/01/19 17:42:07, agrieve wrote: > I think this probably has reached "silent approval" in ...
3 years, 11 months ago (2017-01-19 17:55:37 UTC) #32
agrieve
On 2017/01/19 17:55:37, Torne wrote: > On 2017/01/19 17:42:07, agrieve wrote: > > I think ...
3 years, 11 months ago (2017-01-19 22:25:25 UTC) #33
digit1
> > Can you make this change more conditional on the type of build being ...
3 years, 11 months ago (2017-01-20 09:04:06 UTC) #34
agrieve
I think this is ready to go now.
3 years, 10 months ago (2017-02-01 15:44:33 UTC) #37
Torne
LGTM - any breakage from this should be pretty obvious if something got missed, and ...
3 years, 10 months ago (2017-02-02 12:29:38 UTC) #40
agrieve
brettw for OWNERS
3 years, 10 months ago (2017-02-02 14:48:53 UTC) #42
brettw
lgtm
3 years, 10 months ago (2017-02-08 05:01:42 UTC) #43
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2633593004/60001
3 years, 10 months ago (2017-02-08 12:35:02 UTC) #45
commit-bot: I haz the power
Committed patchset #4 (id:60001) as https://chromium.googlesource.com/chromium/src/+/6888d5002b2eabe4fac226f0e5124fbd62bdd215
3 years, 10 months ago (2017-02-08 14:36:27 UTC) #48
engedy
3 years, 10 months ago (2017-02-08 17:44:00 UTC) #49
Message was sent while issue was closed.
A revert of this CL (patchset #4 id:60001) has been created in
https://codereview.chromium.org/2685933002/ by engedy@chromium.org.

The reason for reverting is: Speculative revert, potential culprit for
webkit_tests crashing on "WebKit Android (Nexus4)". 

Stack traces show not much else than JNI managed->native transitions and
syscalls..

Powered by Google App Engine
This is Rietveld 408576698