protonscr

Segmentation fault at startup on Arch Linux adwaita-icon-theme-legacy-46.2-2 package

steamclosed Distro Family: Arch
ValveSoftware/steam-for-linux#11274 · opened 2024-09-18 by santosh · updated 2024-11-06 · 29 comments · github
Ssantosh 2024-09-18 github

Your system information

  • Steam client version (build number or date): 1.0.0.81-2
  • Distribution (e.g. Ubuntu): Arch
  • Desktop Environment etc: Wayland/Hyprland
  • Opted into Steam client beta?: No (best guess)
  • Have you checked for system updates?: Yes (yay -Syu)
  • Steam Logs: steam-logs.tar.gz
  • GPU: Nvidia RTX 4060Ti

Please describe your issue in as much detail as possible:

I had no problem until now with my setup. I was able to play games with no graphics problem regardless of NVIDIA GPUs having poor support on Wayland.

Now when I start steam, I see the following logs:

$ steam
steam.sh[3786]: Running Steam on arch rolling 64-bit
steam.sh[3786]: STEAM_RUNTIME is enabled automatically
setup.sh[3855]: Steam runtime environment up-to-date!
steam.sh[3786]: Steam client's requirements are satisfied
WARNING: setlocale('en_US.UTF-8') failed, using locale: 'C'. International characters may not work.
[2024-09-18 16:38:21] Startup - updater built Sep 17 2024 20:02:19
[2024-09-18 16:38:21] Startup - Steam Client launched with: '/home/santosh/.local/share/Steam/ubuntu12_32/steam' '-srt-logger-opened'
09/18 16:38:21 minidumps folder is set to /tmp/dumps
09/18 16:38:21 Init: Installing breakpad exception handler for appid(steam)/version(1726604483)/tid(3914)
Looks like steam didn't shutdown cleanly, scheduling immediate update check
[2024-09-18 16:38:21] Loading cached metrics from disk (/home/santosh/.local/share/Steam/package/steam_client_metrics.bin)
[2024-09-18 16:38:21] Using the following download hosts for Public, Realm steamglobal
[2024-09-18 16:38:21] 1. https://client-update.akamai.steamstatic.com, /, Realm 'steamglobal', weight was 1000, source = 'update_hosts_cached.vdf'
[2024-09-18 16:38:21] 2. https://cdn.cloudflare.steamstatic.com, /client/, Realm 'steamglobal', weight was 1, source = 'update_hosts_cached.vdf'
[2024-09-18 16:38:21] 3. https://client-update.steamstatic.com, /, Realm 'steamglobal', weight was 1, source = 'baked in'
[2024-09-18 16:38:21] Checking for update on startup
[2024-09-18 16:38:21] Checking for available updates...
[2024-09-18 16:38:21] Downloading manifest: https://client-update.akamai.steamstatic.com/steam_client_ubuntu12
[2024-09-18 16:38:21] Manifest download: send request
[2024-09-18 16:38:21] Manifest download: waiting for download to finish
[2024-09-18 16:38:21] Manifest download: finished
[2024-09-18 16:38:21] Download skipped: /steam_client_ubuntu12 version 1726604483, installed version 1726604483, existing pending version 0
[2024-09-18 16:38:21] Nothing to do
[2024-09-18 16:38:21] Verifying installation...
[2024-09-18 16:38:21] Performing checksum verification of executable files
[2024-09-18 16:38:22] Verification complete
UpdateUI: skip show logo
Steam logging initialized: directory: /home/santosh/.local/share/Steam/logs

crash_20240918163823_5.dmp[3924]: Uploading dump (out-of-process)
/tmp/dumps/crash_20240918163823_5.dmp
/home/santosh/.local/share/Steam/steam.sh: line 906:  3914 Segmentation fault      (core dumped) "$STEAMROOT/$STEAMEXEPATH" "$@"
santosh at titan in ~ 
$ crash_20240918163823_5.dmp[3924]: Finished uploading minidump (out-of-process): success = yes
crash_20240918163823_5.dmp[3924]: response: CrashID=bp-5caaffb2-4f6b-4842-b20c-d3d582240918
crash_20240918163823_5.dmp[3924]: file ''/tmp/dumps/crash_20240918163823_5.dmp'', upload yes: ''CrashID=bp-5caaffb2-4f6b-4842-b20c-d3d582240918''

Please refer to the next section to know how I got into this state.

