protonscr

Thread synchronization object is unusable on Fedora 26

steamopen Steam clientDistro Family: Fedora
ValveSoftware/steam-for-linux#5101 · opened 2017-07-26 by kisak-valve · updated 2019-07-18 · 15 comments · github
Kkisak-valve 2017-07-26 github

Your system information

  • Steam client version (build number or date): 2017-07-26
  • Distribution (e.g. Ubuntu): Fedora 26 (64 bit)
  • Opted into Steam client beta?: Yes
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

A change between the 2017-07-17 and 2017-07-25 steam beta client has caused my test box to crash after entering login details with the log message: threadtools.cpp (1343) : Assertion Failed: Thread synchronization object is unusable.

One of the CrashIDs: CrashID=bp-b4635712-f470-46f3-a88a-93e082170726

This system is using mesa/r600 17.1.5, which makes testing STEAM_RUNTIME_PREFER_HOST_LIBRARIES=0 steam a pain to test and removing all pinned libraries also has no effect.

I can revert back to the working steam stable client with rm ${HOME}/.local/share/Steam/package/beta.

My other test boxes do not appear to be affected.

Kkisak-valve maintainer 2017-07-28 github

The dbus_message_new_method_call() message is non-fatal and the ln -s ${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libdbus-1.so.3 ${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32/libdbus-1.so.3 workaround from #5099 gets the steam client to start, ~but there is a several minute stall after entering login credentials~. Edit: Stall was a local network issue.

NNTMan 2017-07-29 github

Thanks, workaround works.

Kkisak-valve maintainer 2017-07-29 github

Noted in #5107 by @OracleAndroid, STEAM_RUNTIME_PREFER_HOST_LIBRARIES=0 steam can be used without much hassle with the nvidia proprietary driver and that issue report has an attached pair of minidumps at crashassert.zip.

Ccwolfe007 2017-08-06 github

I am having this same issue on Ubuntu 16.04, trying to run X forwarding

Ssoerengrunewald 2017-09-01 github

With the runtime update from Aug.30, several feral games (xcom2, shadow of mordor) won't start anymore. Pinning the libdbus in 64 bit solved the issue for me.

Rrstrube 2017-09-01 github

@soerengrunewald I have the exact same problems with feral games after the runtime update from Aug. 28! Could you elaborate on how to pin libdbus in 64 bit?
I posted about this same issue here but I don't have as technical an understanding as you do. My solution was to use STEAM_RUNTIME_PREFER_HOST_LIBRARIES=0 steam to get around the problem.

Kkisak-valve maintainer 2017-09-01 github

Hello @rstrube, ln -s ${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/libdbus-1.so.3 ${HOME}/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_64/libdbus-1.so.3 should add that library to the 64 bit pinned libraries folder.

Rrstrube 2017-09-01 github

@kisak-valve thanks this solved my problem!

Before I had to start steam with STEAM_RUNTIME_PREFER_HOST_LIBRARIES=0 steam but after pinning this library I can start steam normally. I'm assuming that STEAM_RUNTIME_PREFER_HOST_LIBRARIES=0 will use only the steam runtime (which is a more extreme way of solving the problem), while pinning a specific library will force steam to use that specific library, but use your distro's libraries for everything else right?

I'm also assuming that adding a symbolic link into the pinned_libs_xxx folder is the preferred way of pinning libraries. In this case we happen to be pinning a library from the steam runtime, but we could theoretically pin libraries from other locations as well.

?ghost 2017-09-12 github

Solution from kisak-valve is working fine! Confirmed on Fedora 26.

Iikeydoherty 2017-10-09 github

Seeing this on Solus after upgrading stack to latest systemd.
Adding to this issue due to this comment: https://github.com/ValveSoftware/steam-for-linux/issues/5103#issuecomment-318641884

process 16057: arguments to dbus_message_new_method_call() were incorrect, assertion "path != NULL" failed in file dbus-message.c line 1367.
This is normally a bug in some application using the D-Bus library.

Steam exits immediately after.

Might I ask what string is expected to be passed - i.e. why the path would be NULL? I assume that some kind of internal detection in Steam is failing due to some environment changes, but knowing what its looking for would help greatly in trying to fix it.

Forcing it to segfault with DBUS_FATAL_WARNINGS=1 yields the following not very helpful stack trace:

Thread 1 "steam" received signal SIGABRT, Aborted.
0xf7fd6b22 in ?? () from /lib/ld-linux.so.2
(gdb) bt
#0  0xf7fd6b22 in  () at /lib/ld-linux.so.2
#1  0xf7a930c2 in raise () at /usr/lib32/libc.so.6
#2  0xf7a94a67 in abort () at /usr/lib32/libc.so.6
#3  0xf06bfeb7 in  () at /usr/lib32/libdbus-1.so.3
#4  0xf06b5fd9 in  () at /usr/lib32/libdbus-1.so.3
#5  0xf06a5b92 in dbus_message_new_method_call () at /usr/lib32/libdbus-1.so.3
#6  0xf1a4de78 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
#7  0xf1a4e681 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
#8  0xf1a4f6a3 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
#9  0xf1a4f3ec in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[#10](/issue/ValveSoftware/steam-for-linux/10) 0xf1a4f786 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[#11](/issue/ValveSoftware/steam-for-linux/11) 0xf1a4ea11 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[#12](/issue/ValveSoftware/steam-for-linux/12) 0xf1a42990 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[#13](/issue/ValveSoftware/steam-for-linux/13) 0xf1a492d4 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[#14](/issue/ValveSoftware/steam-for-linux/14) 0xf1a38642 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[#15](/issue/ValveSoftware/steam-for-linux/15) 0xf19ae8c9 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[#16](/issue/ValveSoftware/steam-for-linux/16) 0xf19bff3c in SDL_InitSubSystem ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[#17](/issue/ValveSoftware/steam-for-linux/17) 0xf2b97303 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/steamui.so
[#18](/issue/ValveSoftware/steam-for-linux/18) 0xf311b191 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/steamui.so
[#19](/issue/ValveSoftware/steam-for-linux/19) 0xf3132067 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/steamui.so
[#20](/issue/ValveSoftware/steam-for-linux/20) 0xf0123989 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/vgui2_s.so
[#21](/issue/ValveSoftware/steam-for-linux/21) 0xf0123d1f in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/vgui2_s.so
[#22](/issue/ValveSoftware/steam-for-linux/22) 0xf308a590 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/steamui.so
[#23](/issue/ValveSoftware/steam-for-linux/23) 0xf308fe71 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/steamui.so
[#24](/issue/ValveSoftware/steam-for-linux/24) 0xf30913a6 in  ()
    at /home/ufee1dead/.local/share/Steam/ubuntu12_32/steamui.so
[#25](/issue/ValveSoftware/steam-for-linux/25) 0x5658c760 in RunSteam(int, char**, bool) ()
[#26](/issue/ValveSoftware/steam-for-linux/26) 0x5658d69b in  ()
[#27](/issue/ValveSoftware/steam-for-linux/27) 0x56578b6c in  ()
[#28](/issue/ValveSoftware/steam-for-linux/28) 0xf7a7c406 in __libc_start_main () at /usr/lib32/libc.so.6
[#29](/issue/ValveSoftware/steam-for-linux/29) 0x5657c211 in _start ()
Iikeydoherty 2017-10-09 github

OK this is actually a regression with SDL.

unset XMODIFIERS

Then Steam will happily run

Iikeydoherty 2017-10-09 github

So the problem here is the uplifted SDL shipping with the Steam runtime incorrectly uses XMODIFIERS (which here is set to @im=ibus) and tries to incorrectly initialise SDL in after InitIME. Going to patch LSI to forcibly unset XMODIFIERS for now.

Relevant fix in LSI: https://github.com/solus-project/linux-steam-integration/commit/1a70578cb17d63245e91b054fde88f8672a36400

Kkisak-valve maintainer 2017-10-09 github

Hello @ikeydoherty, please open a separate issue report so that your issue can be tracked properly on this end.

Iikeydoherty 2017-10-09 github

Sure - was just following the original issue that was closed @kisak-valve that then said to come here. I'll open up a new one now. (It's the same issue as #5103.)

Ddanielantonionunez 2017-12-10 github

Solution from kisak-valve is working fine! Confirmed on Centos 7 Nvidia.

Launch options

Upstream links