ah proton log didnt get added for some reason, but its in the drive link too
edit: i realize my mesa version is bit old. i'll update and see if it still reproduces
updated mesa to latest available in arch repos. GPU still crashes.
[ 173.395274] i915 0000:0d:00.0: [drm] GPU HANG: ecode 12:1:84dfd7f7
[ 173.395278] i915 0000:0d:00.0: [drm] GPU error state saved to /sys/class/drm/card1/error
Does the hang reproduce for you when you replay the trace?
Replays clean here without validation errors (edit: at least without any unexpected ones, D3D9 forces us into doing some janky stuff), so might be best to report that to Mesa folks.
Maybe also try throwing DXVK_CONFIG="dxvk.enableDescriptorBuffer=True" at it, although that shouldn't really change anything.
Actually, another thing, does Alchemist not use the Xe kernel driver by default? I'm really not up to date with Intel stuff, but given that we use transfer queues much more in 3.0 I wouldn't be surprised if there were some i915 issues in that area.
All pre-release Intel testing was done on Battlemage (by @Blisto91) FWIW, don't think there were any hangs.
You can run with export ANV_QUEUE_OVERRIDE=c=0,b=0 to rule out transfer/compute queue issues.
DXVK_CONFIG="dxvk.enableDescriptorBuffer=True" worked around hang in wow
apitrace caused gpu hang too. (assuming i did it correctly)
alchemist cards use i915 by default, battlemage+ uses xe by default
DXVK_CONFIG="dxvk.enableDescriptorBuffer=True" worked around hang in wow
Okay, that is... weird.
Only thing I can think of is that with fixed-function and Shader Model 1 pipelines, we do conditionally access textures as different types (2D/3D/Cube) because that's all figured out at runtime in D3D9, and we pass the actual texture type to the shader via a spec constant or Inline UBO depending on how the pipeline is compiled, but... we've been doing that ever since D3D9 support was added, it's not a new thing.
You can run with
export ANV_QUEUE_OVERRIDE=c=0,b=0to rule out transfer/compute queue issues.
Still crashing.
Sorry. Made a mistake. Proton 11 in steam is crashing too. Proton 10 is last good version of proton that's working on steam. xe and i915 behaved identically.
if it helps:
4b0795359f470804a53fa3b7852e47bc9b72633d is the first bad commit
commit 4b0795359f470804a53fa3b7852e47bc9b72633d
Author: Robin Kertels [email protected]
Date: Thu Sep 11 00:45:40 2025 +0200
[d3d9] Enable FF ubershaders by default
:D
src/d3d9/d3d9_options.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
edit: i realize that wasnt prob useful so
f5b82033ede38adddb9c51c70410a26a3bdab648 is the first bad commit
commit f5b82033ede38adddb9c51c70410a26a3bdab648 (HEAD)
Author: Robin Kertels [email protected]
Date: Wed Sep 10 19:10:36 2025 +0200
[d3d9] Hook up fixed function vertex ubershader
Same commit that broken a bunch of older Intel GPUs.
that is even weirder, FFVS doesn't do anything special... especially regarding binding models. It's just a bunch of UBOs.
Would be nice to understand what's going on exactly, but it also works everywhere else, so :shrug:
The main difference between legacy & descriptor_buffer/descriptor_heap is the update-after-bind being required in the later extensions.
We'll try to promote UBOs to the HW fast path if possible. If there is a bug in dxvk in that area that could explain it.
One way to can test that hypothesis is running with export ANV_DEBUG=bindless, this will prevent any promotion on legacy descriptors. If it works wit that option, it means there is likely a bug somewhere in dxvk.
I think one thing that might be useful here is running with validation enabled, i.e. making sure that validation layers are installed and then running with DXVK_DEBUG=validation VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation (ideally while replaying the apitrace so you don't have to fuck around with 32-bit libraries).
There's nothing that sticks out on AMD/NV on the legacy path though so I really don't know why there would be breakage, but we might be missing some random device limit somewhere.
We'll try to promote UBOs to the HW fast path if possible. If there is a bug in dxvk in that area that could explain it.
Does this extend to PUSH_ADDRESS UBO mappings with heap? Only happens for programmable shaders in D3D9, but clearly that has been working fine too.
One way to can test that hypothesis is running with
export ANV_DEBUG=bindless, this will prevent any promotion on legacy descriptors. If it works wit that option, it means there is likely a bug somewhere in dxvk.
Same behaviour.
There's easier reproduce way to reproduce too: either have "Full Screen Glow Effect" turned on or "Hardware Cursor" off. Game settings can be modified without having to log into any account. Will cause gpu to hang nearly instantly.
proton log with VVL:
https://www.upload.ee/files/19484953/steam-14374311965495394304.log.html
Ok, only thing in there before the GPU hang is the usual spew about our aliased texture bindings, but that's pixel shader only and, as mentioned before, not new in the slightest...
Does the hang occur without MSAA? If not then there might be secondary command buffer memes at work somehow, buuuut that would also be incredibly weird.
Yeah, hang occurs with MSAA off too.
I tried it on windows too with DXVK. There it only seems to crash the game intermittently. Like 1/10 loading into game world ends with a crash.
err: Exception on CS thread!
err: Failed to allocate descriptor set: VK_ERROR_OUT_OF_POOL_MEMORY_KHR
Linux trace played fine under windows. Made 2 traces under windows: https://drive.google.com/drive/folders/19mCkqWO0cPvkIwrZ2y4WMkZXrbyuoqn_ they crash under linux.
I suppose it's just some weird hardware bug?
err: Exception on CS thread!
err: Failed to allocate descriptor set: VK_ERROR_OUT_OF_POOL_MEMORY_KHR
Please check if https://github.com/doitsujin/dxvk/pull/5746 fixes that. This was already reported with #5742, but I'd really appreciate some quick feedback on whether the PR actually works around the issue because I have no way to test Intel on Windows.
I faced the same problem in D3D9 games(TES IV Oblivion, Silent Hill 2) after upgrading to 3.0, with DXVK outputting infinite err: DxvkSubmissionQueue: Command submission failed: VK_ERROR_DEVICE_LOST when starting/loading the game.
Jun 30 15:40:48 Arch-PC kernel: i915 0000:00:02.0: [drm] Resetting rcs0 for preemption time out
Jun 30 15:40:48 Arch-PC kernel: i915 0000:00:02.0: [drm] sh2pc.exe[10208] context reset due to GPU hang
Jun 30 15:40:48 Arch-PC kernel: i915 0000:00:02.0: [drm] GPU HANG: ecode 9:1:85dfffff, in sh2pc.exe [10208]
Jun 30 15:40:48 Arch-PC kernel: i915 0000:00:02.0: [drm] GPU error state saved to /sys/class/drm/card1/error
the earlier advice to run with DXVK_CONFIG="dxvk.enableDescriptorBuffer=True" worked!.
glxinfo -B
Device: Mesa Intel(R) HD Graphics 530 (SKL GT2) (0x1912)
Version: 26.1.3
Any useful logs I can post?
EDIT: For some reason, it seems to happen only in D3D9, D3D11 games like Skyrim Anniversay Edition work fine.
EDIT2: I tried out https://github.com/doitsujin/dxvk/actions/runs/28396913460 without any parameters, didn't work.
@Erwin-Iosef Just curious, if you try proton-ge (you can easily install it with 'protonup-qt'), does it still gpu hang or just crash with wine error in proton logs?
@understyx Tried it, I don't think it works for regular wine, I don't use steam much as well.
Edit: The bug I produced was with regular wine + DXVK.
warn: D3D8WrappedObject::QueryInterface: Unknown interface query
warn: 22222222-1c77-4d40-b0cf-98fefdffffff
warn: D3D8WrappedObject::QueryInterface: Unknown interface query
warn: 11111111-1c77-4d40-b0cf-98fefdffffff
warn: D3D8WrappedObject::QueryInterface: Unknown interface query
@understyx do you get this message spammed when you run with DXVK_CONFIG="dxvk.enableDescriptorBuffer=True"?
EDIT:Nvm, it seems it's when d3d9 runs in d3d8 compat mode.
@understyx Tried it, I don't think it works for regular wine, I don't use steam much as well. Edit: The bug I produced was with regular wine + DXVK.
yeah all good. just was curious since i don't get as many gpu hangs with that. (is very rng though)
In the end I guess it doesn't matter that much either way. With mesa 26.2 ANV will enable descriptor heap by default and that should work around this too? I guess I'll close the issue when that happens.
Sorry I couldn't help, and yeah hopefully I suppose, looks like a tricky bug for the devs.
minimal vibecoded repro if its useful
https://gist.github.com/understyx/fc134ad99d262ddbf64a89b5b08e6d57
Would you be able to give a go at https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42665 see if it helps?
Would you be able to give a go at https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42665 see if it helps?
Doesn't seem to fix it unfortunately.
Hang shifted few d3d9 calls down.
Keep in mind that the GPU runs asynchronously so the D3D9 call executed at the time the hang occurs is more or less random and has nothing to do with the actual hang itself.
Can you post a Proton log with the Mesa build in question?
@understyx what app are you using for the log?(Sorry GitHub app glitched)
steam-14374311965495394304.log
I swapped to GE proton and running with wow64, but that shoudn't make a difference, right?
For what it's worth, I think the MR is fixing the issue on my side, running without the MR and replaying the trace from the initial comment I get a hang, with the MR it's not hanging.
I unfortunately can't apply the patch for mesa 26.1.4 and looks like your
commit needs rebasing.
Here is a backport, but for some reason it's not triggering the issue on 26.1
Just tested, can still reproduce on Silent Hill 2.
GPU: Intel® Graphics (RPL-P)
That's a D3D12 game though? Not sure how that is related to D3D9 fixed-function stuff.
There is also original Silent Hill 2 using D3D8.
I meant the original Silent Hill 2, there's an Enhanced Edition mod which lets it play using d3d9, although in my experience the bug also happened in its native d3d8 mode(maybe d3d9->8 compat mode)
tried latest mesa git with dxvk 3.0.2 &
info: Effective configuration:
info: dxvk.hideIntegratedGraphics = True
info: dxvk.enableDescriptorHeap = false
info: dxvk.enableDescriptorBuffer = false
and seems to not crash the gpu anymore for me.
Can also confirm issue fixed in Silent Hill 2 original.
proton 11.0x1 2026-06proton experimentalx1 2026-06DXVK_CONFIG="dxvk.enableDescriptorBuffer=True"x5 2026-07DXVK_DEBUG=validationx1 2026-06
Please describe your issue as accurately as possible. Include screenshots or videos when relevant.
Figured I'd try to reproduce #5734 but apparently 3.0 causes my GPU to reset.
GPU hangs with DXVK 3.0 (Through proton experimental) when loading into the game world. Works fine with 2.7.1 (Through proton 11.0 beta)
Software information
Name of the game, settings used etc. Include any mods or add-ons if applicable.
World of Warcraft: Wrath of the Lich King 3.3.5a
System information
Apitrace file(s)
For instructions on how to use apitrace, see: https://github.com/doitsujin/dxvk/wiki/Using-Apitrace
Log files
dmesg:
[27936.710923] i915 0000:0d:00.0: [drm] GPU HANG: ecode 12:1:84dfd7f7, in Wow.exe [55049]
[27936.710926] i915 0000:0d:00.0: [drm] GPU error state saved to /sys/class/drm/card1/error
[27936.710930] i915 0000:0d:00.0: [drm] Wow.exe[55049] context reset due to GPU hang
[28059.105440] i915 0000:0d:00.0: [drm] GPU HANG: ecode 12:1:84dfd7f7, in Wow.exe [55902]
[28059.105476] i915 0000:0d:00.0: [drm] Wow.exe[55902] context reset due to GPU hang
[28217.683735] i915 0000:0d:00.0: [drm] GPU HANG: ecode 12:1:84dfd7f7, in Wow.exe [56904]
[28217.683758] i915 0000:0d:00.0: [drm] Wow.exe[56904] context reset due to GPU hang
[28618.707187] i915 0000:0d:00.0: [drm] GPU HANG: ecode 12:1:84dfd7f7, in Wow.exe [58513]
[28618.707214] i915 0000:0d:00.0: [drm] Wow.exe[58513] context reset due to GPU hang
[28949.727723] i915 0000:0d:00.0: [drm] GPU HANG: ecode 12:1:84dfd7f7, in Wow.exe [60413]
[28949.727741] i915 0000:0d:00.0: [drm] Wow.exe[60413] context reset due to GPU hang
[28997.463774] i915 0000:0d:00.0: [drm] GPU HANG: ecode 12:1:84dfd7f7, in Wow.exe [60784]
[28997.463795] i915 0000:0d:00.0: [drm] Wow.exe[60784] context reset due to GPU hang
[29133.673175] i915 0000:0d:00.0: [drm] GPU HANG: ecode 12:1:85dff5fb, in Wow.exe [61401]
[29133.673196] i915 0000:0d:00.0: [drm] Wow.exe[61401] context reset due to GPU hang