[libbluray-devel] JRE for Android part 2

Petri Hintukainen phintuka at users.sourceforge.net
Thu Jan 28 17:01:23 UTC 2021


to, 2021-01-28 kello 13:12 -0300, Vitor Dall'Acqua kirjoitti:
> Ok, moving forward.. crash -> bug report -> adb pull tombstone
> now:
> bahamut at pop-os:~/android-tools/android-ndk-r20$ ./ndk-stack --sym
> ~/KodiDV2/build/tools/android/packaging/xbmc/build/intermediates/symb
> ols -i ~/android-tools/tombstone_09 
> ********** Crash dump: **********
> Build fingerprint:
> 'NVIDIA/mdarcy/mdarcy:9/PPR1.180610.011/4079208_2513.0256:user/releas
> e-keys'
> #00 0x00000000008a823c /mnt/expand/cab01563-bcca-48fa-a0bf-
> 0fbddaf9b192/app/org.xbmc.kodi19DV-
> sUyRHaWlGB5SdxJV2JDSdg==/lib/arm64/libjvm.so
> Crash dump is completed
> 
> and yes my pc is called Bahamut :)
> 
> next...
> bahamut at pop-os:~/android-tools$ ./android-ndk-r20/toolchains/aarch64-
> linux-android-4.9/prebuilt/linux-x86_64/bin/aarch64-linux-android-
> addr2line -f -C -i -a 8a823c -e
> ~/Documents/petri/jre/lib/aarch64/server/libjvm.so 
> 0x00000000008a823c
> os::init_system_properties_values()
> ??:?
> 
> it is still showing as ??:? it might have something to do with the
> ELF value in memory that needs to be subtracted.. but if I understand
> this properly.. 
> Petri, you will need to compile another libjvm with a few changes.

Looking at the code at this address, it seems to be caused by unset
JAVA_HOME environment variable.

I can fix this in the source (it is an issue with Android port), but it
takes some time to rebuild the libraries => it is probably faster to
test if setting JAVA_HOME gets us further. You can set it to anything
at this point (it is not used in this function, it just needs to be
defined).

