protonscr

Atomic Heart: intermittent RenderThread deadlock during startup movies with D3D12 (media D3D11/D3D12 interop)

vkd3dopen
HansKristian-Work/vkd3d-proton#3283 · opened 2026-09-09 by Bakedpotato-99 · updated 2026-09-09 · 0 comments · github
BBakedpotato-99 2026-09-09 github

Atomic Heart freezes on first frames of intro (with sound still going) during the pre-menu logo movies. The
After 120 seconds UE4 crash error appears.
watchdog aborts the process:

LowLevelFatalError [File:Unknown] [Line: 1209]
GameThread timed out waiting for RenderThread after 120.00 secs

On a given boot it either freezes or works every launch. When it launches it's stable for hours.
Rebooting most of the time fixes the freeze. Restarting Steam does not. After using PC for a while, it may stop launching again.
From my understanding it is a race between DXVK and D3D12.

Launching with %command% -d3d11 as steam command fixes the issue.

Details

Thread dump taken while frozen (/proc/<pid>/task/*/wchan): every thread is in
a futex wait, nothing spinning. Both driver thread sets are live at the same
time — vkd3d_queue / vkd3d_fence (x3 each) and vkd3d-swapchain, alongside
dxvk-submit / dxvk-queue / dxvk-cs. The game decodes the intro movies via
Media Foundation into D3D11 textures shared into the D3D12 renderer, so this
looks like the interop handoff.

vkd3d logs this on both device creations:

d3d12_device_create_vkd3d_queues: Could not allocate an out of band queue
for queue family 2. All out of band work will happen on the in band queue.
(same for queue family 3)

Timeline from the attached log — the RenderThread's last check-in works out to
~18683.4 (18803.462 minus 120s), which lands right on the last vkd3d activity:

18683.786  vkd3d_pipeline_library_disk_thread_main: Flushing disk cache
           ... It seems like application has stopped creating new PSOs
18684.924  mscoree:DllMain (detach)
18740.891  mscoree:DllMain (detach)
18803.462  LowLevelFatalError ... after 120.00 secs

Nothing else is logged across the dead window.

This did not help: VKD3D_CONFIG=single_queue, PROTON_DISABLE_NVAPI=1, windowed
mode, single monitor, disabling ForceCompositionPipeline. No Xid errors in
dmesg — the GPU is not hanging.

Software information

Atomic Heart (Steam AppID 668580), UE4 4.27.2. Default settings, 1920x1080.
Fails during the startup logo movies, before the main menu.

System information

  • GPU: NVIDIA GeForce RTX 5070 Ti
  • Driver: 595.84 (open kernel module)
  • Wine version: Proton Experimental (experimental-11.0-20260903c-x86_64)
  • VKD3D-Proton version: as bundled with the above

Linux Mint 22.3, kernel 7.0.0-31-generic, X11 / Cinnamon.

Log files

steam-668580.log attached — full run including the watchdog crash.
CrashContext.runtime-xml.txt (changed to txt to upload) attached — confirms RHI.RHIName = D3D12.

CrashContext.runtime-xml.txt
steam-668580.log

Proton versions

Launch options

Launch lines