Skip to content

[Impeller] Crash in libGLES_mali.so during GC: HandleUsingDestroyedMutex in impeller::TextureVK destructor #185324

Description

@alihassan143

Steps to reproduce

Cannot able to reproduce in local its showing in google play console

Expected results

app should not crash

Actual results

app crashing

Code sample

Code sample
[Paste your code here]

Screenshots or Video

Screenshots / Video demonstration Image Image

Logs

Logs
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 29249 >>> com.app.writing <<<

backtrace:
  #00  pc 0x000000000045d8e8  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (GrResourceCache::purgeUnlockedResources(std::__fl::chrono::time_point<std::__fl::chrono::steady_clock, std::__fl::chrono::duration<long long, std::__fl::ratio<1ll, 1000000000ll>>> const*, GrPurgeResourceOptions)+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #01  pc 0x000000000044e5a1  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (GrDirectContext::performDeferredCleanup(std::__fl::chrono::duration<long long, std::__fl::ratio<1ll, 1000ll>>, GrPurgeResourceOptions)+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #02  pc 0x0000000000626495  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (flutter::Rasterizer::DrawToSurfacesUnsafe(flutter::FrameTimingsRecorder&, std::__fl::vector<std::__fl::unique_ptr<flutter::LayerTreeTask, std::__fl::default_delete<flutter::LayerTreeTask>>, std::__fl::allocator<std::__fl::unique_ptr<flutter::LayerTreeTask, std::__fl::default_delete<flutter::LayerTreeTask>>>>)+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #03  pc 0x0000000000625d87  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (flutter::Rasterizer::DrawToSurfaces(flutter::FrameTimingsRecorder&, std::__fl::vector<std::__fl::unique_ptr<flutter::LayerTreeTask, std::__fl::default_delete<flutter::LayerTreeTask>>, std::__fl::allocator<std::__fl::unique_ptr<flutter::LayerTreeTask, std::__fl::default_delete<flutter::LayerTreeTask>>>>)+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #04  pc 0x0000000000626f41  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (std::__fl::__function::__func<flutter::Rasterizer::Draw(std::__fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>> const&)::$_0, std::__fl::allocator<flutter::Rasterizer::Draw(std::__fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>> const&)::$_0>, void (std::__fl::unique_ptr<flutter::FrameItem, std::__fl::default_delete<flutter::FrameItem>>)>::operator()(std::__fl::unique_ptr<flutter::FrameItem, std::__fl::default_delete<flutter::FrameItem>>&&)+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #05  pc 0x0000000000626a9d  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (flutter::Rasterizer::Draw(std::__fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>> const&)+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #06  pc 0x000000000063305b  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (std::__fl::__function::__func<fml::internal::CopyableLambda<flutter::Shell::OnAnimatorDraw(std::__fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>>)::$_0>, std::__fl::allocator<fml::internal::CopyableLambda<flutter::Shell::OnAnimatorDraw(std::__fl::shared_ptr<flutter::Pipeline<flutter::FrameItem>>)::$_0>>, void ()>::operator()()+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #07  pc 0x000000000031554d  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (fml::MessageLoopImpl::RunExpiredTasksNow()+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #08  pc 0x0000000000318b35  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (fml::MessageLoopAndroid::MessageLoopAndroid()::$_0::__invoke(int, int, void*)+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #09  pc 0x000000000000fc3d  /system/lib/libutils.so (android::Looper::pollInner(int)+636)
  #10  pc 0x000000000000f943  /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+26)
  #11  pc 0x000000000000c759  /system/lib/libandroid.so (ALooper_pollOnce+56)
  #12  pc 0x0000000000318c0f  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (fml::MessageLoopAndroid::Run()+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #13  pc 0x0000000000316f85  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (std::__fl::__function::__func<fml::Thread::Thread(std::__fl::function<void (fml::Thread::ThreadConfig const&)> const&, fml::Thread::ThreadConfig const&)::$_0, std::__fl::allocator<fml::Thread::Thread(std::__fl::function<void (fml::Thread::ThreadConfig const&)> const&, fml::Thread::ThreadConfig const&)::$_0>, void ()>::operator()()+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #14  pc 0x0000000000316df7  /data/app/com.app.writing-0JPS6J1rVd6i-wP-LHk1kQ==/split_config.armeabi_v7a.apk!libflutter.so (fml::ThreadHandle::ThreadHandle(std::__fl::function<void ()>&&)::$_0::__invoke(void*)+15958016) (BuildId: 3aabdcf6c4ed3cb4b1b62954d83a917021a7a02a)
  #15  pc 0x0000000000073ab1  /system/lib/libc.so (__pthread_start(void*)+22)
  #16  pc 0x000000000001e1cd  /system/lib/libc.so (__start_thread+24)

