ChimeraOS / chimeraos

A Steam Big Picture based couch gaming OS
MIT License
1.63k stars 115 forks source link

gamescope crashing after waking up from suspend since v44 #770

Open mad526 opened 11 months ago

mad526 commented 11 months ago

Issue

Since upgrading to 44, ChimeraOS wakes up to the 'verifying installation' screen after being suspended for more than 1 minute instead of Steam, i.e. Steam seems to crash and restart. This was not the case on 43-1.

According to dmesg, gamescope-xwm is segfaulting and presumably causing this behavior. [ 4156.775303] gamescope-xwm[874]: segfault at dc ip 0000565431f4e458 sp 00007f9d7a7fb428 error 4 in gamescope[565431f3a000+9d000] likely on CPU 11 (core 3, socket 0)

See also full dmesg log: dmesg.log

System

CPU: AMD Ryzen 7 5800X MB: Gigabyte B550M Aorus Elite GPU: AMD Radeon RX 6800 XT

rzippo commented 11 months ago

I get the same if I just shutdown the TV the PC is attached to for about one minute. Steam restarts when I turn on the TV again.

[ 3311.326030] gamescope-xwm[27661]: segfault at dc ip 0000555c4dd28458 sp 00007f523cbb4428 error 4 in gamescope[555c4dd14000+9d000] likely on CPU 8 (core 2, socket 0)
[ 3311.557851] Chrome_ChildIOT[28069]: segfault at ffffe77a29bc0069 ip 00007ff22259adf2 sp 00007ff21774dc90 error 5 in libcef.so[7ff21e2ef000+7770000] likely on CPU 9 (core 3, socket 0) 
mad526 commented 11 months ago

Issue is still present in 44-1, but I found a workaround that works most of the time: If I turn on my TV and AVR and then wait at least 5 seconds before waking up ChimeraOS from suspend it usually does not crash. Possibly the whole thing is related to the HDMI handshake?

rzippo commented 10 months ago

I tested this again on 45_5340f50 and still happens.

Also, I don't even need suspend to make it happen. If I hold the shutdown button on my TV remote, so that it does not simply sleep but shuts down completely, when I turn on the TV gamescope crashes as above.

rzippo commented 10 months ago

If it can help, these are the lines that appear in ~/.gamescope-stdout.log as I shut down the TV and turn it on again:

wlserver: [backend/session/session.c:210] DRM device card1 changed
wlserver: Got change event for KMS device
drm: CRTC 91 has no VALVE1_CRTC_REGAMMA_TF support
drm: CRTC 95 has no VALVE1_CRTC_REGAMMA_TF support
drm: CRTC 99 has no VALVE1_CRTC_REGAMMA_TF support
drm: CRTC 103 has no VALVE1_CRTC_REGAMMA_TF support
drm: CRTC 107 has no VALVE1_CRTC_REGAMMA_TF support
drm: CRTC 111 has no VALVE1_CRTC_REGAMMA_TF support
drm: current connector 'HDMI-A-1' disconnected
drm: cannot find any connected connector!
wlserver: Updating mode for xwayland server #0: 1280x720@60
vulkan: 3981312 vs 3981312!
vulkan: 3981312 vs 3981312!
vulkan: 3981312 vs 3981312!
pipewire: renegotiating stream params (size: 1280x720)
(EE) failed to read Wayland events: Broken pipe
(EE) failed to read Wayland events: Broken pipe
obrienmd commented 9 months ago

If it helps, I see a similar issue to @rzippo with gamescope+steam big picture in a different implementation (HoloISO with latest updates as of 2023-12-04). Perhaps this can help narrow down to similarities between the two implementations of "super easy boot to Gamescope" :)

When I turn on the TV after it has been powered off, steam session restarts and I see the following in dmesg:

gamescope-xwm[3572]: segfault at dc ip 0000562a727a63a8 sp 00007f1b23ffe468 error 4 in gamescope[562a72792000+9c000] likely on CPU 7 (core 1, socket 0)

HoloISO must use a different gamescope config / launch params as I don't have a ~/.gamescope-stdout or a file named that anywhere in the user's home dir - I'll try to see if it sinks Gamescope stdout somewhere and report back.

CPU: Ryzen 5600 GPU: Radeon 7800 XT Kernel: 6.6.2-x64v2-xanmod1-1-edge

alkazar commented 7 months ago

Can anyone test again using the latest stable build of ChimeraOS 45?

rzippo commented 7 months ago

Can anyone test again using the latest stable build of ChimeraOS 45?

I run the same test on 45-1_ea2fd2f, still happens.