Unity 2019.3 : "Crash On Android Phone" - android

I have built AAB (for ARM & ARM-64) then test it to my Android Smartphone, but I found it crash.
By Inspecting the log I found below error (using HTC U11, API Level 26):
Build fingerprint: 'htc/ocndugl_00401/htc_ocndugl:8.0.0/OPR6.170623.013/1002308.10:user/release-keys'
Revision: '0'
ABI: 'arm64'
pid: 31372, tid: 31556, name: Loading.Preload >>> com.apps.mygame <<<
signal 5 (SIGTRAP), code -6 (SI_TKILL), fault addr --------
x0 0000000000000000 x1 0000000000007b44 x2 0000000000000005 x3 0000007dad1fe1d1
x4 000000004e524157 x5 000000004e524157 x6 000000004e524157 x7 00000000004e5241
x8 0000000000000083 x9 346b4f359488495f x10 346b4f359488495f x11 0000000000000000
x12 0000000000000000 x13 0000000000000000 x14 0000000000000000 x15 0000007e351c8000
x16 0000007e3341f2e8 x17 0000007e333c0e04 x18 0000000000000000 x19 0000007dad1fead8
x20 0000000000000000 x21 0000007e14bfc840 x22 0000007e1428c11c x23 0000007dad1ff588
x24 0000007e14c36000 x25 0000000000800101 x26 000000000014d618 x27 0000007e110ef700
x28 0000007e110ef010 x29 0000000000000008 x30 0000007e1428be84
sp 0000007dad1fea60 pc 0000007e333c0e0c pstate 0000000000000000
backtrace:
#00 pc 000000000006ae0c /system/lib64/libc.so (tgkill+8)
#01 pc 000000000064ae80 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#02 pc 000000000064b390 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#03 pc 000000000027fa58 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#04 pc 000000000027fdf4 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#05 pc 00000000003035d0 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#06 pc 000000000030701c /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#07 pc 00000000002fff90 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#08 pc 0000000000329b80 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#09 pc 0000000000334628 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#10 pc 000000000032bf00 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#11 pc 000000000032c4e0 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#12 pc 0000000000276b40 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#13 pc 0000000000278488 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#14 pc 00000000002782d4 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#15 pc 0000000000278240 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#16 pc 00000000002cd5b8 /data/app/com.apps.mygame-dztW0fQOeFKAoF2N3WRWqw==/lib/arm64/libunity.so
#17 pc 00000000000677a4 /system/lib64/libc.so (_ZL15__pthread_startPv+36)
#18 pc 000000000001f2a4 /system/lib64/libc.so (__start_thread+68)
I read on Unity Forum it caused by Graphic Issue so need to disable OpenGL es 3. I have tested it but still failed.
Note, I'm using below plugin (All are latest) :
Unity IAP
Google Admob
Firebase
Also, I'm using Unity 2019.3.12f1 (almost latest)
Any Idea?

Related

React Native Expo: Native crash

