alvr-org / ALVR

Stream VR games from your PC to your headset via Wi-Fi
MIT License
5.3k stars 475 forks source link

Improve poor handling of SteamVR crash #562

Open ubershy opened 3 years ago

ubershy commented 3 years ago

Bug report:

TLDR: If SteamVR crashes for whatever reason, it is impossible to restart SteamVR and ALVR while wearing headset. Also there are orphaned Chrome processes made by ALVR.

How to reproduce

  1. Start ALVR. SteamVR will automatically start.
  2. Wait for SteamVR to crash (it usually happens once in two hours for me). Or just kill "VR Server" (vrserver.exe) via task manager. In windows task manager it is "End task" option from context menu.
Bad things which happen next:
  1. On PC SteamVR will show window "SteamVR has encountered critical error" with options to restart SteamVR or quit SteamVR. No matter which option you choose, other bad things listed below still happen.
  2. It would be impossible to restart SteamVR via "Restart SteamVR" button in ALVR window on PC. The button does nothing. ALVR web interface in Oculus Browser becomes inacessible too.
  3. Because of things mentioned above it is impossible to make ALVR and SteamVR running properly again while wearing headset. The only way to do it is to put headset off, go to PC, close SteamVR, close ALVR, start ALVR again. For me it is very inconvenient because my PC is located in another room on another floor.
  4. There also will be orphaned tree of Chrome processes (started by ALVR) that can only be killed manually via task manager or via PC restart. They will not be killed on closing ALVR or restarting SteamVR, etc. These trees can accumulate with multiple crashes.

Here is a screenshot of process hacker task manager showing a tree of ALVR chrome processes with parent "vrserver.exe" before SteamVR crash: Annotation 2021-03-24 213048 After SteamVR crash they are orphaned: Annotation 2021-03-24 213218

Environement

What hardware do you have: CPU, GPU, Audio

Ryzen 2700x, GTX 1070, ur28m sound card

What version of ALVR and SteamVR have you tried.

ALVR 15.1.0, SteamVR 1.16.10

Do you have the latest Windows updates? Run "winver" in Windows 10 to get the version number

Windows 10, Version 2004

thegforcian commented 3 years ago

I'm having this exact problem as a loop in which the ALVR addon is now permanently blocked by SteamVR since it wants to restart every time I unblock the application and it reverts into a blocked state. Attached are 7 crash timestamps from my config directory. Please let me know if I should add a new issue but this seems so similar I decided to simply comment. vrserver_crash_timestamp1.txt vrserver_crash_timestamp2.txt vrserver_crash_timestamp3.txt vrserver_crash_timestamp4.txt vrserver_crash_timestamp5.txt vrserver_crash_timestamp6.txt vrserver_crash_timestamp7.txt

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

ubershy commented 3 years ago

@thegforcian I think your problem deserves a separate issue on github.

But you have reminded me of SteamVR blocking ALVR addon which I forgot to mention in this issue. It is very inconvenient when it happens. My pc is far from the play area. I managed to put ALVR restart script to a shortcut on my wireless keyboard and it helps. But when SteamVR blocks ALVR addon after crash, there is no way I can reenable it remotely with some script. I have to go to PC to resolve it manually.

ckiee commented 3 years ago

The crash doesn't necessarily have to be easy to recover from; finding the source of these random crashes could be more productive.

ubershy commented 3 years ago

@ronthecookie Yes, you're right. Also the users might be more willing to report crashes especially if crashes are hard to deal with...

Yang-PM commented 3 years ago

There are some major crashes in steamVR, sometimes when Quest connects to the host, sometimes when the game starts, I don't know how to check the cause of this crash.

ubershy commented 3 years ago

There are some major crashes in steamVR, sometimes when Quest connects to the host, sometimes when the game starts, I don't know how to check the cause of this crash.

I experience a lot of crashes as well. I wonder how can I see the cause of client crashes. And how can I see the cause of server crashes, without relying on analyzing SteamVR crash dumps in windbg64, or possibly setting up development environment for ALVR and running it in debug mode.

mrstuff commented 2 years ago

same same here happy to reproduce and post logs , wish i knew how to help or what to do to offer useful error reporting, ill see if i cant find some general debug program , what bout the one in the oculus dev hub? thats only the quest side tho right? my bad if this is in the wrong spot and hey thanks a bunch ya'll