protonscr

Witcher 3 v 4.00 - turning on RTX locks up the game.

vkd3dclosed
HansKristian-Work/vkd3d-proton#1342 · opened 2022-12-16 by melonlm · updated 2026-07-26 · 21 comments · github
Mmelonlm 2022-12-16 github

Distro: Arch
Proton: bleeding edge beta from steam
NVidia driver: 525.60.11-3 with PROTON_ENABLE_NGX_UPDATER=1 set

Game works fine with RTX turned off. turning RTX on reliably produces following error visible in steam stdout/stderr output:
winevulkan/virtual_queue_worker: queue submission failed with -4, treating as DEVICE_LOST.
It seems to also produce a correlated dmesg entry:
[ 973.501169] NVRM: Xid (PCI:0000:29:00): 109, pid=2503, name=witcher3.exe, Ch 0000002b, errorString CTX SWITCH TIMEOUT, Info 0x1cc029

With yesterday's Proton (without 2.8 vkd3d) it produced a different error I failed to capture verbatim, but it included a fencing timeout.

Mmelonlm 2022-12-16 github

One more thing: according to ncvidia-smi output the witcher3 processa seems to want to gobble up ALL the video memory:

| NVIDIA-SMI 525.60.11    Driver Version: 525.60.11    CUDA Version: 12.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:29:00.0 Off |                  N/A |
|  0%   48C    P8    24W / 220W |   7714MiB /  8192MiB |      6%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A       892    C+G   sway                              102MiB |
|    0   N/A  N/A      1054      G   Xwayland                            3MiB |
|    0   N/A  N/A      1332    C+G   ... --enable-features=Vulkan       11MiB |
|    0   N/A  N/A      1990      G   ...e/Steam/ubuntu12_32/steam      139MiB |
|    0   N/A  N/A      2044      G   ...ef_log.txt --shared-files      170MiB |
|    0   N/A  N/A      2503    C+G   ...bin\x64_dx12\witcher3.exe     7187MiB |
+-----------------------------------------------------------------------------+```
KK0bin 2022-12-16 github

A game using 8GB of VRAM when doing RT really doesn't sound that crazy to me. I don't think that's part of the issue.

Mmelonlm 2022-12-16 github

well it's happy on windows with same resources

pt., 16 gru 2022 o 20:51 Robin Kertels @.***>
napisał(a):

A game using 8GB of VRAM when doing RT really doesn't sound that crazy to
me. I don't think that's part of the issue.


Reply to this email directly, view it on GitHub
https://github.com/HansKristian-Work/vkd3d-proton/issues/1342#issuecomment-1355511800,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEUGANL6LU5V7V5SMNVYQI3WNTB3NANCNFSM6AAAAAATBMRQNY
.
You are receiving this because you authored the thread.Message ID:
@.***>

Mmelonlm 2022-12-19 github

I tried again, under Lutris , with dxvk 2.0 and vkd3d_proton 2.8, wine lutris-GE-proton-7.33:

the error message is now: winevulkan/queue_signaller_worker: Fence wait failed, vr -4.
and the accompanying dmesg entry: `NVRM: Xid (PCI:0000:29:00): 31, pid=26325, name=witcher3.exe, Ch 00000043, intr 00000000. MMU Fault: ENGINE GRAPHICS GPCCLIENT_GCC faulted @ 0x0_00000000. Fault is of type FAULT_PDE ACCESS_TYPE_VIRT_READ'

KK0bin 2022-12-19 github

Yes, it's a known issue. It does an out of bounds read from the SRV descriptor heap. We don't know what causes it however.

Eextract 2022-12-21 github

Is this the tracker or is there another place I can follow progress?

KK0bin 2022-12-21 github

#1353 fixes one issue with it but it still hangs because of a problem with synchronization.

Don't expect any progress on that, everyone is on vacation.

Jjrgiacone 2023-01-11 github

Just checking on this one if there is any tests I can help run to provide logs. If that would help?

KK0bin 2023-01-11 github

Nope, nothing you can do.

KK0bin 2023-01-12 github

#1372 works around the GPU hang on load.

