Crash in libandroid_runtime.so
- Dominant language
- Java
- Stars
- 35k
- Forks
- 6.2k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 8
Description
**Glide Version**: 4.7.1
**Integration libraries**: OkHttp 3.10.0
**Device**:
* Galaxy S8+ (dream2lte)
* Galaxy S7 (herolte)
* Galaxy S7 edge (hero2lte)
* Galaxy Note8 (greatlte)
* and other Samsung devices
**Android Version**: Android 8.0
**Description**:
After updating from `4.6.1` to `4.7.1` we start seeing new crashes happening on Samsung devices with Android 8. Could not reproduce it so far, but looking at all the reports it seems like it fails in native because of the OOM, all devices have 1-2% of free memory.
Trying to understand if Glide is now using some new bitmap API on Oreo. I looked through the release notes and it is not really clear if it does. But we do not see the same crash (stacktrace) in any other apps or for Glide 4.6.1, so definitely something has changed between `4.6.1` and `4.7.1`.
```
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
backtrace:
#00 pc 0000000000177a80 /system/lib64/libandroid_runtime.so (_ZN7android6bitmap12createBitmapEP7_JNIEnvPNS_6BitmapEiP11_jbyteArrayP8_jobjecti+96)
#01 pc 000000000017dc70 /system/lib64/libandroid_runtime.so (_ZL8doDecodeP7_JNIEnvP18SkStreamRewindableP8_jobjectS4_+4640)
#02 pc 0000000000bc7aa0 /system/framework/arm64/boot-framework.oat (android.graphics.BitmapFactory.nativeDecodeStream [DEDUPED]+256)
#03 pc 0000000000bc7390 /system/framework/arm64/boot-framework.oat (android.graphics.BitmapFactory.decodeStream+272)
#04 pc 000000000052e238 /system/lib64/libart.so (art_quick_invoke_static_stub+600)
#05 pc 00000000000d86e4 /system/lib64/libart.so (_ZN3art9ArtMethod6InvokeEPNS_6ThreadEPjjPNS_6JValueEPKc+260)
#06 pc 0000000000291720 /system/lib64/libart.so (_ZN3art11interpreter34ArtInterpreterToCompiledCodeBridgeEPNS_6ThreadEPNS_9ArtMethodEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+352)
#07 pc 000000000028bd30 /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+672)
#08 pc 0000000000516c74 /system/lib64/libart.so (MterpInvokeStatic+468)
#09 pc 000000000051fb14 /system/lib64/libart.so (ExecuteMterpImpl+14612)
#10 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#11 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#12 pc 000000000028bd10 /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+640)
#13 pc 0000000000516c74 /system/lib64/libart.so (MterpInvokeStatic+468)
#14 pc 000000000051fb14 /system/lib64/libart.so (ExecuteMterpImpl+14612)
#15 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#16 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#17 pc 000000000028cbec /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb1ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+684)
#18 pc 0000000000518ca4 /system/lib64/libart.so (MterpInvokeVirtualQuickRange+516)
#19 pc 0000000000523794 /system/lib64/libart.so (ExecuteMterpImpl+30100)
#20 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#21 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#22 pc 000000000028bd10 /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+640)
#23 pc 0000000000516690 /system/lib64/libart.so (MterpInvokeInterface+1744)
#24 pc 000000000051fb94 /system/lib64/libart.so (ExecuteMterpImpl+14740)
#25 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#26 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#27 pc 000000000028cbec /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb1ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+684)
#28 pc 00000000005182b8 /system/lib64/libart.so (MterpInvokeDirectRange+424)
#29 pc 000000000051fd94 /system/lib64/libart.so (ExecuteMterpImpl+15252)
#30 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#31 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#32 pc 000000000028bd10 /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+640)
#33 pc 0000000000518898 /system/lib64/libart.so (MterpInvokeVirtualQuick+680)
#34 pc 0000000000523714 /system/lib64/libart.so (ExecuteMterpImpl+29972)
#35 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#36 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#37 pc 000000000028cbec /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb1ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+684)
#38 pc 00000000005182b8 /system/lib64/libart.so (MterpInvokeDirectRange+424)
#39 pc 000000000051fd94 /system/lib64/libart.so (ExecuteMterpImpl+15252)
#40 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#41 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#42 pc 000000000028cbec /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb1ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+684)
#43 pc 0000000000518ca4 /system/lib64/libart.so (MterpInvokeVirtualQuickRange+516)
#44 pc 0000000000523794 /system/lib64/libart.so (ExecuteMterpImpl+30100)
#45 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#46 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#47 pc 000000000028bd10 /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+640)
#48 pc 00000000005169b8 /system/lib64/libart.so (MterpInvokeDirect+504)
#49 pc 000000000051fa94 /system/lib64/libart.so (ExecuteMterpImpl+14484)
#50 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#51 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#52 pc 000000000028bd10 /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+640)
#53 pc 00000000005169b8 /system/lib64/libart.so (MterpInvokeDirect+504)
#54 pc 000000000051fa94 /system/lib64/libart.so (ExecuteMterpImpl+14484)
#55 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#56 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#57 pc 000000000028bd10 /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+640)
#58 pc 00000000005169b8 /system/lib64/libart.so (MterpInvokeDirect+504)
#59 pc 000000000051fa94 /system/lib64/libart.so (ExecuteMterpImpl+14484)
#60 pc 000000000026bed0 /system/lib64/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameENS_6JValueEb+448)
#61 pc 0000000000272794 /system/lib64/libart.so (_ZN3art11interpreter33ArtInterpreterToInterpreterBridgeEPNS_6ThreadEPKNS_7DexFile8CodeItemEPNS_11ShadowFrameEPNS_6JValueE+212)
#62 pc 000000000028cbec /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb1ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+684)
#63 pc 0000000000517fe8 /system/lib64/libart.so (MterpInvokeInterfaceRange+1736)
```
Contributor guide
Assessment
This issue has not been assessed yet.