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

Issue 454923002: Don't register JNI methods for the android_webview. (Closed)

Created:
6 years, 4 months ago by mkosiba (inactive)
Modified:
6 years, 3 months ago
Reviewers:
ostap, Torne, rmcilroy
CC:
chromium-reviews, klundberg+watch_chromium.org, erikwright+watch_chromium.org, yfriedman+watch_chromium.org, ilevy-cc_chromium.org, d.belchugov, davidxl_google.com
Project:
chromium
Visibility:
Public.

Description

Don't register JNI methods for the android_webview. Rather than registering all jni bindings at startup, only get references to the class object for those files which require bindings. All others are satisfied by exporting symbols which can be found automatically by the VM. BUG=402003 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=288685

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+428 lines, -16 lines) Patch
M base/android/jni_generator/jni_generator.py View 9 chunks +72 lines, -10 lines 0 comments Download
M base/android/jni_generator/jni_generator_tests.py View 2 chunks +40 lines, -1 line 0 comments Download
A base/android/jni_generator/testNativeExportsOption.golden View 1 chunk +216 lines, -0 lines 0 comments Download
A build/android/android_exports.lst View 1 chunk +14 lines, -0 lines 0 comments Download
M build/common.gypi View 4 chunks +6 lines, -5 lines 0 comments Download
M build/jar_file_jni_generator.gypi View 3 chunks +25 lines, -0 lines 0 comments Download
M build/jni_generator.gypi View 3 chunks +29 lines, -0 lines 0 comments Download
A build/linker_script_copy.gyp View 1 chunk +26 lines, -0 lines 0 comments Download

Messages

Total messages: 18 (0 generated)
mkosiba (inactive)
This is a reland of https://codereview.chromium.org/147533004/. The original change got reverted since it broke the ...
6 years, 4 months ago (2014-08-08 16:24:14 UTC) #1
mkosiba (inactive)
-mcilroy, +rmcilroy for the jni generator (typo, sorry)
6 years, 4 months ago (2014-08-08 16:26:44 UTC) #2
mkosiba (inactive)
+rmcilroy for real this time.
6 years, 4 months ago (2014-08-08 16:27:36 UTC) #3
rmcilroy
lgtm, thanks. Out of interest, what was the reason that this broke the crazy linker? ...
6 years, 4 months ago (2014-08-11 10:16:17 UTC) #4
Torne
On 2014/08/11 10:16:17, rmcilroy wrote: > lgtm, thanks. > > Out of interest, what was ...
6 years, 4 months ago (2014-08-11 10:24:01 UTC) #5
rmcilroy
On 2014/08/11 10:24:01, Torne wrote: > On 2014/08/11 10:16:17, rmcilroy wrote: > > lgtm, thanks. ...
6 years, 4 months ago (2014-08-11 10:29:30 UTC) #6
Torne
lgtm
6 years, 4 months ago (2014-08-11 10:36:55 UTC) #7
mkosiba (inactive)
The CQ bit was checked by mkosiba@chromium.org
6 years, 4 months ago (2014-08-11 10:42:18 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/mkosiba@chromium.org/454923002/1
6 years, 4 months ago (2014-08-11 10:43:28 UTC) #9
commit-bot: I haz the power
Change committed as 288685
6 years, 4 months ago (2014-08-11 11:27:25 UTC) #10
Yaron
On 2014/08/11 11:27:25, I haz the power (commit-bot) wrote: > Change committed as 288685 Glad ...
6 years, 4 months ago (2014-08-11 17:12:28 UTC) #11
Torne
Well, Chrome may be able to use it at some point if the linker works ...
6 years, 4 months ago (2014-08-11 17:23:21 UTC) #12
ostap
On 2014/08/11 17:23:21, Torne wrote: > Well, Chrome may be able to use it at ...
6 years, 4 months ago (2014-08-11 19:21:48 UTC) #13
chromium-reviews
+simonb (see question below) On 11 August 2014 20:21, <sl.ostapenko@samsung.com> wrote: > On 2014/08/11 17:23:21, ...
6 years, 4 months ago (2014-08-12 09:15:23 UTC) #14
mkosiba (inactive)
On 2014/08/11 19:21:48, ostap wrote: > On 2014/08/11 17:23:21, Torne wrote: > > Well, Chrome ...
6 years, 4 months ago (2014-08-12 09:47:46 UTC) #15
mkosiba (inactive)
On 2014/08/11 19:21:48, ostap wrote: > On 2014/08/11 17:23:21, Torne wrote: > > Well, Chrome ...
6 years, 4 months ago (2014-08-12 09:47:49 UTC) #16
Torne
On 2014/08/11 19:21:48, ostap wrote: > On 2014/08/11 17:23:21, Torne wrote: > > Well, Chrome ...
6 years, 4 months ago (2014-08-12 09:48:18 UTC) #17
dehao
6 years, 3 months ago (2014-09-09 23:00:41 UTC) #18
Message was sent while issue was closed.
Hi,

This patch will break FDO instrumentation build because compiler generated
global symbol will not be emitted in the libwebviewchromium.so

Dehao

On 2014/08/12 09:48:18, Torne wrote:
> On 2014/08/11 19:21:48, ostap wrote:
> > On 2014/08/11 17:23:21, Torne wrote:
> > > Well, Chrome may be able to use it at some point if the linker works out
how
> > to
> > > allow it. :)
> > 
> > Is it possible to integrate crazy linker into android libc and fix resolving
> of
> > the shared library symbols? If chromium browser has an improvement from
crazy
> > linker, may be other apps loading also would be improved?
> 
> I implemented the relro sharing part of the crazy linker into the android C
> library already, but this doesn't solve the problem for Chrome since this
change
> is only available in the upcoming Android L release, and Chrome supports all
the
> way back to ICS using the same binary.
> 
> > There is long open sourceware bug about loading dlopen of in-memory objects,
> > which I think could be helpful in this case:
> > https://sourceware.org/bugzilla/show_bug.cgi?id=11767
> > Glibc 2.19 has _dlfcn_hook which can be used to intercept dlopen/dlsym calls
> and
> > do symbol lookups before libc. Unfortunately it doesn't exist in android
libc.
> 
> > Otherwise there is no way to access libc symbol tables to add symbols
resolved
> > by crazy linker.
> 
> Unfortunately for the same reason we also can't rely on adding hooks to the
> system linker since they won't exist on older OS versions.

Powered by Google App Engine
This is Rietveld 408576698