schwabe / ics-openvpn

OpenVPN for Android
3.31k stars 1.2k forks source link

ANR in OpenVpnManagementThread #1563

Closed Awaizhassan closed 1 year ago

Awaizhassan commented 1 year ago

General information:

OpenVpnManagementThread causing so much ANR which affect user experience. I have tried on 8 to 10 devices to reproduce the ANR but its not happening on my devices, but the play console and Firebase is reporting the ANR.

  1. Android Version : 8+
  2. Android Vendor/Custom ROM: Almost every device
  3. Device: Different devices, not specific. almost all devices.

Description of the issue

The ANR occurs when user connect the VPN. I am unable to reproduce the ANR on my available devices.

Rout as per Stack Trace

  1. private void releaseHoldCmd() { mResumeHandler.removeCallbacks(mResumeHoldRunnable); if ((System.currentTimeMillis() - mLastHoldRelease) < 5000) { try { Thread.sleep(3000); } catch (InterruptedException ignored) { Log.d(TAG, "releaseHoldCmd: "); } } mWaitingForRelease = false; mLastHoldRelease = System.currentTimeMillis(); managmentCommand("hold release\n"); managmentCommand("bytecount " + mBytecountInterval + "\n"); managmentCommand("state on\n"); //managmentCommand("log on all\n"); }

  2. public boolean managmentCommand(String cmd) { try { if (mSocket != null && mSocket.getOutputStream() != null) { mSocket.getOutputStream().write(cmd.getBytes()); mSocket.getOutputStream().flush(); return true; } else{ return false; } } catch (IOException e) { return false; } }

Log


# Crashlytics - Stack trace
# Platform: android
# Version: 1.3 (4)
# Issue: 0505baf5df590cc4366d7ff9f1064933
# Session: 6385E411036500011D7E61735A006C29_DNE_0_v2
# Date: Tue Nov 29 2022 16:17:05 GMT+0500

Signal Catcher (runnable):tid=4 systid=7557 
#00 pc 0x53a6e0 libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool) + 128)
#01 pc 0x6f0e04 libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool, BacktraceMap*, bool) const + 236)
#02 pc 0x6fe690 libart.so (art::DumpCheckpoint::Run(art::Thread*) + 208)
#03 pc 0x364248 libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*) + 440)
#04 pc 0x6fce30 libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool) + 280)
#05 pc 0x6fc824 libart.so (art::ThreadList::DumpForSigQuit(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) + 292)
#06 pc 0x6d5974 libart.so (art::Runtime::DumpForSigQuit(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) + 184)
#07 pc 0x6e1994 libart.so (art::SignalCatcher::HandleSigQuit() + 468)
#08 pc 0x574230 libart.so (art::SignalCatcher::Run(void*) + 264)
#09 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#10 pc 0x7a93c libc.so (__start_thread + 68)

main (timed waiting):tid=1 systid=7550 
       at java.lang.Thread.sleep(Thread.java)
       at java.lang.Thread.sleep(Thread.java:450)
       at java.lang.Thread.sleep(Thread.java:355)
       at de.blinkt.openvpn.core.OpenVpnManagementThread.releaseHoldCmd(OpenVpnManagementThread.java:22)
       at de.blinkt.openvpn.core.OpenVpnManagementThread.lambda$new$0(OpenVpnManagementThread.java:7)
       at androidx.appcompat.widget.TooltipCompatHandler$$InternalSyntheticLambda$0$990bd139c764fdd0af01d525cfae7cb46744c3b2435b7922b50af1bf6983d455$1.run$bridge(TooltipCompatHandler.java:7)
       at android.os.Handler.handleCallback(Handler.java:938)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loopOnce(Looper.java:233)
       at android.os.Looper.loop(Looper.java:344)
       at android.app.ActivityThread.main(ActivityThread.java:8191)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:584)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1034)

perfetto_hprof_listener (native):tid=7 systid=7558 
#00 pc 0xc9148 libc.so (read + 8)
#01 pc 0x1d840 libperfetto_hprof.so (void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, ArtPlugin_Initialize::$_34> >(void*) + 260)
#02 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#03 pc 0x7a93c libc.so (__start_thread + 68)

