Loading...

android-platform@googlegroups.com

[Prev] Thread [Next]  |  [Prev] Date [Next]

dalvik backport from 2.3 to 2.2 freakingtux Thu Feb 23 06:00:20 2012

Hello.

I am trying to backport dalvik from Android 2.3 to Android 2.2. I am doing 
this to try a get a little more performance out of my 2.2. base
system(e.g. get the parallel GC working). The approach I am currently 
following is to only port dalvik changes and leave libnativehelper and 
libcore alone.

The code now compiles and running a simple Hello world works. When I try to 
start zygote I get the following error:
W/dalvikvm(13124): No implementation found for native 
Ljava/lang/Runtime;.nativeLoad (Ljava/lang/String;Ljava/lang/ClassLoader;)Z
W/dalvikvm(13124): Exception Ljava/lang/UnsatisfiedLinkError; thrown while 
initializing Landroid/media/ExifInterface;
W/dalvikvm(13124): No implementation found for native 
Ljava/lang/Class;.getName ()Ljava/lang/String;

Somehow dalvik can not find the nativeLoad method. I wrote a small Test app 
trying to load a native library and this indeed show the
same problem when invoking dalvikvm directly.

D/dalvikvm(13175): creating instr width table
W/dalvikvm(13175): No implementation found for native 
Ljava/lang/Runtime;.nativeLoad (Ljava/lang/String;Ljava/lang/ClassLoader;)Z
D/dalvikvm(13175): GC_CONCURRENT freed 23K, 90% free 109K/1024K, external 
0K/0K, paused 1ms+1ms

debugging dalvikvm still shows my the nativeLoad method is implemented and 
registerd by dalvik itself in the in
vm/native/InternalNative.c:dvmInternalNativeStartup method 

(gdb) p gDvmNativeMethodSet[2].methodInfo[5]
$8 = {
  name = 0xaca9357b "nativeLoad", 
  signature = 0xaca93586 
"(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/String;", 
  fnPtr = 0xaca624d5 <Dalvik_java_lang_Runtime_nativeLoad+1>

Should it be possible to upgrade only dalvik or did dependencies between 
dalvik and libcore change?
Do I need to call additional methods like registerCoreLibrariesJni 
as found in dalvik/libnativehelper/Register.c?


Thanks

-- 
You received this message because you are subscribed to the Google Groups 
"android-platform" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/android-platform/-/9YvyOhhiOPgJ.
To post to this group, send email to [EMAIL PROTECTED]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/android-platform?hl=en.