Crash "Cause: null pointer dereference" when using filters and recording
pablogeek opened this issue · comments
Hi,
I'm having an issue in some devices when applying a filter. This only happens when the recording has started. Not happening when only showing the preview.
2021-11-03 16:02:34.540 27381-27381/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2021-11-03 16:02:34.541 27381-27381/? A/DEBUG: Build fingerprint: 'samsung/gta7litewifieea/gta7litewifi:11/RP1A.200720.012/T220XXU1AUI3:user/release-keys'
2021-11-03 16:02:34.541 27381-27381/? A/DEBUG: Revision: '0'
2021-11-03 16:02:34.541 27381-27381/? A/DEBUG: ABI: 'arm64'
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: Timestamp: 2021-11-03 16:02:34+0100
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: pid: 26860, tid: 27225, name: GLThread 4996 >>> com.irisconnect.discoverykitbeta <<<
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: uid: 10230
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x8
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: Cause: null pointer dereference
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: x0 b40000760ec16000 x1 0000000000000001 x2 0000000000000018 x3 0000007663657e9c
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: x4 0000000000000010 x5 00000076635fc210 x6 b40000760ec13100 x7 0000000000000008
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: x8 0000000000000001 x9 b40000760ec59848 x10 b40000760ec59dc8 x11 b40000760ec16008
2021-11-03 16:02:34.542 27381-27381/? A/DEBUG: x12 00000000ba2e8ba3 x13 0000000000000000 x14 0000000000000000 x15 0000000000000000
2021-11-03 16:02:34.543 27381-27381/? A/DEBUG: x16 0000000000007500 x17 00000000000074d0 x18 00000075e02be000 x19 b40000760ec52900
2021-11-03 16:02:34.543 27381-27381/? A/DEBUG: x20 0000000000000003 x21 b40000760ec58de0 x22 b40000760ec59378 x23 b40000760ec595a8
2021-11-03 16:02:34.543 27381-27381/? A/DEBUG: x24 00000076635d3000 x25 b40000760ec529d0 x26 b40000760ec598a0 x27 b40000760ec52908
2021-11-03 16:02:34.543 27381-27381/? A/DEBUG: x28 b40000760ec58de0 x29 00000075e0fe6c60
2021-11-03 16:02:34.543 27381-27381/? A/DEBUG: lr 0000000000000004 sp 00000075e0fe6520 pc 000000766372143c pst 0000000060000000
(apply){#266:vendor/mediatek/proprietary/hardware/mtkcam/aaa/source/mt6765/isp_mgr/isp_mgr_bnr.cpp}
2021-11-03 16:02:34.770 27381-27381/? A/DEBUG: backtrace:
2021-11-03 16:02:34.770 27381-27381/? A/DEBUG: #00 pc 000000000015f43c /vendor/lib64/egl/libGLESv2_mtk.so (BuildId: 33eaa7ef899a08c9549d61508013eb4c)
2021-11-03 16:02:34.770 27381-27381/? A/DEBUG: #01 pc 00000000000b292c /vendor/lib64/egl/libGLESv2_mtk.so (glDrawArrays+1568) (BuildId: 33eaa7ef899a08c9549d61508013eb4c)
2021-11-03 16:02:34.770 27381-27381/? A/DEBUG: #02 pc 00000000002581d8 /system/framework/arm64/boot-framework.oat (art_jni_trampoline+168) (BuildId: bf91ba5c3d9946e51d2708a41d555cc622413899)
2021-11-03 16:02:34.770 27381-27381/? A/DEBUG: #03 pc 000000000201b0d4 /memfd:jit-cache (deleted) (offset 0x2000000) (com.daasuu.gpuv.egl.filter.GlFilter.draw+500)
2021-11-03 16:02:34.770 27381-27381/? A/DEBUG: #04 pc 00000000020a77b8 /memfd:jit-cache (deleted) (offset 0x2000000) (com.daasuu.gpuv.egl.GlPreviewRenderer.onDrawFrame+1160)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #05 pc 0000000000135564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #06 pc 00000000001ab7e8 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #07 pc 00000000003260c0 /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #08 pc 000000000031c2a8 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+912) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #09 pc 00000000006919e0 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+848) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #10 pc 000000000012f814 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #11 pc 0000000000016228 /data/data/com.irisconnect.discoverykitbeta/code_cache/.overlay/base.apk/classes2.dex (com.daasuu.gpuv.egl.GlFrameBufferObjectRenderer.onDrawFrame+120)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #12 pc 00000000006936c4 /apex/com.android.art/lib64/libart.so (MterpInvokeInterface+1812) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.771 27381-27381/? A/DEBUG: #13 pc 000000000012fa14 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_interface+20) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #14 pc 00000000003e3fac /system/framework/framework.jar (offset 0x9c6000) (android.opengl.GLSurfaceView$GLThread.guardedRun+1236)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #15 pc 0000000000694308 /apex/com.android.art/lib64/libart.so (MterpInvokeDirect+1248) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #16 pc 000000000012f914 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_direct+20) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #17 pc 00000000003e463c /system/framework/framework.jar (offset 0x9c6000) (android.opengl.GLSurfaceView$GLThread.run+48)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #18 pc 0000000000313550 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.16144771737953522358)+264) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #19 pc 0000000000680168 /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+776) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #20 pc 000000000013eff8 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #21 pc 0000000000135564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #22 pc 00000000001ab7e8 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #23 pc 0000000000567e94 /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, jvalue const*)+460) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #24 pc 00000000005b8184 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1308) (BuildId: c9c23f88d3a02a2fbe7458daf7a5bd52)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #25 pc 00000000000ed098 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64) (BuildId: 7c95cc0d17d92058007afa23409fd94e)
2021-11-03 16:02:34.772 27381-27381/? A/DEBUG: #26 pc 000000000008cb10 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 7c95cc0d17d92058007afa23409fd94e)
I have been investigating this issue for a while but don't see why it is happening and only in some specific devices.
This also happens when using the example app provided in this repo.
Thanks
@MasayukiSuda I would really appreciate your help here. Thanks!