Binder:7550_1 (native):tid=8 systid=7565 
#00 pc 0xc93e8 libc.so (__ioctl + 8)
#01 pc 0x82ec8 libc.so (ioctl + 156)
#02 pc 0x56044 libbinder.so (android::IPCThreadState::talkWithDriver(bool) + 292)
#03 pc 0x56334 libbinder.so (android::IPCThreadState::getAndExecuteCommand() + 28)
#04 pc 0x56c6c libbinder.so (android::IPCThreadState::joinThreadPool(bool) + 72)
#05 pc 0x83584 libbinder.so (android::PoolThread::threadLoop() + 28)
#06 pc 0x1358c libutils.so (android::Thread::_threadLoop(void*) + 264)
#07 pc 0xbf47c libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*) + 148)
#08 pc 0x12de8 libutils.so (thread_data_t::trampoline(thread_data_t const*) + 408)
#09 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#10 pc 0x7a93c libc.so (__start_thread + 68)

Jit thread pool worker thread 0 (native):tid=9 systid=7559 
#00 pc 0x75570 libc.so (syscall + 32)
#01 pc 0x47cc80 libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*) + 140)
#02 pc 0x47cb18 libart.so (art::ThreadPool::GetTask(art::Thread*) + 120)
#03 pc 0x6199e4 libart.so (art::ThreadPoolWorker::Run() + 136)
#04 pc 0x6198c4 libart.so (art::ThreadPoolWorker::Callback(void*) + 160)
#05 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#06 pc 0x7a93c libc.so (__start_thread + 68)

FinalizerWatchdogDaemon (waiting):tid=10 systid=7564 
       at java.lang.Object.wait(Object.java)
       at java.lang.Object.wait(Object.java:442)
       at java.lang.Object.wait(Object.java:568)
       at java.lang.Daemons$FinalizerWatchdogDaemon.sleepUntilNeeded(Daemons.java:385)
       at java.lang.Daemons$FinalizerWatchdogDaemon.runInternal(Daemons.java:365)
       at java.lang.Daemons$Daemon.run(Daemons.java:140)
       at java.lang.Thread.run(Thread.java:1012)

ReferenceQueueDaemon (waiting):tid=11 systid=7562 
       at java.lang.Object.wait(Object.java)
       at java.lang.Object.wait(Object.java:442)
       at java.lang.Object.wait(Object.java:568)
       at java.lang.Daemons$ReferenceQueueDaemon.runInternal(Daemons.java:232)
       at java.lang.Daemons$Daemon.run(Daemons.java:140)
       at java.lang.Thread.run(Thread.java:1012)

FinalizerDaemon (waiting):tid=12 systid=7563 
       at java.lang.Object.wait(Object.java)
       at java.lang.Object.wait(Object.java:442)
       at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:203)
       at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:224)
       at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:300)
       at java.lang.Daemons$Daemon.run(Daemons.java:140)
       at java.lang.Thread.run(Thread.java:1012)

HeapTaskDaemon (waiting):tid=13 systid=7560 
#00 pc 0x75570 libc.so (syscall + 32)
#01 pc 0x47cc80 libart.so (art::ConditionVariable::WaitHoldingLocks(art::Thread*) + 140)
#02 pc 0x46d13c libart.so (art::gc::TaskProcessor::GetTask(art::Thread*) + 736)
#03 pc 0x46ce10 libart.so (art::gc::TaskProcessor::RunAllTasks(art::Thread*) + 32)
       at dalvik.system.VMRuntime.runHeapTasks(VMRuntime.java)
       at java.lang.Daemons$HeapTaskDaemon.runInternal(Daemons.java:609)
       at java.lang.Daemons$Daemon.run(Daemons.java:140)
       at java.lang.Thread.run(Thread.java:1012)

Binder:7550_2 (native):tid=14 systid=7567 
#00 pc 0xc93e8 libc.so (__ioctl + 8)
#01 pc 0x82ec8 libc.so (ioctl + 156)
#02 pc 0x56044 libbinder.so (android::IPCThreadState::talkWithDriver(bool) + 292)
#03 pc 0x56334 libbinder.so (android::IPCThreadState::getAndExecuteCommand() + 28)
#04 pc 0x56c6c libbinder.so (android::IPCThreadState::joinThreadPool(bool) + 72)
#05 pc 0x83584 libbinder.so (android::PoolThread::threadLoop() + 28)
#06 pc 0x1358c libutils.so (android::Thread::_threadLoop(void*) + 264)
#07 pc 0xbf47c libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*) + 148)
#08 pc 0x12de8 libutils.so (thread_data_t::trampoline(thread_data_t const*) + 408)
#09 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#10 pc 0x7a93c libc.so (__start_thread + 68)

