linkedin / linkedin/LiTr

Crash on canceling tranforming in emulator.

Open
#96 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
663
Forks
92
PR merge metrics
No merged PRs in 30d

Description

When I try to cancel video transformin in the emulator, I receive such a crash. On my real device, I don't experience such issue.

```
2021-02-23 10:30:32.583 A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2021-02-23 10:30:32.583 A/DEBUG: Build fingerprint: 'google/sdk_gphone_x86/generic_x86:10/QSR1.190920.001/5891938:user/release-keys'
2021-02-23 10:30:32.583 A/DEBUG: Revision: '0'
2021-02-23 10:30:32.583 A/DEBUG: ABI: 'x86'
2021-02-23 10:30:32.583 A/DEBUG: Timestamp: 2021-02-23 08:30:32+0000
2021-02-23 10:30:32.583 A/DEBUG: pid: 31045, tid: 32079, name: pool-37-thread- >>> test.staging.dev <<<
2021-02-23 10:30:32.583 A/DEBUG: uid: 10152
2021-02-23 10:30:32.583 A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x8
2021-02-23 10:30:32.583 A/DEBUG: Cause: null pointer dereference
2021-02-23 10:30:32.583 A/DEBUG: eax 00000000 ebx bbbe71c0 ecx 70590464 edx 00000000
2021-02-23 10:30:32.583 A/DEBUG: edi 00000000 esi 00000000
2021-02-23 10:30:32.583 A/DEBUG: ebp b8a016a8 esp b8a01680 eip bbbe26fb
2021-02-23 10:30:32.838 A/DEBUG: backtrace:
2021-02-23 10:30:32.838 A/DEBUG: #00 pc 000056fb /vendor/lib/libOpenglSystemCommon.so (HostConnection::gl2Encoder()+27) (BuildId: 97e1d22b8069f143602d476d1ebdafe4)
2021-02-23 10:30:32.838 A/DEBUG: #01 pc 0000ea09 /vendor/lib/egl/libGLESv2_emulation.so (glDeleteProgram+41) (BuildId: a3c36ea5da877d42dfd140329c8eed81)
2021-02-23 10:30:32.838 A/DEBUG: #02 pc 000da600 /system/lib/libandroid_runtime.so (android_glDeleteProgram__I(_JNIEnv*, _jobject*, int)+32) (BuildId: 6ceb9761bceb97a18c92f8a4b7072247)
2021-02-23 10:30:32.838 A/DEBUG: #03 pc 002a7e46 /system/framework/x86/boot-framework.oat (art_jni_trampoline+150) (BuildId: ff6ec03dd8445d20788424c92ba8ea28ad0f54f4)
2021-02-23 10:30:32.838 A/DEBUG: #04 pc 0013e9a2 /apex/com.android.runtime/lib/libart.so (art_quick_invoke_static_stub+418) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #05 pc 00149a7a /apex/com.android.runtime/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+298) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #06 pc 00332502 /apex/com.android.runtime/lib/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+386) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #07 pc 0032c19c /apex/com.android.runtime/lib/libart.so (bool art::interpreter::DoCall(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+988) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #08 pc 00684d03 /apex/com.android.runtime/lib/libart.so (MterpInvokeStatic+643) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #09 pc 001389a1 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_static+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #10 pc 00243f60 [anon:dalvik-classes3.dex extracted in memory from /data/app/se.stxt.android.staging.dev-dNlK8L-tLQ8tIw6cTieygA==/base.apk!classes3.dex] (com.linkedin.android.litr.filter.video.gl.VideoFrameRenderFilter.release+4)
2021-02-23 10:30:32.838 A/DEBUG: #11 pc 006837bc /apex/com.android.runtime/lib/libart.so (MterpInvokeInterface+1980) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #12 pc 00138a21 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_interface+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #13 pc 00245da0 [anon:dalvik-classes3.dex extracted in memory from /data/app/se.stxt.android.staging.dev-dNlK8L-tLQ8tIw6cTieygA==/base.apk!classes3.dex] (com.linkedin.android.litr.render.GlVideoRenderer.release+36)
2021-02-23 10:30:32.838 A/DEBUG: #14 pc 00681adc /apex/com.android.runtime/lib/libart.so (MterpInvokeVirtual+1612) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #15 pc 00138821 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_virtual+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #16 pc 002479dc [anon:dalvik-classes3.dex extracted in memory from /data/app/se.stxt.android.staging.dev-dNlK8L-tLQ8tIw6cTieygA==/base.apk!classes3.dex] (com.linkedin.android.litr.transcoder.VideoTrackTranscoder.stop+44)
2021-02-23 10:30:32.838 A/DEBUG: #17 pc 00681adc /apex/com.android.runtime/lib/libart.so (MterpInvokeVirtual+1612) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.838 A/DEBUG: #18 pc 00138821 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_virtual+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #19 pc 002420ca [anon:dalvik-classes3.dex extracted in memory from /data/app/se.stxt.android.staging.dev-dNlK8L-tLQ8tIw6cTieygA==/base.apk!classes3.dex] (com.linkedin.android.litr.TransformationJob.release+34)
2021-02-23 10:30:32.839 A/DEBUG: #20 pc 00681adc /apex/com.android.runtime/lib/libart.so (MterpInvokeVirtual+1612) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #21 pc 00138821 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_virtual+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #22 pc 0024233e [anon:dalvik-classes3.dex extracted in memory from /data/app/se.stxt.android.staging.dev-dNlK8L-tLQ8tIw6cTieygA==/base.apk!classes3.dex] (com.linkedin.android.litr.TransformationJob.transform+86)
2021-02-23 10:30:32.839 A/DEBUG: #23 pc 00681adc /apex/com.android.runtime/lib/libart.so (MterpInvokeVirtual+1612) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #24 pc 00138821 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_virtual+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #25 pc 002421d4 [anon:dalvik-classes3.dex extracted in memory from /data/app/se.stxt.android.staging.dev-dNlK8L-tLQ8tIw6cTieygA==/base.apk!classes3.dex] (com.linkedin.android.litr.TransformationJob.run+4)
2021-02-23 10:30:32.839 A/DEBUG: #26 pc 002f8e0a /apex/com.android.runtime/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEbb.llvm.12194892193087984976+298) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #27 pc 002ffcc5 /apex/com.android.runtime/lib/libart.so (art::interpreter::EnterInterpreterFromEntryPoint(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*)+181) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #28 pc 0066fbd9 /apex/com.android.runtime/lib/libart.so (artQuickToInterpreterBridge+1209) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #29 pc 0014503d /apex/com.android.runtime/lib/libart.so (art_quick_to_interpreter_bridge+77) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #30 pc 02071042 /memfd:/jit-cache (deleted) (java.util.concurrent.Executors$RunnableAdapter.call+66)
2021-02-23 10:30:32.839 A/DEBUG: #31 pc 0013e7d2 /apex/com.android.runtime/lib/libart.so (art_quick_invoke_stub+338) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #32 pc 00149a69 /apex/com.android.runtime/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+281) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #33 pc 00332502 /apex/com.android.runtime/lib/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+386) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #34 pc 0032c19c /apex/com.android.runtime/lib/libart.so (bool art::interpreter::DoCall(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+988) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #35 pc 006834ea /apex/com.android.runtime/lib/libart.so (MterpInvokeInterface+1258) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #36 pc 00138a21 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_interface+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #37 pc 001ecf6a /apex/com.android.runtime/javalib/core-oj.jar (java.util.concurrent.FutureTask.run+62)
2021-02-23 10:30:32.839 A/DEBUG: #38 pc 002f8e0a /apex/com.android.runtime/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEbb.llvm.12194892193087984976+298) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #39 pc 002ffcc5 /apex/com.android.runtime/lib/libart.so (art::interpreter::EnterInterpreterFromEntryPoint(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*)+181) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #40 pc 0066fbd9 /apex/com.android.runtime/lib/libart.so (artQuickToInterpreterBridge+1209) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #41 pc 0014503d /apex/com.android.runtime/lib/libart.so (art_quick_to_interpreter_bridge+77) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #42 pc 02100a4b /memfd:/jit-cache (deleted) (java.util.concurrent.ThreadPoolExecutor.runWorker+363)
2021-02-23 10:30:32.839 A/DEBUG: #43 pc 0013e7d2 /apex/com.android.runtime/lib/libart.so (art_quick_invoke_stub+338) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #44 pc 00149a69 /apex/com.android.runtime/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+281) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #45 pc 00332502 /apex/com.android.runtime/lib/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+386) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #46 pc 0032c19c /apex/com.android.runtime/lib/libart.so (bool art::interpreter::DoCall(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+988) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #47 pc 0068186d /apex/com.android.runtime/lib/libart.so (MterpInvokeVirtual+989) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #48 pc 00138821 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_virtual+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.839 A/DEBUG: #49 pc 001f6d60 /apex/com.android.runtime/javalib/core-oj.jar (java.util.concurrent.ThreadPoolExecutor$Worker.run+4)
2021-02-23 10:30:32.839 A/DEBUG: #50 pc 006837bc /apex/com.android.runtime/lib/libart.so (MterpInvokeInterface+1980) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #51 pc 00138a21 /apex/com.android.runtime/lib/libart.so (mterp_op_invoke_interface+33) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #52 pc 000ea918 /apex/com.android.runtime/javalib/core-oj.jar (java.lang.Thread.run+8)
2021-02-23 10:30:32.840 A/DEBUG: #53 pc 002f8e0a /apex/com.android.runtime/lib/libart.so (_ZN3art11interpreterL7ExecuteEPNS_6ThreadERKNS_20CodeItemDataAccessorERNS_11ShadowFrameENS_6JValueEbb.llvm.12194892193087984976+298) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #54 pc 002ffcc5 /apex/com.android.runtime/lib/libart.so (art::interpreter::EnterInterpreterFromEntryPoint(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame*)+181) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #55 pc 0066fbd9 /apex/com.android.runtime/lib/libart.so (artQuickToInterpreterBridge+1209) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #56 pc 0014503d /apex/com.android.runtime/lib/libart.so (art_quick_to_interpreter_bridge+77) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #57 pc 0013e7d2 /apex/com.android.runtime/lib/libart.so (art_quick_invoke_stub+338) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #58 pc 00149a69 /apex/com.android.runtime/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+281) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #59 pc 0055a513 /apex/com.android.runtime/lib/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+99) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #60 pc 0055b91a /apex/com.android.runtime/lib/libart.so (art::InvokeVirtualOrInterfaceWithJValues(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, jvalue const*)+474) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #61 pc 005aaa51 /apex/com.android.runtime/lib/libart.so (art::Thread::CreateCallback(void*)+1585) (BuildId: 895645e5113da057f27d9b2ec11eb3bf)
2021-02-23 10:30:32.840 A/DEBUG: #62 pc 0011a8e5 /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+53) (BuildId: 76290498408016ad14f4b98c3ab6c65c)
2021-02-23 10:30:32.840 A/DEBUG: #63 pc 000af6a7 /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+71) (BuildId: 76290498408016ad14f4b98c3ab6c65c)
2021-02-23 10:30:33.112 E/ResolverController: No valid NAT64 prefix (100, /0)
2021-02-23 10:30:34.114 E//system/bin/tombstoned: Tombstone written to: /data/tombstones/tombstone_07
```

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with VideoFrameRenderFilter.release, GlVideoRenderer.release, VideoTrackTranscoder.stop, and TransformationJob.release, which appear in the emulator backtrace. Reproduce cancellation on the Android x86 emulator and trace the release sequence around glDeleteProgram. Done means canceling video transformation no longer crashes in the emulator while preserving normal cleanup on real devices.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, java
Domain
audio-video-rtc, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.