Steps for reproducing this issue:

  1. I was playing a demo game and closed the game after a while. Kept steam open.
  2. I updated my system: yay -Syu. I was having issue with my vagrant installation, so I have pinned the ruby-rexml package to not update.
  3. I restarted that demo game without restarting steam.
  4. I saw blank screen instead of game splash scren.
  5. I killed (pkill steam) after waiting for 10-15 secs. This killed both, the game and the steam.
  6. When I start now, I see the log as seen above.

I have also tried uninstalling and then installing steam.

My best guess is that the update broke something.

Bbcorneglio 2024-09-18 github

Same here except with an AMD 7800xt GPU.
Installing steam-native-runtime from multilib solves the problem to start the steam client, but some games do not work notheless

Nnoodlejetski 2024-09-18 github

I'm getting the same segmentation fault, but it persist even after installing steam-native-runtime, both steam-runtime and steam-native get the segmentation fault as well when ran.

Ssantosh 2024-09-18 github

I am very much convinced about this being related to updates on NVIDIA graphics driver and wayland. There are more apps that are either not starting, or crashing after a few clicks. Among them are: every electron app, brave etc.

If it is really related to updates, here is a list of packages which were updated before the problem started: https://gist.github.com/santosh/9a461b2eb1c0cf4cb2f2585886477457

The package we are looking for could be the xorg-xwayland. After the issue arose, I tried reverting it to non -git version. I still see the same issue across all my apps.

Nnoodlejetski 2024-09-18 github

I am very much convinced about this being related to updates on NVIDIA graphics driver and wayland

I'm using an all-AMD laptop (with the RX 5500M GPU), so I doubt the Nvidia driver is the only factor here,

MMountainKing73 2024-09-18 github

I'm getting the same error after doing an update this morning. I would assume there was a library change that is causing this issue.

Ddurian 2024-09-18 github

I got it after updating curl and libcurl just now. (Arch linux, nvidia drivers).

Nnoodlejetski 2024-09-18 github

I got it after updating curl and libcurl just now. (Arch linux, nvidia drivers).

I only now got the curl update, and the issue had appeared a few hours ago.

Ssantosh 2024-09-18 github

I got it after updating curl and libcurl just now. (Arch linux, nvidia drivers).

Let us know if reverting these works? Updates for these dropped half an hour ago I guess. My issue first came around 1 hour ago.

Hhicder 2024-09-18 github

downgrading xorg-xwayland to 23.2.7-1 doesn't solve my problem of games hanging and not able to start

Hhicder 2024-09-18 github

downgrading curl doesn't work either (even though this new version of curl breaks flatpak, so I downgrade regardless)

Llaceflower 2024-09-18 github

