protonscr

Random gldriverquery segfaults while playing

steamclosed AMD drivers3rd party gameDistro Family: Fedora
ValveSoftware/steam-for-linux#11250 · opened 2024-09-10 by Bloodsnake · updated 2024-09-17 · 7 comments · github
BBloodsnake 2024-09-10 github

Your system information

  • CPU: i5-13600K (No OC) (With the latest BIOS to mitigate intel instability)
  • GPU: RX 6750 XT (No OC) (Mesa 24.1.7)
  • RAM: 32GB
  • OS: Fedora 40 (KDE, Wayland) with the latest updates
  • Kernel: 6.10.7-200.fc40.x86_64
  • Steam client version (build number or date): 1725928931 (Latest version in the fedora repos)
  • Opted into Steam client beta?: [Yes/No] Yes, but the problem also happens in stable
  • Have you checked for system updates?: [Yes/No] Yes, the latest updates are installed as of writing this
  • Steam Logs: [generate by running this command in a terminal tar -zcvf ~/Desktop/steam-logs.tar.gz ~/.steam/steam/logs]
    steam-logs.tar.gz

Please describe your issue in as much detail as possible:

When I try to launch the native terraria version my entire PC freezes and only a hard reset lets me use it again. When looking into the kernel logs after the restart the kernel logs say this:

Sep 10 14:15:07 fedora kernel: show_signal_msg: 49 callbacks suppressed
Sep 10 14:15:07 fedora kernel: gldriverquery[3967]: segfault at fffffffffffff000 ip fffffffffffff000 sp 00007ffd3bd0b678 error 15 likely on CPU 19 (core 31, socket 0)
Sep 10 14:15:07 fedora kernel: Code: Unable to access opcode bytes at 0xffffffffffffefd6.
Sep 10 14:15:07 fedora kernel: gldriverquery[4154]: segfault at f7daa7d8 ip 00000000f7daa7d8 sp 00000000ffdd530c error 15 in libc.so.6[1f77d8,f7daa000+1000] likely on CPU 5 (core 8, socke>
Sep 10 14:15:07 fedora kernel: Code: 43 08 68 bb 35 08 18 13 45 08 a8 a4 30 08 58 ba 30 08 88 08 37 08 48 c3 2f 08 b8 e7 36 08 68 54 44 08 c8 a7 da f7 c8 a7 da f7 <d0> a7 da f7 d0 a7 da f>
Sep 10 14:15:28 fedora kernel: x86/split lock detection: #AC: CHTTPClientThre/4674 took a split_lock trap at address: 0xea8c61df
Sep 10 14:15:29 fedora kernel: x86/split lock detection: #AC: CHTTPClientThre/4698 took a split_lock trap at address: 0xea8c61df
Sep 10 14:15:29 fedora kernel: x86/split lock detection: #AC: CHTTPClientThre/4699 took a split_lock trap at address: 0xea8c61df

This does not happen when I start the windows version through proton, there I can start the game and play. The problem also occurs seemingly randomly in other games (mainly ffxiv but it also happened in DS1 once) and also the windows version of terraria after some time. I can only reproduce it reliably in the linux native terraria version when trying to start it, this is the only game I found so far where the crash happens almost instantly.

Steps for reproducing this issue:

  1. Start steam (Beta or Stable)
  2. Try starting terraria
  3. System freezes
  4. Reboot

Things I tried to fix the issue:

  • Update the BIOS
  • Reinstall fedora
  • Switch to steam beta
  • Install libSDL2-2.0.so.0
  • Install SDL2-static
BBloodsnake 2024-09-14 github

I tested out a few things now:

  • I installed steam through flatpak and tried to play terraria this way. The steam flatpak crashed when trying to start the game. I guess it is the same error but because of the flatpak isolation layer it didn't crash the entire system.
  • I installed endevouros and tried playing there. It works, I played the gamer for over an hour without any crash. I guess the issue is mesa on fedora (?). I know little about the driver situation.
TTTimo 2024-09-16 github

Your problem is more likely related to a driver issue than gldriverquery. gldriverquery would happen at Steam startup and be mostly inconsequential.

Please provide the output of Help -> Steam Runtime Diagnostics in a https://gist.github.com/.

BBloodsnake 2024-09-16 github

I have reinstalled fedora to get the info and check again if something changed. I tried to change as little as possible during the installation.
The only notable thing I did involving steam is changing a line in the .desktop file: PrefersNonDefaultGPU=false
Without this steam wouldn't start.
Aside from this I only updated the system, enabled rpmfusion and changed the display settings for my resolution and refresh rate.
I also uploaded the diagnostic info you requested: here

TTTimo 2024-09-16 github

Your driver setup looks fine. Terraria native looks like FNA+OpenGL. Have you tried setting Compatibility to 'Steam Linux Runtime 1.0 (scout)'?

Although if you have a driver related freeze that's probably not going to change anything.

I see Terraria has a bit of verbose to stdout/stderr when it starts, you can verify that it picks up the correct card (should be the RX 6750 XT I guess but maybe you having to remove PrefersNonDefaultGPU=false means that's actually broken and your integrated GPU is the one actually selected.

BBloodsnake 2024-09-17 github

Will try the other things you suggested tonight, thanks. The PrefersNonDefaultGPU=false is there because when I start steam via the .desktop file with krunner (or well anything aside from the console) after it loaded the user data I get a black box in the middle of the screen. This box then disappears and appears every few seconds. This happens until I exit steam via the small activity symbol in my bottom right.

This happened on fedora 40 and also in 41 beta. Only in the version from the official repos, not in the flatpak version.

Here are the logs after it happened and I killed it:
steam-logs.tar.gz

Regarding terraria maybe using my integrated GPU: Not sure about terraria (will test later) but other games definitely use my dedicated GPU otherwise they wouldn't run smooth.

BBloodsnake 2024-09-17 github

So after I updated to the fedora 41 beta nothing I did made terraria crash. I think the problem got fixed by a never kernel or driver version. Thank you for your help!

The above issue with steam not starting is still happening though. It doesn't happen with the flatpak version. Should I open another issue for the error specifically?

Kkisak-valve maintainer 2024-09-17 github

Hello @Bloodsnake, that issue is being tracked at #9383.

Nothing extracted yet.