Crash on Specific Devices When Using URP in Unity 6000.0.27f1 ([libunity.so] GfxFramebufferGLES::MakeCurrentFramebuffer)

I am encountering crashes on specific devices when using the 3D Mobile Template with URP

[libunity.so] GfxFramebufferGLES::MakeCurrentFramebuffer(GfxFramebufferGLES::Builtin)


Below are the details:

  • Unity Version: 6000.0.27f1
  • Template: 3D Mobile Template with URP
  • URP Post-processing

Graphics Settings:

Devices Affected:

The issue occurs on the following devices:

  1. lge dh0lm (K22)
  2. samsung gta2slte (Galaxy Tab A, 2017)
  3. samsung j4primelte (Galaxy J4+)

Stack Trace:

lge dh0lm (K22):**

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 8560 >>> com.TrinityGames.AntSim <<<

backtrace:
  #00  pc 0x00000000000fec84  /vendor/lib/egl/libGLESv2_adreno.so
  #01  pc 0x000000000006e5f9  /vendor/lib/egl/libGLESv2_adreno.so
  #02  pc 0x0000000000088b3b  /vendor/lib/egl/libGLESv2_adreno.so
  #03  pc 0x000000000009b3af  /vendor/lib/egl/libGLESv2_adreno.so
  #04  pc 0x0000000000912c34  /data/app/com.TrinityGames.AntSim-Mx0qTDM1AQtkrYsmM-qkyQ==/lib/arm/libunity.so (GfxFramebufferGLES::MakeCurrentFramebuffer(GfxFramebufferGLES::Builtin)) (BuildId: 26a300b578bc69d5)
  #05  pc 0x00000000009130f0  /data/app/com.TrinityGames.AntSim-Mx0qTDM1AQtkrYsmM-qkyQ==/lib/arm/libunity.so (GfxFramebufferGLES::PrepareImpl(GfxFramebufferGLES::ClearToAvoidRestoreBehavior, unsigned int, bool)) (BuildId: 26a300b578bc69d5)
  #06  pc 0x0000000000914e30  /data/app/com.TrinityGames.AntSim-Mx0qTDM1AQtkrYsmM-qkyQ==/lib/arm/libunity.so (GfxFramebufferGLES::Clear(GfxClearFlags, ColorRGBAf const&, float, int, bool)) (BuildId: 26a300b578bc69d5)
  #07  pc 0x00000000008f4648  /data/app/com.TrinityGames.AntSim-Mx0qTDM1AQtkrYsmM-qkyQ==/lib/arm/libunity.so (GfxDeviceGLES::ClearMRT(GfxClearFlags, ColorRGBAf const*, int, unsigned int, float, unsigned int)) (BuildId: 26a300b578bc69d5)
  #08  pc 0x0000000000a92ff1  /data/app/com.TrinityGames.AntSim-Mx0qTDM1AQtkrYsmM-qkyQ==/lib/arm/libunity.so (GfxDeviceWorker::RunCommand(ThreadedStreamBuffer&)) (BuildId: 26a300b578bc69d5)
  #09  pc 0x0000000000a8ebbd  /data/app/com.TrinityGames.AntSim-Mx0qTDM1AQtkrYsmM-qkyQ==/lib/arm/libunity.so (GfxDeviceWorker::RunExt(ThreadedStreamBuffer&)) (BuildId: 26a300b578bc69d5)
  #10  pc 0x0000000000a8e913  /data/app/com.TrinityGames.AntSim-Mx0qTDM1AQtkrYsmM-qkyQ==/lib/arm/libunity.so (GfxDeviceWorker::RunGfxDeviceWorker(void*)) (BuildId: 26a300b578bc69d5)
  #11  pc 0x0000000000389117  /data/app/com.TrinityGames.AntSim-Mx0qTDM1AQtkrYsmM-qkyQ==/lib/arm/libunity.so (Thread::RunThreadWrapper(void*)) (BuildId: 26a300b578bc69d5)
  #12  pc 0x00000000000aa8bb  /apex/com.android.runtime/lib/bionic/libc.so (__pthread_start(void*)+20)
  #13  pc 0x0000000000061993  /apex/com.android.runtime/lib/bionic/libc.so (__start_thread+30)

samsung j4primelte (Galaxy J4+):

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 16395 >>> com.TrinityGames.AntSim <<<

