protonscr

Turning the TV off while in a proton game under a Wayland session will cause the game to exit

protonopen
ValveSoftware/Proton#6343 · opened 2022-11-25 by Gerporgl · updated 2022-11-26 · 2 comments · github
GGerporgl 2022-11-25 github

Compatibility Report

  • Name of the game with compatibility issues: Doom Eternal, The Outer Worlds, etc. (all proton games so far)

System Information

  • GPU: AMD RX 6750 XT
  • Driver/LLVM version: LLVM 14.0.0, DRM 3.48, Mesa 22.2.0, OpenGL 4.6
  • Kernel version: 6.0.6-76060006-generic
  • Proton version: 7.0-4 and 7.0-5 (most likely also older version 6, not sure I tried it)

I confirm:

  • [X] that I haven't found an existing compatibility report for this game.
  • [X] that I have checked whether there are updates for my system available.

Symptoms

When using Wayland, any proton game will exit if the HDMI output port is switched off/temporarily changed, such as when my Amplifier is switching the ports of my TV or if the TV is turned off.

When using a normal x session, it works fine, the game will not exit if disconnecting the display output ports. Also other non proton games are working fine so far and do not have this issue (they keep running just fine when I switch back.

Reproduction

Make sure you are using a Wayland session (I am using Pop_OS 22.04 with Wayland enabled to reproduce this)
Launch a game such as Doom Eternal, The Outer Worlds and leave it running in FULL SCREEN (many other games will have the same problem, in fact all my proton games so far)
Switch the TV or monitor off (you may want to disconnect it completely), and then turn it back on (I am using HDMI output, this may be required or not, I haven't tested with display port).
After the display is back on, the game will have exited and will no longer be running

When using a normal X session this behavior does not happen and the games are still running fine even if I switch or disconnect the display output ports.

I am expecting that I should be able to leave my games running in background if I want to, without having the screen turned on, I want to be able to watch TV or do other stuff with my TV while some games may still be running.

Kkisak-valve maintainer 2022-11-25 github

When using a normal x session, it works fine

Hello @Gerporgl, this hints that you're seeing an XWayland issue. It might be interesting to test a Vulkan application with Wine outside of Steam and see how that behaves.

GGerporgl 2022-11-25 github

I guess what you are saying makes sense. I thought about submitting this to some other projects (such as Wayland), but wasn't sure since I don't have enough knowledge about the entire software stack involved, I thought I would start with Proton... could it be specific also to my distribution and not Wayland?

So I actually just tried with the only other game I had outside of Steam (which is not linux native), Starcraft 2, and yes that one too exits after switching the display port output (and it doesn't with a normal x session). Not 100% sure if it uses Vulkan, but it must pass through it somehow according to the Lutris runner (as I understand it).

I guess this concludes that it is not a Proton specific issue?
I am guessing that I should submit this issue to the wayland project itself (https://gitlab.freedesktop.org/wayland/wayland/-/issues)

Nothing extracted yet.