RT shadows are broken (see #1373)

And the game freezes when loading a Kaer Morhen save for me. Not a GPU hang, it every single frame just takes 10-30s and it also makes my entire system unresponsive. Doing a full barrier after every Dispatch call works around that, so probably more issues with barriers.

BBlisto91 2023-02-06 github

Just noting here that i have not experienced this issue on my 7900XTX and i am able to turn on RT (tho perf and frame timing is pretty bad)

Ccatfish-k 2023-04-24 github

Different game but:

Xid (PCI:0000:01:00): 109, pid=338233, name=Warframe.x64.exe, Ch 000000be, errorString CTX SWITCH TIMEOUT, Info 0x1c06a

Rolling back to version 520.56.06 Nvidia kernel modules and a 6.0.1 series kernel fixed it for me. I got the hint from this dev post:

https://forums.developer.nvidia.com/t/multiple-cuda-rtx-vulkan-application-crashing-with-xid-13-109-errors/235459/33

Sstruq 2023-06-03 github

RT seems to be working fine now with vkd3d 2.9, nvidia 530.41.03, and game version 4.03.

Uurbenlegend 2023-06-03 github

@struq There's still some issues with RT. In particular, having it enabled when you start the beginning of the game causes really low framerates (< 5fps) during the scene where Geralt gets out of the bath tub and approaches Yennifer.

There's also just generally low performance for the RT mode compared to Windows. I was getting around 30-ish fps on my 3090.

Sstruq 2023-06-03 github

Just watched again the scene you mentioned and no problem here. The entire opening scene maintains 30~40 fps (1080p) for me, not great but also not very different from Windows. That being said, I do sometimes get sudden framerate drops with the dx12 version, whether or not with RT enabled, that doesn't recover unless it's restarted. But that happens in Windows too and doesn't look like a vkd3d-proton issue.

Aadolfotregosa 2023-06-04 github

RT seems to be working fine now with vkd3d 2.9, nvidia 530.41.03, and game version 4.03.

shadows are not ok with RT enabled

Sstruq 2023-06-05 github

shadows are not ok with RT enabled

Yes, I see the shadow glitches too. Likely the same as https://github.com/HansKristian-Work/vkd3d-proton/issues/1373.

CCarlKath 2023-07-08 github

EDIT: Already got an answer in another issue/topic. The problem seems normal.

How did you guys get the game to load with ray tracing?
My instance just hangs after loading.

Sysinfo:
OS: Arch Linux x86_64
Host: PC-XB00432 V1.0
Kernel: 6.4.2-arch1-1
Uptime: 51 mins
Packages: 970 (pacman), 9 (flatpak)
Shell: bash 5.1.16
Resolution: 3840x2160
DE: Plasma 5.27.6
WM: KWin
Theme: [Plasma], Breeze [GTK2/3]
Icons: [Plasma], breeze-dark [GTK2/3]
Terminal: konsole
Terminal Font: Source Code Pro Semibold 10
CPU: Intel i7-5820K (12) @ 4.300GHz
GPU: NVIDIA GeForce RTX 3090 Ti
Memory: 5414MiB / 15906MiB

Nneworld 2023-07-31 github

How did you guys get the game to load with ray tracing?

I managed to launch the game by lowering the resolution to 1440p. It worked until I went to the city. I suppose I need to use RT settings instead of RT Ultra. However, the game stopped working at all, so it could be a coincidence.

Witcher version: 4.0.4
GPU: 3080 ti
Latest drivers and everything

BBlisto91 2023-08-10 github

Just noting here that i have not experienced this issue on my 7900XTX and i am able to turn on RT (tho perf and frame timing is pretty bad)

Correction to that. I cannot seem to load in to Blood and Wine without a GPU hang no matter radv or amdvlk.
Regular game doesn't seem to complain so far in that regard, but it's mostly been spot testing here and there so maybe it can also happen in certain locations.

Kkostea92 2026-07-26 github

The Witcher 3 next-gen — RT freeze on NVIDIA/Linux (Xid 109): FIXED with extra_rtas_sync

Launch options that fixed it:
PROTON_ENABLE_NVAPI=1 VKD3D_CONFIG=extra_rtas_sync %command%

SYMPTOM
Enabling ray tracing (DX12) freezes the picture within seconds while audio keeps
playing. Kernel log shows:
NVRM: Xid (PCI:0000:01:00): 109, name=witcher3.exe, CTX SWITCH TIMEOUT
Game must be killed from a terminal.

SYSTEM
RTX 3060 12GB / driver 610.43.03 (open module) / CachyOS kernel 7.1.4 / KDE Wayland
GE-Proton11-1 (vkd3d-proton 1.1-5388-gbee300e4c)

RULED OUT (all tested)

  • Mods: crashes with -disablemods too
  • Resolution: crashes at 1080p
  • GPU load / weak GPU: CRASHES IN THE MENU the instant the RT toggle is flipped
  • VRAM: only 3-6 GB of 12 in use
  • Clocks: nvidia-smi -lgc 210,1800 changed nothing
  • Proton version: GE freezes on a frame, Experimental gives black screen + audio
  • VKD3D_CONFIG=single_queue / no_upload_hvv / force_host_cached: no fix
  • VKD3D_DISABLE_EXTENSIONS=VK_KHR_present_wait: no fix

ROOT CAUSE
PROTON_LOG=1 VKD3D_DEBUG=warn showed, ~10s before VK_ERROR_DEVICE_LOST:
vkd3d_va_map_place_acceleration_structure: Attempted to place non-TLAS on
VA #14ba05a00 previously used by TLAS, marking mutated
The game reuses TLAS memory without inserting barriers, so rays traverse an
invalid BVH and stall the RT core -> GPU context switch timeout.
extra_rtas_sync inserts the RTAS barriers the game omits.

CAVEATS

  • Mitigation, not a cure: an Xid 109 can still fire, but the GPU now recovers
    and the game survives instead of hanging dead.
  • If hangs persist, try: VKD3D_CONFIG=extra_rtas_sync,single_queue
  • ALT-TAB still kills the session (swapchain never restores, black screen).
  • Ignore old guides recommending VKD3D_CONFIG=dxr,dxr11 — those options no
    longer exist in modern vkd3d-proton.