Hope all are safe and good.
I'm a learn of React Native.
I created my first ever mobile app using React Native expo.
I released the same for Internal testing in google play console successfully.
After I received below error,
Crashes and ANRs
Native crash
Error Issue 1 of 1 Detected on 1 device during testing
Stack trace: Native crash of com.sanMobiApp.covid19
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'google/blueline/blueline:9/PQ3A.190801.002/5670241:user/release-keys'
Revision: 'MP1.0'
ABI: 'arm64'
pid: 17696, tid: 17960, name: Thread-5 >>> com.sanMobiApp.covid19 <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'Cannot get a dirty matrix!'
x0 0000000000000000 x1 0000000000004628 x2 0000000000000006 x3 0000000000000008
x4 feff71647164636d x5 feff71647164636d x6 feff71647164636d x7 7f7f7f7f7f7f7f7f
x8 0000000000000083 x9 00000073aa1790a0 x10 fffffff87ffffbdf x11 0000000000000001
x12 0000000000000018 x13 ffffffffffffffff x14 ffffffffff000000 x15 ffffffffffffffff
x16 00000073aa1b32c8 x17 00000073aa0f0dcc x18 0000007308f3435a x19 0000000000004520
x20 0000000000004628 x21 0000000014b14ce0 x22 0000000014b14d10 x23 0000000014b14ce0
x24 0000000014b14790 x25 0000000013309a50 x26 0000000000000000 x27 0000000000000000
x28 0000000014b14ce0 x29 0000007308f34a90
sp 0000007308f34a50 lr 00000073aa0e594c pc 00000073aa0e5974
backtrace:
#00 pc 0000000000021974 /system/lib64/libc.so (abort+116)
#01 pc 0000000000008090 /system/lib64/liblog.so (__android_log_assert+296)
#02 pc 00000000000fedf0 /system/lib64/libandroid_runtime.so (android::android_view_RenderNode_getTransformMatrix(long, long)+120)
#03 pc 00000000003d7c88 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.graphics.Matrix.nPostConcat [DEDUPED]+72)
#04 pc 0000000000b7b420 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.view.RenderNode.getMatrix+64)
#05 pc 0000000000c70d18 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.view.View.getMatrix+104)
#06 pc 0000000000d35524 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.view.ViewGroup.getChildVisibleRect+228)
#07 pc 0000000000d35928 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.view.ViewGroup.getChildVisibleRect+1256)
#08 pc 0000000000d35928 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.view.ViewGroup.getChildVisibleRect+1256)
#09 pc 0000000000d35928 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.view.ViewGroup.getChildVisibleRect+1256)
#10 pc 0000000000d35928 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.view.ViewGroup.getChildVisibleRect+1256)
#11 pc 0000000000d35928 /system/framework/arm64/boot-framework.oat (offset 0x3cd000) (android.view.ViewGroup.getChildVisibleRect+1256)
#12 pc 0000000000057c14 /dev/ashmem/dalvik-jit-code-cache (deleted)
Can you please help me to clear this error to push to production.
THANKS IN ADVANCE

jit thread pool crash