Profile Saver (native):tid=15 systid=7568 
#00 pc 0x75574 libc.so (syscall + 36)
#01 pc 0x48771c libart.so (art::ConditionVariable::TimedWait(art::Thread*, long, int) + 252)
#02 pc 0x54380c libart.so (art::ProfileSaver::Run() + 524)
#03 pc 0x538fc0 libart.so (art::ProfileSaver::RunProfileSaverThread(void*) + 148)
#04 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#05 pc 0x7a93c libc.so (__start_thread + 68)

Crashlytics Exception Handler1 (waiting):tid=17 systid=7573 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1063)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:2)
       at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:5)
       at java.lang.Thread.run(Thread.java:1012)

com.google.firebase.crashlytics.startup1 (waiting):tid=18 systid=7574 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1063)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:2)
       at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:5)
       at java.lang.Thread.run(Thread.java:1012)

awaitEvenIfOnMainThread task continuation executor1 (waiting):tid=20 systid=7576 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1063)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at com.google.firebase.crashlytics.internal.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:2)
       at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:5)
       at java.lang.Thread.run(Thread.java:1012)

pool-6-thread-1 (waiting):tid=22 systid=7578 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1063)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

GmsDynamite (waiting):tid=23 systid=7579 
       at java.lang.Object.wait(Object.java)
       at java.lang.Object.wait(Object.java:442)
       at java.lang.Object.wait(Object.java:568)
       at com.google.android.gms.dynamite.zza.run(zza.java:6)

WM.task-1 (waiting):tid=27 systid=7586 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1063)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

DefaultDispatcher-worker-2 (timed waiting):tid=28 systid=7589 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

RenderThread (native):tid=26 systid=7591 
#00 pc 0xca3ac libc.so (__epoll_pwait + 12)
#01 pc 0x17ea8 libutils.so (android::Looper::pollInner(int) + 184)
#02 pc 0x17d84 libutils.so (android::Looper::pollOnce(int, int*, int*, void**) + 116)
#03 pc 0x3d8cf0 libhwui.so (android::uirenderer::ThreadBase::waitForWork() + 136)
#04 pc 0x3d8b38 libhwui.so (android::uirenderer::renderthread::RenderThread::threadLoop() + 80)
#05 pc 0x1358c libutils.so (android::Thread::_threadLoop(void*) + 264)
#06 pc 0x12de8 libutils.so (thread_data_t::trampoline(thread_data_t const*) + 408)
#07 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#08 pc 0x7a93c libc.so (__start_thread + 68)

WM.task-2 (waiting):tid=30 systid=7602 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
       at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1063)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

queued-work-looper (native):tid=25 systid=7607 
#00 pc 0xca3ac libc.so (__epoll_pwait + 12)
#01 pc 0x17ea8 libutils.so (android::Looper::pollInner(int) + 184)
#02 pc 0x17d84 libutils.so (android::Looper::pollOnce(int, int*, int*, void**) + 116)
#03 pc 0x154e7c libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int) + 48)
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:339)
       at android.os.Looper.loopOnce(Looper.java:179)
       at android.os.Looper.loop(Looper.java:344)
       at android.os.HandlerThread.run(HandlerThread.java:67)

LooperMessageSuperviser (native):tid=32 systid=7611 
#00 pc 0xca3ac libc.so (__epoll_pwait + 12)
#01 pc 0x17ea8 libutils.so (android::Looper::pollInner(int) + 184)
#02 pc 0x17d84 libutils.so (android::Looper::pollOnce(int, int*, int*, void**) + 116)
#03 pc 0x154e7c libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int) + 48)
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:339)
       at android.os.Looper.loopOnce(Looper.java:179)
       at android.os.Looper.loop(Looper.java:344)
       at android.os.HandlerThread.run(HandlerThread.java:67)