backtrace:
  #00  pc 0x0000000000152bb0  /vendor/lib/egl/libGLESv2_adreno.so (EsxRenderBucket::AddUnbucketedEntries(EsxCmdBufType, unsigned int)+132)
  #01  pc 0x0000000000152127  /vendor/lib/egl/libGLESv2_adreno.so (EsxRenderBucket::BucketRenderingCmds(EsxRenderBucketParams*)+740)
  #02  pc 0x000000000018607d  /vendor/lib/egl/libGLESv2_adreno.so (EsxContext::BucketRenderingCmds(int)+712)
  #03  pc 0x00000000000e5f97  /vendor/lib/egl/libGLESv2_adreno.so (EsxContext::BindDrawFramebuffer(EsxFramebufferObject*)+178)
  #04  pc 0x00000000000b6031  /vendor/lib/egl/libGLESv2_adreno.so (EsxContext::GlBindFramebuffer(unsigned int, unsigned int)+272)
  #05  pc 0x0000000000912c34  /data/app/com.TrinityGames.AntSim-KoOEAOQLQWmikmAo6crQJA==/lib/arm/libunity.so (GfxFramebufferGLES::MakeCurrentFramebuffer(GfxFramebufferGLES::Builtin)) (BuildId: 26a300b578bc69d5)
  #06  pc 0x00000000009130f0  /data/app/com.TrinityGames.AntSim-KoOEAOQLQWmikmAo6crQJA==/lib/arm/libunity.so (GfxFramebufferGLES::PrepareImpl(GfxFramebufferGLES::ClearToAvoidRestoreBehavior, unsigned int, bool)) (BuildId: 26a300b578bc69d5)
  #07  pc 0x0000000000914e30  /data/app/com.TrinityGames.AntSim-KoOEAOQLQWmikmAo6crQJA==/lib/arm/libunity.so (GfxFramebufferGLES::Clear(GfxClearFlags, ColorRGBAf const&, float, int, bool)) (BuildId: 26a300b578bc69d5)
  #08  pc 0x00000000008f4648  /data/app/com.TrinityGames.AntSim-KoOEAOQLQWmikmAo6crQJA==/lib/arm/libunity.so (GfxDeviceGLES::ClearMRT(GfxClearFlags, ColorRGBAf const*, int, unsigned int, float, unsigned int)) (BuildId: 26a300b578bc69d5)
  #09  pc 0x0000000000a92ff1  /data/app/com.TrinityGames.AntSim-KoOEAOQLQWmikmAo6crQJA==/lib/arm/libunity.so (GfxDeviceWorker::RunCommand(ThreadedStreamBuffer&)) (BuildId: 26a300b578bc69d5)
  #10  pc 0x0000000000a8ebbd  /data/app/com.TrinityGames.AntSim-KoOEAOQLQWmikmAo6crQJA==/lib/arm/libunity.so (GfxDeviceWorker::RunExt(ThreadedStreamBuffer&)) (BuildId: 26a300b578bc69d5)
  #11  pc 0x0000000000a8e913  /data/app/com.TrinityGames.AntSim-KoOEAOQLQWmikmAo6crQJA==/lib/arm/libunity.so (GfxDeviceWorker::RunGfxDeviceWorker(void*)) (BuildId: 26a300b578bc69d5)
  #12  pc 0x0000000000389117  /data/app/com.TrinityGames.AntSim-KoOEAOQLQWmikmAo6crQJA==/lib/arm/libunity.so (Thread::RunThreadWrapper(void*)) (BuildId: 26a300b578bc69d5)
  #13  pc 0x0000000000073ab1  /system/lib/libc.so (__pthread_start(void*)+22)
  #14  pc 0x000000000001e1cd  /system/lib/libc.so (__start_thread+24)

Howdy,

Devices with this issue seem to have common trait of only having 2GB of RAM. Did you notice this issue with LG K22 3GB version?

It would be worth checking out logcat if low memory killer service was invoked. Could you provide us with minimal repro project or APK build with the issue reproducing so we could do internal testing?

1 Like

Hallo
Thank you for the response. I’ve checked, and the issue is also occurring on the LG K22 3GB version. So, it doesn’t seem to be limited to devices with 2GB of RAM.

Unfortunately, I am unable to provide a minimal repro project or APK build for testing because the issue doesn’t occur on my development devices. It is only being reported by players on their devices, which makes reproducing the crash locally quite challenging.

If there are any specific diagnostic tools or configurations you’d recommend adding to the build to capture more detailed logs, I’d be happy to integrate those and collect additional data from affected players.

You can provide production APK and we can use our internal devices to check it out.

Otherwise I’d recommend reporting bug over our bug reporting page.

Method crashing in backtrace is mainly assigning new framebuffer resources so this is either issue on low memory or issue with edge case over new framebuffer ownership in Unity’s code

1 Like

Thank you for the follow-up!

Here is the link to the game on the Google Play Store: AntSim.

I will also provide the local production APK as soon as possible.