Im developing an Android application and now I am getting a very strange error I have no idea why it happens.
I also found no similar problem in the internet.
My project is also really big and so with this error message I dont really know which code could cause this, that is why here is no code.
crash log:
pid: 4228, tid: 4235, name: Jit thread pool >>> com.application.norm <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0xc0000000018
x0 0000000000000014 x1 0000fbd4a757e530 x2 8000000000000003 x3 0000000000000014
x4 0000fbd4a75e6448 x5 0000000000000009 x6 0000000000000000 x7 0000000000000000
x8 0000000000000127 x9 8a1336e56e6fef71 x10 0000000000000000 x11 0000000000000000
x12 0000000000000000 x13 0000fbd4abe7ac90 x14 ffffffffffffffff x15 0000000000000000
x16 000000000000019e x17 00000000000001a1 x18 0000000000000038 x19 0000fbd4a95fe960
x20 00000c0000000000 x21 0000fbd4abe86678 x22 0000000000000014 x23 0000fbd4abe77bd0
x24 0000000000000128 x25 0000fbd4a9fc0828 x26 0000000000000126 x27 0000fbd4abe77bb0
x28 0000000000000000 x29 0000fbd4a95fe880
sp 0000fbd4a95fe800 lr 0000fbd4a9ef7090 pc 0000fbd4a9ef70c0
backtrace:
#00 pc 00000000002130c0 /system/lib64/libart-compiler.so (art::RegisterAllocationResolver::ConnectSiblings(art::LiveInterval*)+608)
#01 pc 000000000016cd64 /system/lib64/libart-compiler.so (art::RegisterAllocationResolver::Resolve(art::ArrayRef<art::HInstruction* const>, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, art::ArrayRef<art::LiveInterval* const>)+884)
#02 pc 000000000021490c /system/lib64/libart-compiler.so (art::RegisterAllocatorLinearScan::AllocateRegisters()+140)
#03 pc 0000000000209d90 /system/lib64/libart-compiler.so (art::AllocateRegisters(art::HGraph*, art::CodeGenerator*, art::PassObserver*, art::RegisterAllocator::Strategy, art::OptimizingCompilerStats*)+640)
#04 pc 0000000000209558 /system/lib64/libart-compiler.so (art::OptimizingCompiler::TryCompile(art::ArenaAllocator*, art::ArenaStack*, art::CodeVectorAllocator*, art::DexCompilationUnit const&, art::ArtMethod*, bool, art::VariableSizedHandleScope*) const+2120)
#05 pc 00000000001681fc /system/lib64/libart-compiler.so (art::OptimizingCompiler::JitCompile(art::Thread*, art::jit::JitCodeCache*, art::ArtMethod*, bool, art::jit::JitLogger*)+820)
#06 pc 000000000010d60c /system/lib64/libart-compiler.so (art::jit::JitCompiler::CompileMethod(art::Thread*, art::ArtMethod*, bool)+204)
#07 pc 0000000000309fcc /system/lib64/libart.so (art::jit::Jit::CompileMethod(art::ArtMethod*, art::Thread*, bool)+620)
#08 pc 000000000030c694 /system/lib64/libart.so (art::jit::JitCompileTask::Run(art::Thread*)+644)
#09 pc 00000000004b0bb8 /system/lib64/libart.so (art::ThreadPoolWorker::Run()+88)
#10 pc 00000000004b068c /system/lib64/libart.so (art::ThreadPoolWorker::Callback(void*)+148)
#11 pc 0000000000083114 /system/lib64/libc.so (__pthread_start(void*)+36)
#12 pc 00000000000233bc /system/lib64/libc.so (__start_thread+68)
Every time this crash occurs, The following information will be included in the dmesg information
Line 780: [ 7.247798] EXT4-fs (mmcblk0p12): 1 orphan inode deleted
Line 781: [ 7.253968] EXT4-fs (mmcblk0p12): recovery complete
Line 782: [ 7.266940] EXT4-fs (mmcblk0p12): mounted filesystem with ordered data mode. Opts: errors=remount-ro,nomblk_io_submit
Line 819: [ 7.826534] EXT4-fs (mmcblk0p12): Ignoring removed nomblk_io_submit option
I don't know if this exception message is related to this crash。
if you know, please help me,
thanks a lot
In my case (quite a large Qt-based project) this was caused by an attempt to use a dangling pointer to an instance of QObject derived class.

SIGSEGV when using native library on android, hardware accelerated only