Binder:7550_3 (native):tid=34 systid=7614 
#00 pc 0xc93e8 libc.so (__ioctl + 8)
#01 pc 0x82ec8 libc.so (ioctl + 156)
#02 pc 0x56044 libbinder.so (android::IPCThreadState::talkWithDriver(bool) + 292)
#03 pc 0x56334 libbinder.so (android::IPCThreadState::getAndExecuteCommand() + 28)
#04 pc 0x56c6c libbinder.so (android::IPCThreadState::joinThreadPool(bool) + 72)
#05 pc 0x83584 libbinder.so (android::PoolThread::threadLoop() + 28)
#06 pc 0x1358c libutils.so (android::Thread::_threadLoop(void*) + 264)
#07 pc 0xbf47c libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*) + 148)
#08 pc 0x12de8 libutils.so (thread_data_t::trampoline(thread_data_t const*) + 408)
#09 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#10 pc 0x7a93c libc.so (__start_thread + 68)

hwuiTask0 (native):tid=35 systid=7622 
#00 pc 0x75570 libc.so (syscall + 32)
#01 pc 0x79e3c libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + 148)
#02 pc 0xdd3b0 libc.so (pthread_cond_wait + 84)
#03 pc 0x56ca0 libc++.so (std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 24)
#04 pc 0x5123b4 libhwui.so (android::uirenderer::CommonPool::workerLoop() + 96)
#05 pc 0x213f58 libhwui.so (void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, android::uirenderer::CommonPool::CommonPool()::$_0> >(void*) + 264)
#06 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#07 pc 0x7a93c libc.so (__start_thread + 68)

hwuiTask1 (native):tid=36 systid=7623 
#00 pc 0x75570 libc.so (syscall + 32)
#01 pc 0x79e3c libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + 148)
#02 pc 0xdd3b0 libc.so (pthread_cond_wait + 84)
#03 pc 0x56ca0 libc++.so (std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 24)
#04 pc 0x5123b4 libhwui.so (android::uirenderer::CommonPool::workerLoop() + 96)
#05 pc 0x213f58 libhwui.so (void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, android::uirenderer::CommonPool::CommonPool()::$_0> >(void*) + 264)
#06 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#07 pc 0x7a93c libc.so (__start_thread + 68)

Binder:7550_4 (native):tid=37 systid=7642 
#00 pc 0xc93e8 libc.so (__ioctl + 8)
#01 pc 0x82ec8 libc.so (ioctl + 156)
#02 pc 0x56044 libbinder.so (android::IPCThreadState::talkWithDriver(bool) + 292)
#03 pc 0x56334 libbinder.so (android::IPCThreadState::getAndExecuteCommand() + 28)
#04 pc 0x56c6c libbinder.so (android::IPCThreadState::joinThreadPool(bool) + 72)
#05 pc 0x83584 libbinder.so (android::PoolThread::threadLoop() + 28)
#06 pc 0x1358c libutils.so (android::Thread::_threadLoop(void*) + 264)
#07 pc 0xbf47c libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*) + 148)
#08 pc 0x12de8 libutils.so (thread_data_t::trampoline(thread_data_t const*) + 408)
#09 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#10 pc 0x7a93c libc.so (__start_thread + 68)

GoogleApiHandler (native):tid=33 systid=7653 
#00 pc 0xca3ac libc.so (__epoll_pwait + 12)
#01 pc 0x17ea8 libutils.so (android::Looper::pollInner(int) + 184)
#02 pc 0x17d84 libutils.so (android::Looper::pollOnce(int, int*, int*, void**) + 116)
#03 pc 0x154e7c libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int) + 48)
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:339)
       at android.os.Looper.loopOnce(Looper.java:179)
       at android.os.Looper.loop(Looper.java:344)
       at android.os.HandlerThread.run(HandlerThread.java:67)

ConnectivityThread (native):tid=43 systid=7671 
#00 pc 0xca3ac libc.so (__epoll_pwait + 12)
#01 pc 0x17ea8 libutils.so (android::Looper::pollInner(int) + 184)
#02 pc 0x17d84 libutils.so (android::Looper::pollOnce(int, int*, int*, void**) + 116)
#03 pc 0x154e7c libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int) + 48)
       at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
       at android.os.MessageQueue.next(MessageQueue.java:339)
       at android.os.Looper.loopOnce(Looper.java:179)
       at android.os.Looper.loop(Looper.java:344)
       at android.os.HandlerThread.run(HandlerThread.java:67)