> On Thu, Jan 28, 2021 at 9:22 AM Vitor Dall'Acqua <veggav at gmail.com>
> wrote:
> > Good morning everyone,
> > Figured out why it's crashing but I still don't know how to fix it
> > 
> > 01-28 10:13:31.191 19223 19330 F libc    : Fatal signal 11
> > (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 19330
> > (Thread-3), pid 19223 (g.xbmc.kodi19DV)
> > 01-28 10:13:31.191 19223 19243 D Kodi    : OpenJDK 64-Bit Server VM
> > warning: No monotonic clock was available - timed services may be
> > adversely affected if the time-of-da
> > 01-28 10:13:31.191 19223 19243 D Kodi    : y clock changes
> > 01-28 10:13:31.478 19353 19353 F DEBUG   : *** *** *** *** *** ***
> > *** *** *** *** *** *** *** *** *** ***
> > 01-28 10:13:31.475 19353 19353 W crash_dump64: type=1400
> > audit(0.0:5353): avc: denied { search } for name="/" dev="tmpfs"
> > ino=1336 scontext=u:r:crash_dump:s0:c132,c256,c512,c768
> > tcontext=u:object_r:tmpfs:s0 tclass=dir permissive=0
> > 01-28 10:13:31.478 19353 19353 F DEBUG   : Build fingerprint:
> > 'NVIDIA/mdarcy/mdarcy:9/PPR1.180610.011/4079208_2513.0256:user/rele
> > ase-keys'
> > 01-28 10:13:31.478 19353 19353 F DEBUG   : Revision: '0'
> > 01-28 10:13:31.478 19353 19353 F DEBUG   : ABI: 'arm64'
> > 01-28 10:13:31.478 19353 19353 F DEBUG   : pid: 19223, tid: 19330,
> > name: Thread-3  >>> org.xbmc.kodi19DV <<<
> > 01-28 10:13:31.478 19353 19353 F DEBUG   : signal 11 (SIGSEGV),
> > code 1 (SEGV_MAPERR), fault addr 0x0
> > 01-28 10:13:31.478 19353 19353 F DEBUG   : Cause: null pointer
> > dereference
> > 01-28 10:13:31.478 19353 19353 F DEBUG   :     x0  0000000000000000
> >  x1  000000000000002f  x2  fffffffffffffffe  x3  0000000000000010
> > 01-28 10:13:31.479 19353 19353 F DEBUG   :     x4  000000287a1b1222
> >  x5  000000007fffffff  x6  0000000000000002  x7  0000000000000030
> > 01-28 10:13:31.479 19353 19353 F DEBUG   :     x8  0000000000000000
> >  x9  0000000000000000  x10 0000000000000009  x11 00000000fffffff7
> > 01-28 10:13:31.479 19353 19353 F DEBUG   :     x12 000000000000004c
> >  x13 00000000fffffff7  x14 0000002985757cb8  x15 000000000000004a
> > 01-28 10:13:31.479 19353 19353 F DEBUG   :     x16 000000287a1af1d8
> >  x17 000000287a106fc8  x18 0000000000000001  x19 00000029220be800
> > 01-28 10:13:31.479 19353 19353 F DEBUG   :     x20 0000002934ef7638
> >  x21 0000002985826000  x22 000000298583e914  x23 0000002985896000
> > 01-28 10:13:31.479 19353 19353 F DEBUG   :     x24 9fb1c16ed01cfd15
> >  x25 0000002934ef78d8  x26 0000000000000007  x27 0000002934ef78d8
> > 01-28 10:13:31.479 19353 19353 F DEBUG   :     x28 00000029228e7c00
> >  x29 0000002934ef75d0
> > 01-28 10:13:31.479 19353 19353 F DEBUG   :     sp  0000002934ef75d0
> >  lr  00000029854b423c  pc  00000029854b423c
> > 01-28 10:13:31.480 19353 19353 I unwind  : Malformed section header
> > found, ignoring...
> > 01-28 10:13:31.480 19353 19353 F DEBUG   : 
> > 01-28 10:13:31.480 19353 19353 F DEBUG   : backtrace:
> > 01-28 10:13:31.480 19353 19353 F DEBUG   :     #00 pc
> > 00000000008a823c  /mnt/expand/cab01563-bcca-48fa-a0bf-
> > 0fbddaf9b192/app/org.xbmc.kodi19DV-
> > TFUZwtqXJYBSjv0vIb1V4g==/lib/arm64/libjvm.so
> > 01-28 10:13:31.499  6592  6600 W System  : A resource failed to
> > call release. 
> > 
> > Permission issue?
> > 
> > On Wed, Jan 27, 2021 at 7:56 PM Petri Hintukainen < 
> > phintuka at users.sourceforge.net> wrote:
> > > ke, 2021-01-27 kello 19:43 -0300, Vitor Dall'Acqua kirjoitti:
> > > > Ok I'm doing the stupid way of doing things because other way
> > > every
> > > > time I touch the code it fails.
> > > > can you tell me why it's only loading the first entry?
> > > > static const char         all_libs[]  = {"libawt",
> > > 
> > > static const char * all_libs[] = {"libawt",
> > > 
> > > >                                         "libawt_headless",
> > > >                                         "libawt_xawt",
> > > >                                         "libdt_socket",
> > > >                                         "libfontmanager",
> > > >                                         "libhprof",
> > > >                                         "libinstrument",
> > > >                                         "libj2gss",
> > > >                                         "libj2pcsc",
> > > >                                         "libj2pkcs11",
> > > >                                         "libjaas_unix",
> > > >                                         "libjava",
> > > >                                         "libjava_crw_demo",
> > > >                                         "libjawt",
> > > >                                         "libjdwp",
> > > >                                         "libjli",
> > > >                                         "libjpeg",
> > > >                                         "libjsdt",
> > > >                                         "libjsig",
> > > >                                         "libjsound",
> > > >                                         "liblcms",
> > > >                                         "libmanagement",
> > > >                                         "libmlib_image",
> > > >                                         "libnet",
> > > >                                         "libnio",
> > > >                                         "libnpt",
> > > >                                         "libsctp",
> > > >                                         "libsunec",
> > > >                                         "libtinyiconv",
> > > >                                         "libunpack",
> > > >                                         "libverify",
> > > >                                         "ibzip",};
> > > 
> > > "libzip" (?)
> > > 
> > > >  
> > > > 
> > > >   dl_dlopen(all_libs, NULL);
> > > 
> > > dl_dlopen() opens only single library, you need to iterate over
> > > all
> > > libraries:
> > > 
> > >     for (size_t i = 0; i < sizeof(all_libs) /
> > > sizeof(all_libs[0]); i++)
> > >       dl_dlopen(all_libs[i], NULL);
> > > 
> > > > 
> > > >     result = JNI_CreateJavaVM_fp(jvm, (void**) env, &args);
> > > 
> > > 
> > > _______________________________________________
> > > libbluray-devel mailing list
> > > libbluray-devel at videolan.org
> > > https://mailman.videolan.org/listinfo/libbluray-devel
> _______________________________________________
> libbluray-devel mailing list
> libbluray-devel at videolan.org
> https://mailman.videolan.org/listinfo/libbluray-devel




More information about the libbluray-devel mailing list