I'm using the Superpowered SDK to do some audio playback and recording. When I press a button to start playback the app crashes with
A/DEBUG: ABI: 'arm64'
A/DEBUG: pid: 18529, tid: 18548, name: RenderThread >>> com.superpowered.example <<<
A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x10
A/DEBUG: x0 0000007f789f8000 x1 0000007f7409f288 x2 0000007f7d6a8a88 x3 0000000000fe502b
A/DEBUG: x4 0000000000116906 x5 0000000000000000 x6 00000a4cc0b1813f x7 0000007f789f8000
A/DEBUG: x8 000000000055655a x9 000000000055655a x10 000000000000a8c0 x11 00000000213b09a0
A/DEBUG: x12 0000000000000018 x13 ffffffffa82de1ea x14 000bb95f86000000 x15 003b9aca00000000
A/DEBUG: x16 0000007f7dadc7d8 x17 0000007f7d6a8a54 x18 0000007f78892ee8 x19 0000007f78891000
A/DEBUG: x20 0000007f7409f288 x21 0000007f78892ee8 x22 0000007f7bf4e000 x23 0000007f7bf4e000
A/DEBUG: x24 0000007f7409f288 x25 7fffffffffffffff x26 00000000ffffffff x27 0000007f7a52a9b0
A/DEBUG: x28 0000007f635331e0 x29 0000007f7409f190 x30 0000007f7bec3840
A/DEBUG: sp 0000007f7409f190 pc 0000007f7bec3850 pstate 0000000080000000
A/DEBUG: backtrace:
A/DEBUG: #00 pc 0000000000025850 /system/lib64/libhwui.so
A/DEBUG: #01 pc 0000000000026e5c /system/lib64/libhwui.so
A/DEBUG: #02 pc 0000000000026fd8 /system/lib64/libhwui.so
A/DEBUG: #03 pc 000000000002b43c /system/lib64/libhwui.so (android::uirenderer::renderthread::RenderThread::threadLoop()+124)
A/DEBUG: #04 pc 000000000001579c /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+208)
A/DEBUG: #05 pc 00000000000903cc /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+96)
A/DEBUG: #06 pc 0000000000014fec /system/lib64/libutils.so
A/DEBUG: #07 pc 0000000000065fb4 /system/lib64/libc.so (__pthread_start(void*)+52)
A/DEBUG: #08 pc 000000000001ed84 /system/lib64/libc.so (__start_thread+16)
I already opened an issue on their github repo, but they won't investigate any further bacause it's obviously an error in my "custom UI code".
So after hours of debugging here is what I found:
It seems like triggering playback in the native library somehow interferes with the android internals.
Adding random delays to the button actions reduces the likelihood of a crash.
A temporary workaround was to disable hardware acceleration (android:hardwareAccelerated="false").
If you want to try it yourself you can find the code here.
Has anyone had a similiar problem? Is there any workaround that doesn't involve disabling HW acceleration? Any help is greatly appreciated!

Encountered EGL error 12291 EGL_BAD_ALLOC during rendering

I have a Live Wallpaper app that handle images.
I'm getting some crashes report in the Play Store (but not in fabric.io) with this stack trace:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'samsung/hero2ltexx/hero2lte:6.0.1/MMB29K/G935FXXU1APDN:user/release-keys'
Revision: '9'
ABI: 'arm64'
pid: 15250, tid: 15331, name: RenderThread >>> com.xxxx.xxxxx <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'Encountered EGL error 12291 EGL_BAD_ALLOC during rendering'
x0 0000000000000000 x1 0000000000003be3 x2 0000000000000006 x3 0000000000000000
x4 0000000000000000 x5 0000000000000001 x6 0000000000000000 x7 0000000000000000
x8 0000000000000083 x9 fefeff7e6032ce0b x10 7f7f7f7f7f7fff7f x11 0101010101010101
x12 0000000000000010 x13 0000007f6f425bdc x14 0000000000000001 x15 000000000000000f
x16 0000007f9422f568 x17 0000007f941c23b8 x18 0000007f945cf720 x19 0000007f6f426500
x20 0000007f6f426440 x21 0000000000000019 x22 0000000000000006 x23 0000007f6132f6c0
x24 0000007f6132e800 x25 0000007f614fd7b0 x26 0000000000000002 x27 0000007f70602bb0
x28 0000007f6eb58c10 x29 0000007f6f425b80 x30 0000007f941bfb54
sp 0000007f6f425b80 pc 0000007f941c23c0 pstate 0000000020000000
backtrace:
#00 pc 00000000000693c0 /system/lib64/libc.so (tgkill+8)
#01 pc 0000000000066b50 /system/lib64/libc.so (pthread_kill+68)
#02 pc 0000000000023990 /system/lib64/libc.so (raise+28)
#03 pc 000000000001e2c0 /system/lib64/libc.so (abort+60)
#04 pc 000000000000cf04 /system/lib64/libcutils.so (__android_log_assert+236)
#05 pc 000000000002be6c /system/lib64/libhwui.so
#06 pc 00000000000284f4 /system/lib64/libhwui.so
#07 pc 000000000002aa68 /system/lib64/libhwui.so
#08 pc 000000000002ef50 /system/lib64/libhwui.so (_ZN7android10uirenderer12renderthread12RenderThread10threadLoopEv+124)
#09 pc 000000000001699c /system/lib64/libutils.so (_ZN7android6Thread11_threadLoopEPv+208)
#10 pc 0000000000095110 /system/lib64/libandroid_runtime.so (_ZN7android14AndroidRuntime15javaThreadShellEPv+96)
#11 pc 00000000000161ec /system/lib64/libutils.so
#12 pc 0000000000065fa0 /system/lib64/libc.so (_ZL15__pthread_startPv+52)
#13 pc 000000000001ee6c /system/lib64/libc.so (__start_thread+16)
I cannot find many informations on internet... it seems a Samsung issue only.
I had the same issue from a service, it crash when the service get destroyed, onDestroy remove some view on the WindowManager.
The solution I found working is to remove the view using removeViewImmediate instead of removeView
#Override
public void onDestroy() {
super.onDestroy();
WindowManager windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
windowManager.removeView(view);
}
replaced by
#Override
public void onDestroy() {
super.onDestroy();
WindowManager windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
windowManager.removeViewImmediate(view);
}
https://developer.android.com/reference/android/view/WindowManager.html#removeViewImmediate(android.view.View)
Not sure why yet this solve it, the doc is light...
It only happened on Samsung device that use Android 6.0.1 (mainly S6 and S7).