DefaultDispatcher-worker-5 (timed waiting):tid=5 systid=7689 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-1 (timed waiting):tid=49 systid=7700 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-3 (timed waiting):tid=63 systid=7724 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-6 (timed waiting):tid=69 systid=7735 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-4 (timed waiting):tid=70 systid=7736 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-8 (timed waiting):tid=71 systid=7705 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-7 (timed waiting):tid=72 systid=7703 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

Binder:7550_5 (native):tid=119 systid=7801 
#00 pc 0xc93e8 libc.so (__ioctl + 8)
#01 pc 0x82ec8 libc.so (ioctl + 156)
#02 pc 0x56044 libbinder.so (android::IPCThreadState::talkWithDriver(bool) + 292)
#03 pc 0x56334 libbinder.so (android::IPCThreadState::getAndExecuteCommand() + 28)
#04 pc 0x56c6c libbinder.so (android::IPCThreadState::joinThreadPool(bool) + 72)
#05 pc 0x83584 libbinder.so (android::PoolThread::threadLoop() + 28)
#06 pc 0x1358c libutils.so (android::Thread::_threadLoop(void*) + 264)
#07 pc 0xbf47c libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*) + 148)
#08 pc 0x12de8 libutils.so (thread_data_t::trampoline(thread_data_t const*) + 408)
#09 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#10 pc 0x7a93c libc.so (__start_thread + 68)

Binder:7550_6 (native):tid=140 systid=7861 
#00 pc 0xc93e8 libc.so (__ioctl + 8)
#01 pc 0x82ec8 libc.so (ioctl + 156)
#02 pc 0x56044 libbinder.so (android::IPCThreadState::talkWithDriver(bool) + 292)
#03 pc 0x56334 libbinder.so (android::IPCThreadState::getAndExecuteCommand() + 28)
#04 pc 0x56c6c libbinder.so (android::IPCThreadState::joinThreadPool(bool) + 72)
#05 pc 0x83584 libbinder.so (android::PoolThread::threadLoop() + 28)
#06 pc 0x1358c libutils.so (android::Thread::_threadLoop(void*) + 264)
#07 pc 0xbf47c libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*) + 148)
#08 pc 0x12de8 libutils.so (thread_data_t::trampoline(thread_data_t const*) + 408)
#09 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#10 pc 0x7a93c libc.so (__start_thread + 68)

Binder:7550_7 (native):tid=2 systid=11611 
#00 pc 0xc93e8 libc.so (__ioctl + 8)
#01 pc 0x82ec8 libc.so (ioctl + 156)
#02 pc 0x56044 libbinder.so (android::IPCThreadState::talkWithDriver(bool) + 292)
#03 pc 0x56334 libbinder.so (android::IPCThreadState::getAndExecuteCommand() + 28)
#04 pc 0x56c6c libbinder.so (android::IPCThreadState::joinThreadPool(bool) + 72)
#05 pc 0x83584 libbinder.so (android::PoolThread::threadLoop() + 28)
#06 pc 0x1358c libutils.so (android::Thread::_threadLoop(void*) + 264)
#07 pc 0xbf47c libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*) + 148)
#08 pc 0x12de8 libutils.so (thread_data_t::trampoline(thread_data_t const*) + 408)
#09 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#10 pc 0x7a93c libc.so (__start_thread + 68)

UIMonitorThread (timed waiting):tid=3 systid=18733 
       at java.lang.Object.wait(Object.java)
       at java.lang.Object.wait(Object.java:442)
       at android.os.OplusTheiaUIMonitor$MonitorThread.run(OplusTheiaUIMonitor.java:183)

ScionFrontendApi (timed waiting):tid=6 systid=18734 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
       at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
       at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:458)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1062)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

DefaultDispatcher-worker-9 (timed waiting):tid=19 systid=18742 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-10 (timed waiting):tid=21 systid=18744 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-12 (timed waiting):tid=24 systid=18746 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-11 (timed waiting):tid=29 systid=18745 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-13 (timed waiting):tid=31 systid=18747 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-15 (timed waiting):tid=38 systid=18749 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

