SteamVR-for-Linux icon indicating copy to clipboard operation
SteamVR-for-Linux copied to clipboard

[BUG] Constant SteamVR Fail -203

Open LiamDawe opened this issue 3 years ago • 155 comments

Describe the bug I am facing an issue where SteamVR will just fail on me constantly, don't get even 5 minutes out of it before it just freezes up and dies on me.

To Reproduce Steps to reproduce the behavior: Use NVIDIA with Arch, try and play SteamVR and watch it fail?

Expected behavior For it to work like it usually does?

System Information (please complete the following information):

  • Distribution: Arch
  • SteamVR version: Tested on beta 1.19.1 and also stable 1.18
  • Steam client version: 1626127145 (July 12)
  • Opted into Steam client beta?: Yes
  • Graphics driver version: 470.42.01
  • Gist for SteamVR System Information: https://gist.github.com/LiamDawe/b59c8756962f1e394aa74bdc27473abd see also the developer output https://gist.github.com/LiamDawe/3ee28c6dc8523f1a1d4044c126fd01b7

Note: Commenters who are also experiencing this issue are encouraged to include the "System Information" section in their replies.

LiamDawe avatar Jul 16 '21 16:07 LiamDawe

Went back to NVIDIA 465.31 and no issues at all. So it's a problem somewhere caused by the 470 driver.

LiamDawe avatar Jul 16 '21 17:07 LiamDawe

Hello @LiamDawe, it might be interesting to test if nvidia 470.xx + https://github.com/ValveSoftware/SteamVR-for-Linux/issues/227#issuecomment-520459572 works around the issue you're seeing.

kisak-valve avatar Jul 16 '21 17:07 kisak-valve

I have the same issue. I tested what @kisak-valve suggested and it works.

dec05eba avatar Jul 22 '21 20:07 dec05eba

Had two crashes playing Groove Gunner today (-203).

First when I tried to go into the Steam system menu/library from the game. After killing SteamVR I can't start it again without a power cycle on the headset because it will only display garbage.

Second crash when I quit the game after playing it again.

My uninformed suspicion would point to the compositor crashing under certain circumstances in combination with async reprojection.

edwin-v avatar Jul 24 '21 22:07 edwin-v

From my recent experiences, I can confirm that enabled async reprojection can cause SteamVR failures to happen a lot more likely.

When playing GTFO in VR with async reprojection (on nVidia), I experience about 2-3 crashes in a 3h play session. The game with the VR mod is quite demanding, so async reprojection does help with performance without downscaling. I tried now 2 ~3h sessions in GTFO VR without async reprojection and didn't experience a single crash (have to downscale for a good experience then though).

My suspicion is, that a SteamVR failure with async reprojection occurs more likely, when the game is more demanding. I didn't experience crashes with Beat Saber, Synth Riders or Pistol Whip even when async reprojection was enabeld, but those games are way less demanding and work perfectly without async reprojection too.

Corben78 avatar Jul 28 '21 08:07 Corben78

I'd have to disagree with that, I can't play more that a few minutes of Beatsaber with async reprojection without experiencing a crash, sometimes it does it even straight away during the first song. Turning it off, all is fine. I'm running it at 150% res on the index though, so it might be a touch more demanding than on default settings. Also, Mods might add to that. That said, beatsaber works flawlessly at 150% without async reprojection too.

jannis3005 avatar Jul 28 '21 08:07 jannis3005

i cannot even start anything. before even home is started my pc freezes for a very short time and after that it points out error 203. hmd is black the whole time. it works flawlessly on windows and did before the nvidia driver update

silelmot avatar Aug 02 '21 21:08 silelmot

I'm also experiencing increased SteamVR crashes with async reprojection enabled on Linux. I have a 100% reproducible test case.

I'm running a GTX 1070 with NVIDIA 470 driver with SteamVR Beta 1.19.6. With async reprojection I experience the already reported jitter and wobbliless of the overlay and chaperone. In addition, when I play VRChat, and visit the Vket 6 Carryol WindChorus world and walk up to the Nullmoto Universe booth, SteamVR (but not VRChat) will crash. Without async reprojection the framerate drops but Steam VR keeps running.

OS is Arch Linux.

mpnordland avatar Aug 17 '21 16:08 mpnordland

I just found out that on my 3-monitor-setup,when i disable all but one, steamvr just works. With all 3 on i get an instant 203

silelmot avatar Aug 30 '21 15:08 silelmot

With custom SteamVR drivers on Linux same thing happens, last time i tested it was an Ubuntu machine, no external monitors, and the behavior is just "great" :) you start SteamVR and it works fine and dandy for maybe 5-10 minutes, it then proceeds to die for no reason with -203, no errors from the driver, only an "unusual" sleep state before crash, if i remember correctly