Same issue here (crashing on start), been this way for roughly 5 hours.
I have not updated my curl/libcurl, but I did update before trying to run steam. Here are my last two updates (i'm not sure if i ran steam before or after I updated yesterday)

Running with --reset segfaults, too. My console-linux log looks exactly the same as the one in the OP.
Arch Linux, 5900X + RX5700XT desktop.

Jjessepritchett 2024-09-18 github

I had the same issue as above since this morning, after system upgrade. Poking around in /var/cache/pacman/pkg for packages updated today, I tried reverting adwaita-icon-theme-legacy-46.2-2 to adwaita-icon-theme-legacy-46.2-1, and it worked for me:

sudo pacman -U /var/cache/pacman/pkg/adwaita-icon-theme-legacy-46.2-1-any.pkg.tar.zst

YMMV

Edit: Arch Linux 6.10.10, Nvidia, XOrg

Llaceflower 2024-09-18 github

I had the same issue as above since this morning, after system upgrade. Poking around in /var/cache/pacman/pkg for packages updated today, I tried reverting adwaita-icon-theme-legacy-46.2-2 to adwaita-icon-theme-legacy-46.2-1, and it worked for me:

This worked for me. Very weird.

Hhicder 2024-09-18 github

Same! Reverting adwaita-icon-theme-legacy works!

Kkisak-valve maintainer 2024-09-18 github

Hello, this issue should also be mentioned to your distro's package mantainer(s) for that package.

Nnoodlejetski 2024-09-18 github

doesn't fix it on my end, still getting a segfault in the same line after downgrading adwaita-icon-theme-legacy.

steam.sh[2680]: STEAM_RUNTIME is enabled automatically
setup.sh[2749]: Steam runtime environment up-to-date!
steam.sh[2680]: Steam client's requirements are satisfied
/home/username/.local/share/Steam/steam.sh: line 906:  2809 Segmentation fault      "$STEAMROOT/$STEAMEXEPATH" "$@"
Mmoritz1000 2024-09-18 github

Update your Arch Mirror.
3 Minutes ago an update to adwaita-icon-theme-legacy was released.

Package (3)                      Old Version  New Version  Net Change  Download Size

extra/adwaita-icon-theme-legacy  46.2-2       46.2-3         0,00 MiB       2,17 MiB

Now my Steam starts again.

AAntiz96 2024-09-18 github
Ssmcv 2024-09-18 github

Fixed with adwaita-icon-theme-legacy 46.2-3

The change in this version was to remove circular inheritance from the icon theme (in 46.2-2, each of Adwaita and AdwaitaLegacy claimed to inherit from the other). Presumably some library that Steam is using (possibly GTK), or some part of Steam itself, doesn't cope gracefully with that, similar to the problem we saw with old versions of libXcursor in https://github.com/ValveSoftware/steam-runtime/issues/538.

Jjessepritchett 2024-09-18 github

I tested as well with adwaita-icon-theme-legacy-46.2-3: Steam launches again without issue.

FWIW, here is the gdb backtrace from my testing (with adwaita-icon-theme-legacy-46.2-2 installed):

Thread 1 "steam" received signal SIGSEGV, Segmentation fault.
0xf7c7f3c8 in __fstatat64_time64 () from /usr/lib32/libc.so.6
(gdb) backtrace
#0  0xf7c7f3c8 in __fstatat64_time64 () from /usr/lib32/libc.so.6
#1  0xf7c7f0f0 in __fstat64_time64 () from /usr/lib32/libc.so.6
#2  0xf7be24bf in _IO_file_doallocate () from /usr/lib32/libc.so.6
#3  0xf7bf2bf0 in _IO_doallocbuf () from /usr/lib32/libc.so.6
#4  0xf7bf04c3 in _IO_file_underflow () from /usr/lib32/libc.so.6
#5  0xf7bf2c9a in _IO_default_uflow () from /usr/lib32/libc.so.6
#6  0xf7be4315 in _IO_getline_info () from /usr/lib32/libc.so.6
#7  0xf7be4452 in _IO_getline () from /usr/lib32/libc.so.6
#8  0xf7be2fb8 in fgets () from /usr/lib32/libc.so.6
#9  0xf07a8f00 in ?? () from /mnt/dummy/Steam/ubuntu12_32/steam-runtime/usr/lib/i386-linux-gnu/libXcursor.so.1
...

NOTE: '0xf07a8f00 in ?? ... libXcursore.so.1' stack entries repeat for some ~100,000 lines, followed by

...
[#104364](/issue/ValveSoftware/steam-for-linux/104364) 0xf07aa1e5 in XcursorTryShapeBitmapCursor ()
   from /mnt/dummy/Steam/ubuntu12_32/steam-runtime/usr/lib/i386-linux-gnu/libXcursor.so.1
[#104365](/issue/ValveSoftware/steam-for-linux/104365) 0xf7e8f605 in XCreatePixmapCursor () from /usr/lib32/libX11.so.6
[#104366](/issue/ValveSoftware/steam-for-linux/104366) 0xea6eb0ae in ?? () from /mnt/dummy/Steam/ubuntu12_32/vgui2_s.so
[#104367](/issue/ValveSoftware/steam-for-linux/104367) 0xea6fb1ef in ?? () from /mnt/dummy/Steam/ubuntu12_32/vgui2_s.so
[#104368](/issue/ValveSoftware/steam-for-linux/104368) 0xef89208a in ?? () from /mnt/dummy/Steam/ubuntu12_32/steamui.so
[#104369](/issue/ValveSoftware/steam-for-linux/104369) 0xef295b7e in ?? () from /mnt/dummy/Steam/ubuntu12_32/steamui.so
[#104370](/issue/ValveSoftware/steam-for-linux/104370) 0xef3c669f in ?? () from /mnt/dummy/Steam/ubuntu12_32/steamui.so
[#104371](/issue/ValveSoftware/steam-for-linux/104371) 0x5659f65e in RunSteam(int, char**, bool) ()
[#104372](/issue/ValveSoftware/steam-for-linux/104372) 0x565a08e2 in ?? ()
[#104373](/issue/ValveSoftware/steam-for-linux/104373) 0x565891b0 in main ()

Edit: formatting

Ssmcv 2024-09-18 github

Thanks for the backtrace - I was initially unable to reproduce this myself, but now I can reproduce it by uninstalling lib32-libxcursor.

The correct solution to this is what the Arch maintainers have done: don't make two themes each claim to inherit from the other.

A workaround is to install a 32-bit libXcursor: lib32-libxcursor on Arch, libxcursor1:i386 on Debian/Ubuntu, and so on. If there is a libXcursor available at OS level, it is used in preference to the one bundled with Steam. Distro packagers can arrange for this to happen by giving their Steam package either a hard dependency (Arch depends, .deb Depends, etc.) or a soft dependency (Arch optdepends, .deb Recommends/Suggests, etc.) on the 32-bit libXcursor.

To make Steam more resilient against this failure mode, it looks like we may need to get the same change as in https://github.com/ValveSoftware/steam-runtime/issues/538 backported into the older libXcursor in the "scout" runtime.

[edit: It's lib32-libxcursor, not lib32-xcursor]

Jjessepritchett 2024-09-18 github

Thanks for the additional info!

If there is a libXcursor available at OS level, it is used in preference to the one bundled with Steam

Would this also be true for any library found in these dependencies?
https://archlinux.org/packages/multilib/x86_64/steam-native-runtime/

Also:

A workaround is to install a 32-bit libXcursor: lib32-xcursor on Arch

Arch users will find the package in pacman under the name lib32-libxcursor

Ssmcv 2024-09-18 github

Would this also be true for any library found in these dependencies? https://archlinux.org/packages/multilib/x86_64/steam-native-runtime/

Yes for nearly all of them. However, that package does two orthogonal things:

  • it pulls in newer OS-level equivalents of libraries that Steam bundles, which Steam will use in preference to its own (good);
  • and it also provides the "Steam Native Runtime" startup script, which bypasses intended Steam functionality to prevent it from loading its own libraries even in cases where they're functionally necessary (this sometimes breaks Steam and games, and Valve cannot support this scenario)

So we do not want to encourage use of the "native runtime", because the first half of what it does is positive, but the second half is unsupportable.

Arch users will find the package in pacman under the name lib32-libxcursor

Sorry, yes, lib32-libxcursor not lib32-xcursor. I edited my comment above.

Jjessepritchett 2024-09-18 github

I see; hence the numerous recommendations against using the "native runtime" as a catch-all solution.

So we do not want to encourage use of the "native runtime", because the first half of what it does is positive, but the second half is unsupportable.

As an alternative, it seems to me that one could spot install individual libraries from the dependency list to try to run down some of these issues. I plan to try this if I have similar issues in the future.

Thanks again, very helpful!

Ssantosh 2024-09-18 github

Yeah, it works. Other electron apps also started working after updating to adwaita-icon-theme-legacy-46.2-3.

The issue can be closed now.

Ssmcv 2024-09-18 github

it seems to me that one could spot install individual libraries from the dependency list to try to run down some of these issues

Yes, and there are several requests in https://gitlab.archlinux.org/archlinux/packaging/packages/steam/-/issues to add strong or weak dependencies to steam itself.

Ssmcv 2024-10-25 github

@santosh wrote:

The issue can be closed now.

I can't do this, but as the issue submitter, I believe you could; or @kisak-valve could.

To make Steam more resilient against this failure mode, it looks like we may need to get the same change as in ValveSoftware/steam-runtime#538 backported into the older libXcursor in the "scout" runtime.

It wasn't exactly the same fix as for ValveSoftware/steam-runtime#538, but we found a similar bugfix that needed to be backported. This change is pending and should be part of the next Steam client beta.

Ssmcv 2024-10-28 github

To make Steam more resilient against this failure mode, it looks like we may need to get the same change as in ValveSoftware/steam-runtime#538 backported into the older libXcursor in the "scout" runtime.

It wasn't exactly the same fix as for ValveSoftware/steam-runtime#538, but we found a similar bugfix that needed to be backported. This change is pending and should be part of the next Steam client beta.

This change was included in Steam beta 1729917543 (2024-10-26).

Ssmcv 2024-11-06 github

This change was included in Steam beta 1729917543 (2024-10-26).

... and also in yesterday's general-availability release, so this issue can certainly now be closed. (@kisak-valve?)