DefaultDispatcher-worker-14 (timed waiting):tid=39 systid=18748 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
       at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.java:17)

db.v Dispatcher (timed waiting):tid=40 systid=18751 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:463)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:939)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1062)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

db.v Dispatcher (timed waiting):tid=41 systid=18750 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:463)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:939)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1062)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

db.v Dispatcher (timed waiting):tid=42 systid=18752 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:463)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:939)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1062)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

db.v Dispatcher (timed waiting):tid=44 systid=18743 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:463)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:939)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1062)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

db.v Dispatcher (timed waiting):tid=45 systid=18753 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:463)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:939)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1062)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

db.v TaskRunner (timed waiting):tid=46 systid=18769 
       at java.lang.Object.wait(Object.java)
       at okhttp3.internal.concurrent.TaskRunner$RealBackend.coordinatorWait(TaskRunner.java:25)
       at okhttp3.internal.concurrent.TaskRunner.awaitTaskToRun(TaskRunner.java:13)
       at okhttp3.internal.concurrent.TaskQueue.getTaskRunner$okhttp(TaskQueue.java:5)
       at okhttp3.internal.concurrent.TaskRunner$runnable$1.run(TaskRunner.java:5)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

Okio Watchdog (timed waiting):tid=47 systid=18770 
       at java.lang.Object.wait(Object.java)
       at java.lang.Object.wait(Object.java:442)
       at okio.AsyncTimeout$Companion.awaitTimeout$okio(AsyncTimeout.java:6)
       at okio.AsyncTimeout$Watchdog.run(AsyncTimeout.java:5)

db.v Dispatcher (timed waiting):tid=48 systid=18771 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:463)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:939)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1062)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

pool-10-thread-2 (timed waiting):tid=50 systid=18782 
       at jdk.internal.misc.Unsafe.park(Unsafe.java)
       at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
       at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:463)
       at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
       at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:939)
       at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1062)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1123)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

process reaper (native):tid=53 systid=18787 
#00 pc 0xca5e8 libc.so (wait4 + 8)
#01 pc 0x2b618 libopenjdk.so (UNIXProcess_waitForProcessExit + 48)
       at java.lang.UNIXProcess.waitForProcessExit(UNIXProcess.java)
       at java.lang.UNIXProcess.-$$Nest$mwaitForProcessExit(UNIXProcess.java)
       at java.lang.UNIXProcess$3.run(UNIXProcess.java:172)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
       at java.lang.Thread.run(Thread.java:1012)

OpenVPNManagementThread (native):tid=51 systid=18804 
#00 pc 0xc9fe8 libc.so (__recvmsg + 8)
#01 pc 0x86dec libc.so (recvmsg + 52)
#02 pc 0x128f4 libbase.so (android::base::ReceiveFileDescriptorVector(android::base::borrowed_fd, void*, unsigned long, unsigned long, std::__1::vector<android::base::unique_fd_impl<android::base::DefaultCloser>, std::__1::allocator<android::base::unique_fd_impl<android::base::DefaultCloser> > >*) + 376)
#03 pc 0x15dd6c libandroid_runtime.so (android::socket_read_all(_JNIEnv*, _jobject*, int, void*, unsigned long) + 92)
#04 pc 0x15d7e4 libandroid_runtime.so (android::socket_readba(_JNIEnv*, _jobject*, _jbyteArray*, int, int, _jobject*) + 336)
       at android.net.LocalSocketImpl.readba_native(LocalSocketImpl.java)
       at android.net.LocalSocketImpl.access$300(LocalSocketImpl.java:37)
       at android.net.LocalSocketImpl$SocketInputStream.read(LocalSocketImpl.java:110)
       at android.net.LocalSocketImpl$SocketInputStream.read(LocalSocketImpl.java:96)
       at de.blinkt.openvpn.core.OpenVpnManagementThread.run(OpenVpnManagementThread.java:2)
       at java.lang.Thread.run(Thread.java:1012)