JNI ERROR (app bug): local reference table overflow (max=512) even with out Native Code

we recently launched our app and upgrade actually from previous version..
and suddenly we started to see this error in a ton of devices ..we have no clue whats happening and the logs are very vague ..
Attaching the logs here .But any help or some clue might help us debug the issue .
Build fingerprint: 'Verizon/zeroltevzw/zeroltevzw:5.1.1/LMY47X/G925VVRU4BOK7:user/release-keys'
Revision: '10'
ABI: 'arm64'
pid: 31610, tid: 31610, name: st.mediamanager >>> <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'sart/runtime/indirect_reference_table.cc:98] JNI ERROR (app bug): local reference table overflow (max=512)'
x0 0000000000000000 x1 0000000000007b7a x2 0000000000000006 x3 0000007fa219fe30
x4 0000007fa219fe30 x5 0000000000000005 x6 0000000000000001 x7 0000000000000020
x8 0000000000000083 x9 00000000000000ca x10 0000007fa1f2a000 x11 0000000000000001
x12 0000000000000001 x13 0000007fa1f2a000 x14 c4aa4c0daad90e20 x15 0000007f92002a31
x16 0000007fa1f2a610 x17 0000007fa1eca174 x18 0000000000000000 x19 0000007fa219fe30
x20 0000007fa21a00e8 x21 0000007fa1f30000 x22 0000000000000001 x23 0000000000000006
x24 0000007fee90e2d0 x25 0000007f9e0a6000 x26 0000007fee90e2c8 x27 0000007f9dffd520
x28 0000007f9e0a6000 x29 0000007fee90e150 x30 0000007fa1e8c264
sp 0000007fee90e150 pc 0000007fa1eca17c pstate 0000000060000000
backtrace:
#00 pc 000000000005e17c /system/lib64/libc.so (tgkill+8)
#01 pc 0000000000020260 /system/lib64/libc.so (pthread_kill+160)
#02 pc 0000000000021794 /system/lib64/libc.so (raise+28)
#03 pc 000000000001b17c /system/lib64/libc.so (abort+60)
#04 pc 0000000000310534 /system/lib64/libart.so (art::Runtime::Abort()+300)
#05 pc 00000000000d5378 /system/lib64/libart.so (art::LogMessage::~LogMessage()+2684)
#06 pc 00000000001e7ff0 /system/lib64/libart.so (art::IndirectReferenceTable::Add(unsigned int, art::mirror::Object*)+416)
#07 pc 00000000002e28cc /system/lib64/libart.so (art::VMClassLoader_findLoadedClass(_JNIEnv*, _jclass*, _jobject*, _jstring*)+248)
#08 pc 000000000002a5dc /system/framework/arm64/boot.oat
Build fingerprint: 'Verizon/trltevzw/trltevzw:5.1.1/LMY47X/N910VVRU2BPA1:user/release-keys'
Revision: '12'
ABI: 'arm'
pid: 481, tid: 481, name: st.mediamanager >>> <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'sart/runtime/indirect_reference_table.cc:109] JNI ERROR (app bug): local reference table overflow (max=512)'
r0 00000000 r1 000001e1 r2 00000006 r3 00000000
r4 b6fc3e38 r5 00000006 r6 00000016 r7 0000010c
r8 00000000 r9 b486f550 sl b4827800 fp 00000475
ip 000001e1 sp bebbaaf8 lr b6e22715 pc b6e46854 cpsr 60070010
backtrace:
#00 pc 00038854 /system/lib/libc.so (tgkill+12)
#01 pc 00014711 /system/lib/libc.so (pthread_kill+52)
#02 pc 0001532f /system/lib/libc.so (raise+10)
#03 pc 00011bc9 /system/lib/libc.so (__libc_android_abort+36)
#04 pc 0001003c /system/lib/libc.so (abort+4)
#05 pc 00230cd1 /system/lib/libart.so (art::Runtime::Abort()+160)
#06 pc 000ac58b /system/lib/libart.so (art::LogMessage::~LogMessage()+1322)
#07 pc 0016996d /system/lib/libart.so (art::IndirectReferenceTable::Add(unsigned int, art::mirror::Object*)+244)
#08 pc 00214f43 /system/lib/libart.so (art::VMClassLoader_findLoadedClass(_JNIEnv*, _jclass*, _jobject*, _jstring*)+162)
#09 pc 0001bd8d /system/framework/arm/boot.oat
Build fingerprint: 'Verizon/zenltevzw/zenltevzw:5.1.1/LMY47X/G928VVRU2AOJ3:user/release-keys'
Revision: '9'
ABI: 'arm64'
pid: 18658, tid: 18658, name: st.mediamanager >>> <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'sart/runtime/indirect_reference_table.cc:109] JNI ERROR (app bug): local reference table overflow (max=512)'
x0 0000000000000000 x1 00000000000048e2 x2 0000000000000006 x3 0000007fa3887e30
x4 0000007fa3887e30 x5 0000000000000005 x6 0000000000000001 x7 0000000000000020
x8 0000000000000083 x9 000000000000005e x10 0000007fa3613000 x11 0000000000000001
x12 0000000000000001 x13 0000007fa3613000 x14 24d3f27831b256ef x15 0000000000000001
x16 0000007fa3613610 x17 0000007fa35b30d4 x18 0000000000000000 x19 0000007fa3887e30
x20 0000007fa38880e8 x21 0000007fa3619000 x22 0000000000000001 x23 0000000000000006
x24 0000007fc7e2cbc0 x25 0000007f9f820d40 x26 0000000000000001 x27 0000007f8c101b60
x28 0000000000000000 x29 0000007fc7e2ca40 x30 0000007fa3575224
sp 0000007fc7e2ca40 pc 0000007fa35b30dc pstate 0000000060000000
backtrace:
#00 pc 000000000005e0dc /system/lib64/libc.so (tgkill+8)
#01 pc 0000000000020220 /system/lib64/libc.so (pthread_kill+160)
#02 pc 0000000000021754 /system/lib64/libc.so (raise+28)
#03 pc 000000000001b13c /system/lib64/libc.so (abort+60)
#04 pc 00000000002ffca4 /system/lib64/libart.so (art::Runtime::Abort()+300)
#05 pc 00000000000d15b8 /system/lib64/libart.so (art::LogMessage::~LogMessage()+2684)
#06 pc 00000000002ad730 /system/lib64/libart.so (art::Monitor::VisitLocks(art::StackVisitor*, void (*)(art::mirror::Object*, void*), void*, bool)+952
#07 pc 0000000000314978 /system/lib64/libart.so (art::StackDumpVisitor::VisitFrame()+568)
#08 pc 000000000030ba08 /system/lib64/libart.so (art::StackVisitor::WalkStack(bool)+308)
#09 pc 0000000000313754 /system/lib64/libart.so (art::Thread::DumpJavaStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+268)
#10 pc 0000000000313968 /system/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+272)
#11 pc 000000000031e8dc /system/lib64/libart.so (art::ThreadList::DumpLocked(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)+100)
#12 pc 00000000002ffd34 /system/lib64/libart.so (art::Runtime::Abort()+444)
#13 pc 00000000000d15b8 /system/lib64/libart.so (art::LogMessage::~LogMessage()+2684)
#14 pc 00000000001d7468 /system/lib64/libart.so (art::IndirectReferenceTable::Add(unsigned int, art::mirror::Object*)+416)
#15 pc 00000000002d2018 /system/lib64/libart.so (art::VMClassLoader_findLoadedClass(_JNIEnv*, _jclass*, _jobject*, _jstring*)+248)
#16 pc 000000000002a5dc /system/framework/arm64/boot.oat
Build fingerprint: 'Verizon/kltevzw/kltevzw:5.0/LRX21T/G900VVRU2BOK3:user/release-keys'
Revision: '14'
ABI: 'arm'
pid: 32148, tid: 32148, name: st.mediamanager >>> <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'art/runtime/indirect_reference_table.cc:113] JNI ERROR (app bug): local reference table overflow (max=512)'
r0 00000000 r1 00007d94 r2 00000006 r3 00000000
r4 b6f92114 r5 00000006 r6 00000016 r7 0000010c
r8 00000000 r9 b4e4f520 sl b4e07800 fp 000004ba
ip 00007d94 sp be8a3b38 lr b6f1bfd1 pc b6f40268 cpsr 60070010
backtrace:
#00 pc 00038268 /system/lib/libc.so (tgkill+12)
#01 pc 00013fcd /system/lib/libc.so (pthread_kill+52)
#02 pc 00014beb /system/lib/libc.so (raise+10)
#03 pc 00011531 /system/lib/libc.so (__libc_android_abort+36)
#04 pc 0000fcbc /system/lib/libc.so (abort+4)
#05 pc 0021d5d9 /system/lib/libart.so (art::Runtime::Abort()+160)
#06 pc 000a834b /system/lib/libart.so (art::LogMessage::~LogMessage()+1322)
#07 pc 001574b7 /system/lib/libart.so (art::IndirectReferenceTable::Add(unsigned int, art::mirror::Object*)+346)
#08 pc 002010d5 /system/lib/libart.so (art::VMClassLoader_findLoadedClass(_JNIEnv*, _jclass*, _jobject*, _jstring*)+136)
#09 pc 0001b151 /system/framework/arm/boot.oat
I don't have a full answer, but its too lengthy for a comment so I'll post it as one.
So the error is just what you expect- its a call into native code that causes you to have more than 512 objects shared with native. Usually that happens because of a leak somewhere. And you don't need to be using native code directly to do it- the framework makes a LOT of native calls behind the scenes.
From the stack trace- I see its libart.so, not libdalvik.so. So this is happening on new devices which have switched from the Dalvik VM to Art. The stack trace looks like it was trying to load a class and add a reference to it for some JNI code, but I can't be certain of that. I do know that we've seen class loading bugs at work on Art that didn't exist on dalvik.
If you have any native code at all I'd make sure you were releasing all reference to java memory and classes properly. If you don't- this may be a bug in Art, knowing what the app was doing at the time of the crash would be useful. Is the crash consistent? If so, what are you doing?

Categories

Resources