Summary
On Android devices with a Mali-G76 GPU (MediaTek Helio G90T), any Unreal Engine 5.8.0 application, including cropout sample project, crashes immediately after the splash screen on the first rendered frame.
The crash occurs inside the Mali GPU driver (libGLES_mali.so) while compiling shaders (cmpbe_v2_compile_multiple_shaders).
The issue happens with both Vulkan and OpenGL ES, but disappears when r.MobileHDR=False.
- Engine version: 5.8.0
- Platform: Android (packaged, both Development and Shipping configs affected)
- Device: Redmi Note 8 Pro (“begonia”)
- Build fingerprint:
Redmi/begonia/begonia:11/RP1A.200720.011/V12.5.8.0.RGGMIXM:user/release-keys - Android 11, MediaTek Helio G90T, GPU: Mali-G76 MC4
- GLES driver
libGLES_mali.soBuildId:7d7e129b31d3cdb1c1d333fe70d47358
- Build fingerprint:
- NDK: r27c (
27.2.12479018), Clang 18.0.3 — matches Engine\Config\Android\Android_SDK.json exactly - SDK: platform
android-34, build-tools35.0.1, cmake3.22.1, JDK 17 — all match Epic’s pinned versions for 5.8, verified directly against installed SDK - RHI tested: both default (GLES fallback,
SRC_VKQuality: GLESBecauseNoDeviceMatch) and forced Vulkan-only (bBuildForES31=False) — crash reproduces identically on both, same driver function, same addresses
What Type of Bug are you experiencing?
Platform Mobile
Steps to Reproduce
- Using cropout sample project in UE 5.8.
- Package for Android (Development or Shipping) or quick launch, default project settings (Mobile HDR enabled, which is default).
- Install and launch on a Redmi Note 8 Pro (Mali-G76 MC4) or similar Mali-driver device.
- App launches, shows splash screen, — crashes within 1-10 seconds of the first rendered frame.
Expected Result
App renders normally past the first frame, as it did under UE 5.4 on the same device/content.
Observed Result
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
Cause: null pointer dereference
lr 00000077bbe952a8 sp <varies> pc 00000077bbe97240
backtrace:
#00-#11 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
#08 pc 0000000000b3d1bc /vendor/lib64/egl/libGLES_mali.so (cmpbe_v2_compile_multiple_shaders+4996)
#12-#30 /data/data/<package>/files/libUnreal.so (engine call site into the driver; symbols stripped in Shipping)
#31-#32 libc.so (__pthread_start / __start_thread)
Crash occurs on a background/worker thread named “Foreground Work” or “Background Work” depending on run — i.e. UE’s async/background shader-compile task graph thread, not the render thread directly.
Always occurs immediately after this engine log line:
LogRenderer: Display: Pixel format for LUT is PF_A2B10G10R10
(the Mobile HDR tonemapper/color-grading LUT texture format declaration), ~1-10 seconds before the crash.
Affects Versions
5.8
Platform(s)
Android
For crash reports, include your callstack
--------- beginning of crash
07-21 12:42:57.248 30482 31155 F libc : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 31155 (Background Work), pid 30482 (m.Demo.DemoGame)
07-21 12:42:57.254 24060 30833 W ChimeraUtils: Module com.google.android.gms.gcm missing resource null(0)
07-21 12:42:57.255 24060 24060 D BoundBrokerSvc: onRebind: Intent { act=com.google.android.gms.common.telemetry.service.START dat=chimera-action: cmp=com.google.android.gms/.chimera.PersistentApiService }
07-21 12:42:57.267 24060 31981 I AlarmManager: setExactAndAllowWhileIdle [name: GCM_HB_ALARM type: 2 triggerAtMillis: 2396053572]
07-21 12:42:57.268 955 1031 D AAL : DRECurveCalculation: BLKNUM = 16 8
07-21 12:42:57.285 955 1031 D AAL : DRECurveCalculation: BLKNUM = 16 8
07-21 12:42:57.286 24060 30833 I AlarmManager: setExactAndAllowWhileIdle [name: FcmRetry type: 2 triggerAtMillis: 2395813590]
07-21 12:42:57.301 955 1031 D AAL : DRECurveCalculation: BLKNUM = 16 8
07-21 12:42:57.302 955 1031 D AAL : 07-21 12:42:57.019 BL= 51,ESS= 330, 07-21 12:42:57.119 BL= 51,ESS= 332, 07-21 12:42:57.203 BL= 51,ESS= 334, 07-21 12:42:57.270 BL= 50,ESS= 334, 07-21 12:42:57.301 BL= 50,ESS= 336,
07-21 12:42:57.318 955 1031 D AAL : DRECurveCalculation: BLKNUM = 16 8
07-21 12:42:57.335 955 1031 D AAL : DRECurveCalculation: BLKNUM = 16 8
07-21 12:42:57.336 528 528 D Zygote : Forked child process 31987
07-21 12:42:57.338 1321 1351 I ActivityManager: Start proc 31987:com.Slack/u0a414 for broadcast {com.Slack/com.google.firebase.iid.FirebaseInstanceIdReceiver} caller=com.google.android.gms
07-21 12:42:57.351 955 1031 D AAL : DRECurveCalculation: BLKNUM = 16 8
07-21 12:42:57.352 31987 31987 E com.Slack: Not starting debugger since process cannot load the jdwp agent.
07-21 12:42:57.365 1321 1468 I MiuiNetworkPolicy: updateUidState uid = 10414, uidState = 11
07-21 12:42:57.367 637 1107 D MtkAudioResamplerDyn: MtkAudioResamplerDyn InBuffer::reset!!
07-21 12:42:57.368 955 1031 D AAL : DRECurveCalculation: BLKNUM = 16 8
07-21 12:42:57.373 31986 31986 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstone
07-21 12:42:57.377 522 522 I tombstoned: received crash request for pid 31155
07-21 12:42:57.379 31986 31986 I crash_dump64: performing dump of process 30482 (target tid = 31155)
07-21 12:42:57.384 955 1031 D AAL : DRECurveCalculation: BLKNUM = 16 8
07-21 12:42:57.397 31986 31986 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-21 12:42:57.397 31986 31986 F DEBUG : Build fingerprint: ‘Redmi/begonia/begonia:11/RP1A.200720.011/V12.5.8.0.RGGMIXM:user/release-keys’
07-21 12:42:57.397 31986 31986 F DEBUG : Revision: ‘0’
07-21 12:42:57.397 31986 31986 F DEBUG : ABI: ‘arm64’
07-21 12:42:57.400 31986 31986 F DEBUG : Timestamp: 2026-07-21 12:42:57-0400
07-21 12:42:57.400 31986 31986 F DEBUG : pid: 30482, tid: 31155, name: Background Work >>> com.Demo.DemoGame <<<
07-21 12:42:57.400 31986 31986 F DEBUG : uid: 10894
07-21 12:42:57.400 31986 31986 F DEBUG : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
07-21 12:42:57.400 31986 31986 F DEBUG : Cause: null pointer dereference
07-21 12:42:57.400 31986 31986 F DEBUG : x0 b4000069e31334b0 x1 b4000077baddda30 x2 0000000000000008 x3 b4000069e2f023f8
07-21 12:42:57.400 31986 31986 F DEBUG : x4 0000006b11bfdeb0 x5 0000000000000002 x6 b4000077c9a3fe10 x7 b4000077c9a3fe10
07-21 12:42:57.400 31986 31986 F DEBUG : x8 0000000000000000 x9 0000000000000018 x10 00000077bbe97224 x11 0000000000000000
07-21 12:42:57.400 31986 31986 F DEBUG : x12 000000000000000a x13 fffffffffffffff8 x14 0000000000000002 x15 fffffffffffffff8
07-21 12:42:57.400 31986 31986 F DEBUG : x16 00000077bd589170 x17 000000785d35cfc0 x18 000000000000001c x19 b4000077baddda30
07-21 12:42:57.400 31986 31986 F DEBUG : x20 b4000077c9b6ce00 x21 0000000000000652 x22 b4000077be9c6648 x23 b4000077c9971618
07-21 12:42:57.400 31986 31986 F DEBUG : x24 0000006b11c03000 x25 0000006b11bfde30 x26 0000000000000050 x27 0000000000000000
07-21 12:42:57.400 31986 31986 F DEBUG : x28 0000000000000000 x29 0000006b11c03000
07-21 12:42:57.400 31986 31986 F DEBUG : lr 00000077bbe952a8 sp 0000006b11bfddf0 pc 00000077bbe97240 pst 0000000080001000
07-21 12:42:57.448 31986 31986 F DEBUG : backtrace:
07-21 12:42:57.448 31986 31986 F DEBUG : NOTE: Function names and BuildId information is missing for some frames due
07-21 12:42:57.448 31986 31986 F DEBUG : NOTE: to unreadable libraries. For unwinds of apps, only shared libraries
07-21 12:42:57.448 31986 31986 F DEBUG : NOTE: found under the lib/ directory are readable.
07-21 12:42:57.448 31986 31986 F DEBUG : #00 pc 0000000000e43240 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #01 pc 0000000000e412a4 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #02 pc 0000000000df1604 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #03 pc 0000000000defb98 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #04 pc 0000000000dedc0c /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #05 pc 0000000000b1768c /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #06 pc 0000000000b1ab08 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #07 pc 0000000000b3d474 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #08 pc 0000000000b3d1bc /vendor/lib64/egl/libGLES_mali.so (cmpbe_v2_compile_multiple_shaders+4996) (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #09 pc 0000000000a747c0 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #10 pc 00000000008523c8 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #11 pc 0000000000850fb8 /vendor/lib64/egl/libGLES_mali.so (BuildId: 7d7e129b31d3cdb1c1d333fe70d47358)
07-21 12:42:57.448 31986 31986 F DEBUG : #12 pc 000000000f979f68 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.448 31986 31986 F DEBUG : #13 pc 000000000f9154c0 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.448 31986 31986 F DEBUG : #14 pc 000000000f8feef0 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #15 pc 000000000f8fed2c /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #16 pc 000000000f967a74 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #17 pc 000000000f966fe8 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #18 pc 000000000f96aaf4 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #19 pc 000000000f96bdf8 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #20 pc 00000000066ddd68 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #21 pc 00000000066dd7ec /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #22 pc 00000000066dd3b4 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #23 pc 000000000558c338 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #24 pc 000000000558bac8 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #25 pc 000000000556f35c /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #26 pc 0000000005570968 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #27 pc 0000000005570bd0 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #28 pc 000000000580eae0 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #29 pc 00000000057e5ab4 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #30 pc 000000000558e894 /data/data/com.Demo.DemoGame/files/libUnreal.so
07-21 12:42:57.449 31986 31986 F DEBUG : #31 pc 00000000000ec7b8 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64) (BuildId: 2499da84be20422da3f6f4b7cdc59990)
07-21 12:42:57.449 31986 31986 F DEBUG : #32 pc 000000000008c050 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 2499da84be20422da3f6f4b7cdc59990)
Additional Notes
Let me know if you need more information.