OpenVPNProcessThread (native):tid=16 systid=18805 
#00 pc 0xc9148 libc.so (read + 8)
#01 pc 0x29e98 libjavacore.so (Linux_readBytes(_JNIEnv*, _jobject*, _jobject*, _jobject*, int, int) + 172)
       at libcore.io.Linux.readBytes(Linux.java)
       at libcore.io.Linux.read(Linux.java:190)
       at libcore.io.ForwardingOs.read(ForwardingOs.java:613)
       at libcore.io.BlockGuardOs.read(BlockGuardOs.java:325)
       at libcore.io.ForwardingOs.read(ForwardingOs.java:613)
       at libcore.io.IoBridge.read(IoBridge.java:604)
       at java.io.FileInputStream.read(FileInputStream.java:323)
       at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
       at java.io.BufferedInputStream.read(BufferedInputStream.java:347)
       at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:291)
       at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:355)
       at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:181)
       at java.io.InputStreamReader.read(InputStreamReader.java:180)
       at java.io.BufferedReader.fill(BufferedReader.java:172)
       at java.io.BufferedReader.readLine(BufferedReader.java:337)
       at java.io.BufferedReader.readLine(BufferedReader.java:403)
       at de.blinkt.openvpn.core.OpenVPNThread.startOpenVPNThreadArgs(OpenVPNThread.java:4)
       at de.blinkt.openvpn.core.OpenVPNThread.run(OpenVPNThread.java:45)
       at java.lang.Thread.run(Thread.java:1012)

otrace-handler (unknown):tid=7566 systid=7566 
#00 pc 0x75570 libc.so (syscall + 32)
#01 pc 0x79e3c libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + 148)
#02 pc 0xdd3b0 libc.so (pthread_cond_wait + 84)
#03 pc 0x56ca0 libc++.so (std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 24)
#04 pc 0x1cb54 libcutils.so (void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, oplustrace::TraceHandler::TraceHandler(char const*)::$_0> >(void*) + 468)
#05 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#06 pc 0x7a93c libc.so (__start_thread + 68)

DefaultDispatch (unknown):tid=7590 systid=7590 
#00 pc 0xa4b8c libwg-go.so 

DefaultDispatch (unknown):tid=7593 systid=7593 
#00 pc 0xa4b90 libwg-go.so 

DefaultDispatch (unknown):tid=7595 systid=7595 
#00 pc 0xa4b8c libwg-go.so 

DefaultDispatch (unknown):tid=7596 systid=7596 
#00 pc 0xa4b8c libwg-go.so 

DefaultDispatch (unknown):tid=7599 systid=7599 
#00 pc 0xa4b8c libwg-go.so 

DefaultDispatch (unknown):tid=7600 systid=7600 
#00 pc 0xa4b8c libwg-go.so 

RenderThread (unknown):tid=7630 systid=7630 
#00 pc 0x75570 libc.so (syscall + 32)
#01 pc 0x79e3c libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + 148)
#02 pc 0x87514 libc.so (sem_wait + 136)
#03 pc 0x26c3a4 libGLESv2_adreno.so (!!!0000!cad2e78a02755cb9d475cedb69732b!c5f0e23! + 92)
#04 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#05 pc 0x7a93c libc.so (__start_thread + 68)

RenderThread (unknown):tid=7631 systid=7631 
#00 pc 0x75570 libc.so (syscall + 32)
#01 pc 0x79e3c libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + 148)
#02 pc 0x87514 libc.so (sem_wait + 136)
#03 pc 0x26c3a4 libGLESv2_adreno.so (!!!0000!cad2e78a02755cb9d475cedb69732b!c5f0e23! + 92)
#04 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#05 pc 0x7a93c libc.so (__start_thread + 68)

Binder:7550_3 (unknown):tid=7679 systid=7679 
#00 pc 0x75570 libc.so (syscall + 32)
#01 pc 0x79e3c libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + 148)
#02 pc 0xdd3b0 libc.so (pthread_cond_wait + 84)
#03 pc 0x56ca0 libc++.so (std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 24)
#04 pc 0x9f3b4 libgui.so (android::AsyncWorker::run() + 444)
#05 pc 0x9f44c libgui.so (void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (android::AsyncWorker::*)(), android::AsyncWorker*> >(void*) + 64)
#06 pc 0xde184 libc.so (__pthread_start(void*) + 264)
#07 pc 0x7a93c libc.so (__start_thread + 68)
schwabe commented 1 year ago

the play console and Firebase is reporting the ANR.

So I assume that is not my app. You could link your app source code also in this issue?