okawo80085 avatar Sep 01 '21 16:09 okawo80085

I just found out that on my 3-monitor-setup,when i disable all but one, steamvr just works. With all 3 on i get an instant 203

This is an unrelated issue. This happens on AMD as well. What's happening here is specific to Nvidia 470

HadetTheUndying avatar Sep 01 '21 22:09 HadetTheUndying

I can confirm this irritating, seemingly random -203 error is still an issue with the following setup in SteamVR:

Ubuntu 20.04 NVIDIA driver 470.57.02 Geforce 1080 Valve Index

While I could go back to a previous driver version which doesn't support asynchronous reprojection, I would end up with the double-image stutters again... but that's why I upgraded to the 470 driver.

quantumac avatar Sep 07 '21 02:09 quantumac

If SteamVR developers need a highly (and quickly) reproducible case, try this:

  1. Make sure your system is running the NVIDIA 470 driver which supports asynchronous reprojection.
  2. Run "Waltz of the Wizard: Natural Magic" under Proton.
  3. Dismiss the complaint about a json file if it appears.
  4. Once at the starting point, go to the door called "Courtyard" and touch the circle on the door until you hear the door creaking open sound. If the "Courtyard" door does not appear the first time, re-run the game.
  5. Once in the courtyard, move to the center of the stone magic circle and stand there. Swirling magic will appear to transport you to...
  6. Oopsie! Error -203 rears its head. Headset goes blank. Audio from the game continues, but you're no longer in VR.

Rarely, this action actually works as intended, VR stays working and the -203 error does not appear, but for the vast majority of the time, it bugs out like clockwork. Very reproducible.

The -203 error seems to occur during transitions, but not always. I've seen the error also happen in titles like "X-Plane 11" (native), "Myst" (proton), "Half-Life: Alyx" (native), "Go for Launch: Mercury" (proton), "Google Earth VR" (proton).

quantumac avatar Sep 08 '21 16:09 quantumac

Pops up out of nowhere constantly during Elite Dangerous and Phasmophobia in Proton on 470 drivers as well, where both of these titles previously worked great. This is still occurring even after disabling asynchronous reprojection in the settings.

These seem to be the only relevant messages from the web console:


Fri Sep 10 2021 01:22:26.004081 - Failed Watchdog timeout in thread Render in WaitForPresent after 6.004832 seconds. Aborting.
Fri Sep 10 2021 01:22:26.061325 - IPC: recovering abandoned mutex 0x7f9af7e163a4
Fri Sep 10 2021 01:22:26.603525 - Excessive binding loads from steam (18668): crc=3209310505 lc=2 Reload=F res=2
Fri Sep 10 2021 01:22:26.603591 - ===== vive: state=4, NOT empty, uri=file:///home/orangestar/.local/share/Steam/steamapps/common/SteamVR/resources/config/legacy_bindings_generic_hmd.json
                                  [Snip: Previous 2 messages repeated 11 times]
