[BUG] SteamVR fails with errors -203 and 307 if too many screens are connected to a 7900xtx
Describe the bug My setup is as follows: 7900xtx
DP-1 3840x2160@144Hz DP-2 1920x1080@144Hz HDMI-A-1 1920x1080@60Hz
If I try to start SteamVR it fails with error -203 and 307.
In order to use SteamVR in direct mode I have to use either swaymsg output DP-2 power off or swaymsg output HDMI-A-1 power off.
To Reproduce Run a similar screen combination and see it fail.
Expected behavior SteamVR should start normally
System Information
- Distribution: Arch Linux x86_64
- Kernel: 6.5.3-arch1-1
- SteamVR version: 1.27.5 beta
- Steam client version: 1695085405
- Opted into Steam client beta?: Yes
- Graphics driver version: mesa 23.1.7
- Gist for SteamVR System Information: gist
Additional context
journal of me trying to start SteamVR twice with all three screens connected. If I use swaymsg output xx power off to disable at least one screen SteamVR starts successfully.
This is no duplicate of https://github.com/ValveSoftware/SteamVR-for-Linux/issues/552, I tried turning down the refresh rate.
@Danielduel If you find some time, could you test this?
Hello @bblacher, at a glance this reads like a video driver or graphics card hardware limitation. It may be worthwhile to also mention this issue to your video driver vendor if it hasn't been already.
Are you sure this isn't a duplicate of #609
@mSparks43 Yes, I have this issue since 1.25 and it sounds nothing like my problem.
@kisak-valve Do you think the amd/drm Gitlab is the place to go for mentioning this?
@mSparks43 Yes, I have this issue since 1.25 and it sounds nothing like my problem.
Have you checked which monitor vrcompositor is selecting when it fails, because if it tries to select a monitor that isn't disabled it fails since 1.25.
No I have not, I don't think it's selecting any monitor, I just think that the is some bug preventing it from entering direct mode.
Also, I don't have this issue since 1.25, I've always had this issue. It's just that 1.25 was the first version I tried. @mSparks43
No I have not, I don't think it's selecting any monitor, I just think that the is some bug preventing it from entering direct mode.
Also, I don't have this issue since 1.25, I've always had this issue. It's just that 1.25 was the first version I tried. @mSparks43
#609 is when I switch my third monitor on it selects the wrong monitor and fails (unless I disable the monitor it is trying to select, then it succeeds in using it for the VR output instead of the headset)
Succeeds (in using the Dell 24" as a direct mode VR headset)
Fails to start VR on any display.
@mSparks43 For me it doesn't matter which monitor I disable, I just have to disable one of them.
@mSparks43 For me it doesn't matter which monitor I disable, I just have to disable one of them.
does that disable it, or physically switch it off? different things happen for me depending on which I do.
I tracked "failing with three screens active" down to
.local/share/Steam/logs/vrcompositor.txt
with the screen disabled it uses it instead of the headset with the screen off it uses the headset and works fine with the screen on, it fails because instead of
[Info] - Found candidate direct display as RandR output 0x1ca
when it uses the headset and works fine
its picking an active display
[Info] - Found candidate direct display as RandR output 0x1bd
and cannot acquire an xlib display that is in use.
So I guess the crux of it being a duplicate or not, is whether it is actually trying to select the headset when it fails (is it picking the same display when it works and when it does not work).
Latest SteamVR, updated Arch HDMI 1080p60 HDMI 1080p60 DP (1.4?) ultrawide 1440p120 (5120x1440) Another DP - Index HMD
The problem is not present
@bblacher
@Danielduel I do still have it, but as I said, my main screen is 2160p, so that may make the difference. Thank you for testing though :)