Tensorflow lite crashing on android at native library libtensorflowlite_jni.so with code 11

Viewed 315

I am trying to run a tensorflow lite model in the background (while the app is closed) quite frequently (once every few minutes). After the app has run for several hours I got this error message signal 11 (SIGSEGV), code 1 (SEGV_MAPERR). I am aware that there are other people who have received similar issues, but after trying every solution I could find, I think that this might be a different issue.

Google Play Console Crash Log

pid: 0, tid: 0 >>> com.DD.GooglePlay <<<

backtrace:
  #00  pc 00000000001cf138  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000001cef98  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000001c75ec  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000000828b0  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000000822dc  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000000b2ba4  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000000b8470  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000000b70a0  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000000b13a8  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000001dd640  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 00000000001e0414  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000)
  #00  pc 000000000004af50  /data/app/~~PXyjTXZK6uVX_JbQzF-CNA==/com.DD.GooglePlay-qOnVNcJEpWKOgoYLG3cmFQ==/base.apk!libtensorflowlite_jni.so (offset 0xe52000) (Java_org_tensorflow_lite_NativeInterpreterWrapper_run+32)
  #00  pc 000000000013ded4  /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148)
  #00  pc 0000000002023f64  /memfd:jit-cache (org.tensorflow.lite.NativeInterpreterWrapper.run+436)
  #00  pc 0000000000134564  /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)
  #00  pc 0000000000198e94  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+204)
  #00  pc 000000000030c254  /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376)
  #00  pc 000000000030736c  /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*)+884)
  #00  pc 000000000063b0d4  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+868)
  #00  pc 000000000012e814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20)
  #00  pc 000000000031b136  [anon:dalvik-classes.dex (org.tensorflow.lite.Interpreter.runForMultipleInputsOutputs+10)
  #00  pc 000000000063b310  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1440)
  #00  pc 000000000012e814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20)
  #00  pc 000000000031b114  [anon:dalvik-classes.dex (org.tensorflow.lite.Interpreter.run+36)
  #00  pc 000000000063b310  /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1440)
  #00  pc 000000000012e814  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20)
  #00  pc 000000000000f884  [anon:dalvik-classes3.dex (com.DD.GooglePlay.TensorFlowImageClassifier.recognizeImage+36)
  #00  pc 000000000063cca4  /apex/com.android.art/lib64/libart.so (MterpInvokeInterface+1840)
  #00  pc 000000000012ea14  /apex/com.android.art/lib64/libart.so (mterp_op_invoke_interface+20)
  #00  pc 000000000000c30a  [anon:dalvik-classes3.dex (com.DD.GooglePlay.PhotoTaker.delete+334)
  #00  pc 00000000002fed48  /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.18441993989064323955)+268)
  #00  pc 0000000000629a84  /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+796)
  #00  pc 000000000013dff8  /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88)
  #00  pc 00000000020098e8  /memfd:jit-cache (com.DD.GooglePlay.PhotoTaker$3.run+6344)
  #00  pc 0000000000134564  /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)
  #00  pc 0000000000198e94  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+204)
  #00  pc 0000000000532198  /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+104)
  #00  pc 0000000000533398  /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValues<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, jvalue const*)+440)
  #00  pc 00000000005808b8  /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1272)
  #00  pc 00000000000b6374  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
  #00  pc 0000000000050fa4  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)

Attempted Solutions

I tried to change the tensorflow version according to this. Additionally, I tried changing the tensorflow implementation the way they did here.

0 Answers
Related