Fri Sep 10 2021 01:22:34.676967 - Socket closed
Fri Sep 10 2021 01:22:34.677029 - Unable to read message from socket: 0
Fri Sep 10 2021 01:22:34.677067 - Process vrcompositor (45034) disconnected (Thread(0x0x7f3a200030d0/0x0x7f)
Fri Sep 10 2021 01:22:34.677104 - AppInfoManager.ProcessQuit processid=45034 eLaunchingApp=LaunchingApp_None
Fri Sep 10 2021 01:22:34.677119 - AppInfoManager.ProcessQuit: Clearing application openvr.component.vrcompositor PID was 45034
Fri Sep 10 2021 01:22:34.677137 - AppInfoManager.ProcessQuit: Clearing application openvr.component.vrcompositor PID because 45034 has exited
Fri Sep 10 2021 01:22:35.019778 - Excessive binding loads from steam (18668): crc=3209310505 lc=2 Reload=F res=2
Fri Sep 10 2021 01:22:35.019845 - ===== vive: state=4, NOT empty, uri=file:///home/orangestar/.local/share/Steam/steamapps/common/SteamVR/resources/config/legacy_bindings_generic_hmd.json
Fri Sep 10 2021 01:22:42.591620 - [System] Transition from 'SteamVRSystemState_Ready' to 'SteamVRSystemState_NotReady'.
Fri Sep 10 2021 01:22:42.684436 - Excessive binding loads from steam (18668): crc=3209310505 lc=2 Reload=F res=2
Fri Sep 10 2021 01:22:42.684500 - ===== vive: state=4, NOT empty, uri=file:///home/orangestar/.local/share/Steam/steamapps/common/SteamVR/resources/config/legacy_bindings_generic_hmd.json
Fri Sep 10 2021 01:22:43.671803 - Excessive binding loads from steam (18668): crc=3209310505 lc=2 Reload=F res=2
Fri Sep 10 2021 01:22:43.671883 - ===== vive: state=4, NOT empty, uri=file:///home/orangestar/.local/share/Steam/steamapps/common/SteamVR/resources/config/legacy_bindings_generic_hmd.json
Fri Sep 10 2021 01:22:43.825925 - [Status Alert] SteamVR Fail (-203)

After this, the headset goes dark and the monitor window displays the -203 error. Ignore the "Excessive binding loads" messages, it seems to be a separate issue (#307)

Manjaro Linux NVidia Driver 470.63.01 Geforce 1060 Original Vive Steam client beta, version 1631237534 SteamVR Beta, version 1.19.7 (1629236071) Here's my System Report

Orangestar12 avatar Sep 10 '21 07:09 Orangestar12

I am suffering from the same problem. Although I just acquired a valve index recently. It seems to me to some games tigger the 203 error faster than others. I can play Alyx fopr quite some time. If I try No Man's Sky VR I get 203 error almost instantly.

Here is my inxi Output:

System:    Host: kai-Z390 Kernel: 5.14.0-0-MANJARO x86_64 bits: 64 Desktop: Xfce 4.16.0 Distro: Manjaro Linux 
Machine:   Type: Desktop Mobo: ASUSTeK model: ROG STRIX Z390-F GAMING v: Rev 1.xx serial: 180937134403225 
           UEFI: American Megatrends v: 1602 date: 06/04/2020 
Memory:    RAM: total: 15.55 GiB used: 3.67 GiB (23.6%) 
           Array-1: capacity: 64 GiB slots: 4 EC: None 
           Device-1: ChannelA-DIMM1 size: No Module Installed 
           Device-2: ChannelA-DIMM2 size: 8 GiB speed: 3200 MT/s 
           Device-3: ChannelB-DIMM1 size: No Module Installed 
           Device-4: ChannelB-DIMM2 size: 8 GiB speed: 3200 MT/s 
CPU:       Info: 6-Core model: Intel Core i5-9600K bits: 64 type: MCP cache: L2: 9 MiB 
           Speed: 800 MHz min/max: 800/4600 MHz Core speeds (MHz): 1: 800 2: 800 3: 800 4: 846 5: 800 6: 800 
Graphics:  Device-1: NVIDIA TU106 [GeForce RTX 2070] driver: nvidia v: 470.63.01 
           Display: server: X.Org 1.20.13 driver: loaded: nvidia resolution: 1: 1920x1200~60Hz 2: 2560x1440 
           OpenGL: renderer: NVIDIA GeForce RTX 2070/PCIe/SSE2 v: 4.6.0 NVIDIA 470.63.01 
Audio:     Device-1: Intel Cannon Lake PCH cAVS driver: snd_hda_intel 
           Device-2: NVIDIA TU106 High Definition Audio driver: snd_hda_intel 
           Sound Server-1: ALSA v: k5.14.0-0-MANJARO running: yes 
           Sound Server-2: PipeWire v: 0.3.34 running: yes 
Info:      Processes: 317 Uptime: 53m Shell: Zsh inxi: 3.3.06 

kaiwasaki avatar Sep 10 '21 20:09 kaiwasaki

It fixes this if you disable async re-projection as someone stated above. Async re-projection when it works makes it so it is more smooth when you have low fps. The Nvidia 470 driver recently implemented support for async re-projection so its either a problem with the driver or valves implementation of it. It crashes on Half life alyx and NEOS vr. So basically anything with it enabled for me.

Hello @LiamDawe, it might be interesting to test if nvidia 470.xx + #227 (comment) works around the issue you're seeing.

Edit: It seems to work for awhile with async reprojection. It is a lot smoother but ends up crashing after awhile and is kind of annoying.

Synkstar avatar Sep 23 '21 17:09 Synkstar

This is more of an issue now that you can't build a kernel module for 465 drivers on 5.14 kernels. SteamVR also locks up the whole machine requiring a hard reboot when it is closed.

It fixes this if you disable async re-projection as someone stated above.

How do I do that (#470 is without an application even running, and afaik you can only disable async on a per application basis)

mSparks43 avatar Oct 05 '21 17:10 mSparks43

This is more of an issue now that you can't build a kernel module for 465 drivers on 5.14 kernels.

I don't know where you got that idea from. Building 465 drivers works fine for me on 5.14 using nvidia-all. If you haven't used that yet, give it a shot.

Orangestar12 avatar Oct 05 '21 17:10 Orangestar12

This is more of an issue now that you can't build a kernel module for 465 drivers on 5.14 kernels.

I don't know where you got that idea from. Building 465 drivers works fine for me on 5.14 using nvidia-all. If you haven't used that yet, give it a shot.

The kernel headers changed in such a way as to break both the nvidia installer, eg https://www.nvidia.com/download/driverResults.aspx/171980/en-us

and kmod-nvidia from rpmfusion

rather not blow up my system with random guesses, 465 is end of life and SteamVR requires a hard system reboot to close it down on 470+.

Are you sure you didn't just fall back on llvmpipe?

EDIT:Some progress on this. switching to wayland, recompling stuff, enabling gdm and a couple of other things I forget improved the situation somewhat, but its not really in a usable state (legacy reprojection and async reprojection both now unusable on 470+) guess Im just SOL until this lot matures.

mSparks43 avatar Oct 05 '21 18:10 mSparks43

I don't think I'd be getting the performance (or VR support) I'm getting on my computer with pure llvmpipe.

Orangestar12 avatar Oct 11 '21 11:10 Orangestar12

FYI: SteamVR Fail (-203) error is still present with the latest SteamVR 1.20.4 beta update, which is a "build candidate for full release" according to the release notes. GPU: NVIDIA GTX 1080 Driver: 470.74 OS: Ubuntu 20.04

quantumac avatar Oct 21 '21 17:10 quantumac

~~Still an issue even with Async Reprojection disabled Nvidia RTX 2060 Super, Driver 495, Linux Mint Sat Nov 06 2021 18:01:21.838229 - Failed Watchdog timeout in thread Render in WaitForPresent after 5.572546 seconds. Aborting.~~ This is likely an issue with the game itself and not Proton.

Frozenreflex avatar Nov 06 '21 23:11 Frozenreflex

Im back up and running after updating to nvidia driver 470.82 still get artifacts, but at least it works and well once an application starts.

the 495.44 on new feature branch is still really buggy.

So its an nvidia driver issue by the looks of it. Cant open the settings page tho.

mSparks43 avatar Nov 06 '21 23:11 mSparks43

For me async reprojection completely freezes my computer for a few seconds until steamvr crashes and vr stops working. This happens 100% of the time. It happens immediately after steamvr launches.

dec05eba avatar Nov 07 '21 00:11 dec05eba

I really wish nvidia would just open source their drivers. Like amd gpu users aren't having this issue. I know people using vr on Linux with amd cards perfectly fine. Sadly its still hard to get new gpus without getting it from a scalper. There is really no reason for nvidia to not open source them. So it is definitely a nvidia driver issue like @mSparks43 mentioned.

Synkstar avatar Nov 07 '21 19:11 Synkstar

Just adding to the pile. I also seem to get frequent freezes/crashes with looping sound when running demanding games (particularly VRChat and Blade & Sorcery) with asynchronous reprojection on. Seems like some process in the chain is overwhelmed because it always happen when there's "a lot going on" or upon loading into a new world. Maybe there has been an update trying to fix some of the other async bugs considering the crashes seem to happen under circumstances where asynchronous reprojection should kick in?

This is on the latest proton, Radeon 6800XT and Ryzen 5900X.

ZarathustraDK avatar Nov 08 '21 17:11 ZarathustraDK

The latest SteamVR release, 1.21.1, still has the -203 error issue.

I sure wish some friendly, helpful developers at Valve would take some time to address this reoccurring error. We customers would appreciate it quite a lot. I'd try my hand at fixing it myself but, hey... closed source. Can't do much without access to source code.

OS: Ubuntu 20.04 (Linux) SteamVR: 1.21.1 NVIDIA driver: 470.82.00 GPU: GTX 1080

quantumac avatar Nov 09 '21 20:11 quantumac

I can not reproduce the issue anymore, my custom driver works fine no crashes so far, my consumer headset works fine too, didn't experience any crashes in a really long while

OS: Ubuntu 20.04.3 LTS SteamVR: 1.12.1 [beta] GPU driver: nvidia 470.82.00

okawo80085 avatar Nov 10 '21 15:11 okawo80085

Error (-203) still reproducible with the 1.21.2 beta release. Easily reproduced with "Waltz of the Wizard: Natural Magic", but that is by no means the only title where it can be reproduced.

OS: Ubuntu 20.04 (Linux) SteamVR: 1.21.2 NVIDIA driver: 470.82.00 GPU: GTX 1080

quantumac avatar Nov 12 '21 18:11 quantumac

Error (-203) still reproducible with the 1.21.2 beta release.

Can confirm, High CPU utilisation still causes ERROR SteamVR Fail (-203) OS: Fedora Core 35 (5.14.16-301.fc35.x86_64) SteamVR: 1.21.2 NVIDIA driver: 470.86 CPU: AMD 5900X GPU: RTX 3070

mSparks43 avatar Nov 12 '21 19:11 mSparks43