[Android] Crash on some powerful devices FVulkanViewport::DoAcquireImageIndex

Hi, I have lags and crushes with Vulkan on some specific devices, my game is already released in GP, and I receive this crushes info from GP reports. I tested my game on over 10 different devices, and I can’t reproduce this crash. It crashes even on powerful devices, although I tested my game on weak devices, and everything was fine. Please help me, someone

1 Like

Which phones do you experience this crash on?

If it is reproduced on a phone, it always reproducible on that phone, right?

I’m curious if anyone ever solved this crashing problem. I have an app in open testing right now, and I’ve seen this exact same crash and stack trace on two separate Samsung Galaxy S21 Ultra 5G phones running Android 12.

My app uses Unreal Engine 4.27.2, if that helps at all.

Sounds like a Samsung graphics driver bug. Does Samsung have any kind of developer support/evangelism you could engage to push them to fix it?
(It will of course still take months before fixes start hitting devices …)

I am still in development for my app, but experienced the same issue today on my Galaxy Fold 2.

backtrace:
split_config.arm64_v8a.apk!libUE4.so (FVulkanViewport::DoAcquireImageIndex(FVulkanViewport*)+16)
split_config.arm64_v8a.apk!libUE4.so (FVulkanViewport::DoCheckedSwapChainJob(TFunction<int (FVulkanViewport*)>)+96)
split_config.arm64_v8a.apk!libUE4.so (FVulkanBackBuffer::AcquireBackBufferImage(FVulkanCommandListContext&)+104)
split_config.arm64_v8a.apk!libUE4.so (FVulkanCommandListContext::RHIEndTransitions(TArrayView<FRHITransition const*, int>)+1044)
split_config.arm64_v8a.apk!libUE4.so (FRHICommandEndTransitions::Execute(FRHICommandListBase&)+52)
split_config.arm64_v8a.apk!libUE4.so (FRHICommandListExecutor::ExecuteInner_DoExecute(FRHICommandListBase&)+168)
split_config.arm64_v8a.apk!libUE4.so (FExecuteRHIThreadTask::DoTask(ENamedThreads::Type, TRefCountPtr<FGraphEvent> const&)+164)
split_config.arm64_v8a.apk!libUE4.so (TGraphTask<FExecuteRHIThreadTask>::ExecuteTask(TArray<FBaseGraphTask*, TSizedDefaultAllocator<32> >&, ENamedThreads::Type)+52)
split_config.arm64_v8a.apk!libUE4.so (FNamedTaskThread::ProcessTasksNamedThread(int, bool)+244)
split_config.arm64_v8a.apk!libUE4.so (FNamedTaskThread::ProcessTasksUntilQuit(int)+108)
split_config.arm64_v8a.apk!libUE4.so (FRHIThread::Run()+72)
split_config.arm64_v8a.apk!libUE4.so (FRunnableThreadPThread::Run()+96)
split_config.arm64_v8a.apk!libUE4.so (FRunnableThreadPThread::_ThreadProc(void*)+68)
  #00  pc 00000000000b6e44  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+264)
  #00  pc 0000000000053454  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+68)

Regarding the lag I can confirm as well, that on my older Samsung s8 the game runs smooth. On the Fold 2 I see every 10-15 Seconds a drop to 10 fps for another 5-10 seconds.
Still analyzing this. If someone else faced these issue and found a solution I am happy to hear about it.

I still don’t have any ideas on how to fix this crash, but I’ve now seen it on numerous different devices…mostly newer Samsung phones, but also an LG phone.

I know it’s been suggested that this could be a graphics driver bug, but could it also be possible that there is something about my specific game that is causing this crash? Something wrong with a texture file, for example.

Does anyone have any ideas on what kind of things I could look for, or how I could debug my scenes to look for possible problems? Unfortunately, I haven’t been able to replicate this problem on any test devices…all the crashes are occurring on user devices.

If anyone has any ideas, I’d really appreciate it…I’m not sure how to proceed here.

Now this issue pops up on several different phones for different users. This issue happens way to often to be ignored. Would be great if anyone could help us on this topic.

It happens when the app enters foreground after entering background. So every time the user leaves the app and comes back this issue can appear. It currently happens to 7% of my users.

Update from my side.
Upgrading to Unreal engine 5 does not solve this issue.
I still get this error on my Samsung devices and my users getting it on other devices as well.

Hi, Does anyone ever solved this crashing?

My crash has similar callstack and happen mostly on Samsung phone.

Seem issue is fixed in UE5.3
https://github.com/EpicGames/UnrealEngine/commit/0f779eae4d262ee63b2cb9ddfbaef49fc70696e4