Found a possibly related issue: #2016 (Intel Arc/i915), where ELDEN RING hangs/freezes due to Resizable BAR causing the memory heap to be split in a way that confuses vkd3d-proton's allocator (VkPhysicalDeviceMemoryProperties shows extra/oddly-sized heaps, allocations from the exhausted small heap don't fall back correctly).
On my system BAR is fully sized to VRAM (amdgpu 0000:03:00.0: [drm] Detected VRAM RAM=16304M, BAR=16384M), so ReBAR looks correctly configured on the surface. I tried capturing VKD3D_CONFIG=log_memory_budget output to compare heap layout with that issue, but the run that had this flag set failed earlier than usual (before vkd3d-proton even initialized), so I don't have a heap dump to share yet. Happy to try again and post it if useful, or to try disabling ReBAR as a test if that's a plausible lead here too.
Found what looks like the actual root cause. With VKD3D_CONFIG=log_memory_budget, this run got much further than before — it actually created the swapchain (dxgi_vk_swap_chain_init: Creating swapchain (1920 x 1080), BufferCount = 3) — but immediately after, the log fills with 20832 repeats (over ~17s) of:
warn:vkd3d-proton:d3d12_resource_validate_desc: Invalid alignment 4096 for buffer resource. Must be 0 or D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT.
warn:vkd3d-proton:d3d12_device_GetResourceAllocationInfo3: Invalid resource desc.
This comes from libs/vkd3d/resource.c (~line 3296):
case D3D12_RESOURCE_DIMENSION_BUFFER:
...
if (desc->Alignment != 0 && desc->Alignment != D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT)
WARN("Invalid alignment %"PRIu64" for buffer resource. Must be 0 or D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT.\n", ...);
ELDEN RING is repeatedly calling GetResourceAllocationInfo3 requesting alignment=4096 for a buffer, which this validation only allows to be 0 or 65536. Since the call is rejected every time, the game appears to spin retrying it (matches the CPU-pegged/GPU-idle symptom exactly), and this is likely what leads to the divide-by-zero crash reported above when it eventually gives up and uses a bad/zero allocation size.
4096-byte alignment for buffers is part of D3D12's small resource placement support (relevant to GetResourceAllocationInfo3/D3D12_RESOURCE_ALLOCATION_INFO1), which real Windows drivers support but this validation path doesn't seem to allow. Could this be the missing piece for RDNA4/GFX1200 (and possibly other) compatibility here, independent of the ReBAR angle from #2016?
Heap layout for reference (looked sane, not split like in #2016):
Memory heap #0, size 7290 MiB, budget: 7111 MiB, usage: 16 MiB.
Memory heap #1 [DEVICE_LOCAL], size 16304 MiB, budget: 14962 MiB, usage: 399 MiB.
@LeviKv003 I used the same environment as you: RX 9060 XT 16GB (RADV GFX1200) + Driver: Mesa 26.0.3-1ubuntu1 + VKD3D-Proton version: 3.1.0 (3dfc6f07d0953b1), but I didn't get any "Invalid resource desc" warnings.
Could you provide your most recent save files at the exact crash point?Since these bugs are likely tied to the game's specific environment. This includes screen settings, image quality levels. Therefore, besides the save files, the configuration files are also required. please package the entire users directory (which includes both saves and config files) into a tarball using the following command:
tar -zcvf EldenRing.tar.gz ~/.steam/debian-installation/steamapps/compatdata/1245620/pfx/drive_c/users/steamuser/AppData/Roaming/EldenRing
Also, could you provide detailed instructions on how to reproduce the 'Invalid resource desc' from that save point, such as which specific battle to enter or what specific actions trigger the issue? Thanks.
ge-proton11-3x1 2026-07proton 9.0x1 2026-07proton 9.0-4x1 2026-07proton experimentalx1 2026-07VKD3D_CONFIG=log_memory_budget`,x1 2026-07VKD3D_CONFIG=log_memory_budget`x1 2026-07
ELDEN RING never renders a window on RX 9060 XT (RDNA4).
eldenring.exepins one CPU core, dGPU usage stays near 0%, and the process is eventually torn down. On one run (Proton 9.0, Steam Overlay disabled) it crashed instead withEXCEPTION_INT_DIVIDE_BY_ZEROinsideeldenring.exe, right after these vkd3d-proton warnings:Reproduced on GE-Proton11-3, Proton 9.0-4, and Proton Experimental alike. vkcube runs fine on the same system, and no
amdgpuring timeout/reset ever appears in the kernel log, so this looks CPU-side rather than a real GPU hang.Software information
ELDEN RING, Steam AppID 1245620, default launch options.
System information
d686616d170f510) and 3.1.0 (3dfc6f07d0953b1), both affectedLog files
Attached log (Proton Experimental run, ends in the hang): https://gist.github.com/LeviKv003/6a50eb7913ddaf92d28fd296cd39597d
The divide-by-zero crash backtrace (from a separate Proton 9.0 run, log not preserved) was: fault at
eldenring.exe+0x16DDCDC,rax=0at the divide.