other logs


*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 26194 >>> com.app.writing <<<

backtrace:
  #00  pc 0x000000000009dd44  /apex/com.android.runtime/lib64/bionic/libc.so (abort+180)
  #01  pc 0x000000000009fcbc  /apex/com.android.runtime/lib64/bionic/libc.so (__fortify_fatal(char const*, ...)+124)
  #02  pc 0x000000000010cf1c  /apex/com.android.runtime/lib64/bionic/libc.so (HandleUsingDestroyedMutex(pthread_mutex_t*, char const*)+60)
  #03  pc 0x000000000010cda0  /apex/com.android.runtime/lib64/bionic/libc.so (pthread_mutex_lock+256)
  #04  pc 0x000000000077883c  /vendor/lib64/egl/mt6835/libGLES_mali.so
  #05  pc 0x0000000000793860  /vendor/lib64/egl/mt6835/libGLES_mali.so
  #06  pc 0x0000000000793aac  /vendor/lib64/egl/mt6835/libGLES_mali.so
  #07  pc 0x00000000004a58c0  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (std::__fl::__shared_weak_count::__release_shared[abi:nn210000]()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #08  pc 0x0000000000757ff8  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (impeller::Attachment::~Attachment()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #09  pc 0x000000000082758c  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (impeller::TextureSourceVK::~TextureSourceVK()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #10  pc 0x00000000004a58c0  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (std::__fl::__shared_weak_count::__release_shared[abi:nn210000]()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #11  pc 0x000000000082772c  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (impeller::TextureVK::~TextureVK()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #12  pc 0x00000000004a58c0  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (std::__fl::__shared_weak_count::__release_shared[abi:nn210000]()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #13  pc 0x00000000007cc268  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (impeller::DlImageImpeller::~DlImageImpeller()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #14  pc 0x0000000000863f5c  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (flutter::CanvasImage::~CanvasImage()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #15  pc 0x0000000000852a10  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (fml::RefCountedThreadSafe<flutter::CanvasImage>::Release() const+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #16  pc 0x00000000009834c4  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::MarkingWeakVisitor::VisitHandle(unsigned long)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #17  pc 0x0000000000986078  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::ParallelMarkTask::RunEnteredIsolateGroup()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #18  pc 0x000000000098de74  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::SafepointHandler::RunTasks(dart::IntrusiveDList<dart::SafepointTask, 1>*)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #19  pc 0x0000000000989d3c  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::PageSpace::CollectGarbage(dart::Thread*, bool, bool)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #20  pc 0x000000000097d5e0  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::Heap::CollectOldSpaceGarbage(dart::Thread*, dart::GCType, dart::GCReason)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #21  pc 0x0000000000972858  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::Thread::HandleInterrupts(unsigned long)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #22  pc 0x00000000008f3d1c  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::IsolateMessageHandler::HandleMessage(std::__fl::unique_ptr<dart::Message, std::__fl::default_delete<dart::Message>>)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #23  pc 0x00000000008f91cc  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::MessageHandler::HandleMessages(dart::MonitorLocker*, bool, bool)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #24  pc 0x00000000008f8fbc  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::MessageHandlerTask::Run()+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #25  pc 0x0000000000974180  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::ThreadPool::Worker::Main(unsigned long)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #26  pc 0x0000000000953658  /data/app/~~4T-SfYb3fzTipUbR257v0g==/com.app.writing-2fU-UmZSlXKBIrrOBgiCBA==/split_config.arm64_v8a.apk!libflutter.so (dart::ThreadStart(void*)+14270464) (BuildId: d73e2148690c74c5118334d5bfdac1dd153b1cbb)
  #27  pc 0x000000000010baa0  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+208)
  #28  pc 0x000000000009f6b0  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)

Flutter Doctor output

Doctor output
flutter doctor 
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.41.7, on macOS 26.4.1 25E253 darwin-arm64, locale en-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 36.1.0-rc1)
[✓] Xcode - develop for iOS and macOS (Xcode 26.4.1)
[✓] Chrome - develop for the web
[✓] Connected device (4 available)
    ! Error: Browsing on the local area network for Mac’s iPhone. Ensure the device is unlocked and attached with a cable or associated with the same local
      area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)
    ! Error: Browsing on the local area network for iPhone. Ensure the device is unlocked and attached with a cable or associated with the same local area
      network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)
[✓] Network resources

• No issues found!

Metadata

Metadata

Assignees

No one assigned

    Labels

    c: crashStack traces logged to the consolee: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.platform-androidAndroid applications specificallywaiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions