For reference, the attached assert .dmps are SIGBUS in steam and the crash .dmps are DUMP_REQUESTED in crashhandler.so.
opensslconnection.cpp (2276) : Assertion Failed: COpenSSLConnection(c0xd9a5af20) made no progress: SSLv2/v3 write client hello B (0 in 218 out)
suggests problems with network/crypto/SSL?
Relink `/home/x/.local/share/Steam/ubuntu12_32/steam-runtime/usr/lib/i386-linux-gnu/libcurl-gnutls.so.4' with `/lib/librt.so.1' for IFUNC symbol `clock_gettime'
I wonder if that means the host has a problem with scout's libcurl-gnutls.so.4
We statically link curl into the Steam client so I'm not sure how that would come into a crash here though.
Can you post the output of the following:
~/.steam/steam/ubuntu12_32/steam-runtime/run.sh ~/.steam/steam/ubuntu12_32/steam-runtime/amd64/usr/bin/steam-runtime-system-info
(it's the same as doing Help > System Information in a working client)
And provide the content of ~/.steam/steam/logs
Sure.
https://gist.github.com/AngryPenguinPL/6facf6a9cf4c11afac0c984cd210aff8
and logs
appinfo_log.txt
bootstrap_log.txt
cef_log.previous.txt
cef_log.txt
cloud_log.txt
compat_log.txt
configstore_log.txt
connection_log.txt
content_log.txt
controller.txt
parental_log.txt
remote_connections.txt
shader_log.txt
workshop_log.txt
If I replace steam's libcurl-gnutls.so.4 with the system version, the problem remains the same (but the Relink warning goes away).
We've tracked the crash down to this modification in our util-linux package:
https://github.com/OpenMandrivaAssociation/util-linux/commit/d46f2e62066379160a8930733a0cd96a4cd734df#diff-07f6d29b369ee7e097c3cf9342ba52ceR335
Reverting to a version of (32-bit) libmount.so.1 that is built without cryptsetup support makes steam start up (and actually work correctly) once.
It starts crashing again if it is restarted, but rm -rf ~/.local/share/Steam "fixes" it again.
Given the various warnings about SSL in the crash (as well as the fact that libmount with cryptsetup uses OpenSSL), I think libmount.so.1 pulls in the system libcrypto.so.1.1, which in turn has symbol clashes with the version of libcrypto.so.1 in the steam runtime.
Chances are linking libmount statically into steam would fix this.
Given the analysis in the previous comment, we've rebuilt cryptsetup using a different crypto backend. This prevents libmount from pulling in openssl, and stops the symbol clashes. Steam now starts up and works (uncovering another probably unrelated issue, will open a new report for that).
I'll leave the report open though, given this may happen on other distributions that use cryptsetup with openssl as well.
Given the various warnings about SSL in the crash (as well as the fact that libmount with cryptsetup uses OpenSSL), I think libmount.so.1 pulls in the system libcrypto.so.1.1, which in turn has symbol clashes with the version of libcrypto.so.1 in the steam runtime.
There is steam-runtime/lib/i386-linux-gnu/libcrypto.so.1.0.0 in steamrt-scout, however the Steam client does not use it. It is statically linked against a custom OpenSSL build. Still, I think you are correct in that SSL symbols from the host are being injected and causing problems. We'll nibble on this internally to see what we can do, thanks!
@berolinux @TTimo Maybe we need to extend list of openssl hidden symbols ?
https://github.com/OpenMandrivaAssociation/openssl/blob/master/0002-Hide-a-symbol-from-Steam.patch
I think libmount.so.1 pulls in the system libcrypto.so.1.1
This looks like the same issue as #7223 in Debian testing/unstable and Ubuntu groovy, which both recently enabled the optional libcryptsetup dependency in libmount, which in turn depends on OpenSSL libcrypto. There are some ideas on that issue.
Chances are linking libmount statically into steam would fix this.
I doubt it. If this issue is the same as the one in Debian, then libmount is coming in via the dependency chain GTK -> GLib -> libmount, because the system copies of GLib and GTK are newer than the ones in the Steam Runtime. Having a statically linked copy of some random version of libmount would potentially even make matters worse, if it exports the same symbols as the system copy but is not perfectly compatible.
Using kernel backend as default crypto engine for cryptsetup resolves issue:
https://github.com/OpenMandrivaAssociation/cryptsetup/commit/96e9d05c7585a32ab7c902712fba283b780968ed
Changes made in Steam client beta >= Jul 20 should address this
Closing per the last comment.
Nothing extracted yet.
Your system information
Please describe your issue in as much detail as possible:
Steam client working fine few days ago, but we have recently noticed that a crash occurs during startup (just when login screen should appear). Crash appears on computers of different people with OpenMandriva (all recent version, Cooker, Rolling and stable 4.1).
We don't know if this was caused by one of the latest system updates or the latest Steam update.
A few days ago it worked, so something happened in the meantime.
I can't see anything from recent updates that would cause such a problem. Mainly Qt upgrade or Plasma rebuild, SDL rebuild, Glib2.0 upgrade was also. I've tried downgrade some packages, but the problem is still the same. I don't know what caused this. Maybe a system update or a steam update.
When I launch steam from console I see:
Here is full launch log:
https://gist.github.com/AngryPenguinPL/ff224d93bfe3c885fe615f7cd6dfb0f6
Also I uploaded dumps:
http://www.mediafire.com/file/aisrs2hh3o0vy82/crash_20200201201900_23.dmp/file
http://www.mediafire.com/file/rj8jjxbrhvs3qcf/assert_20200201201857_1.dmp/file
http://www.mediafire.com/file/zbydiynex565vxt/crash_20200201195339_23.dmp/file
http://www.mediafire.com/file/4q1xqt5h5q8ki83/assert_20200201195336_1.dmp/file
http://www.mediafire.com/file/ev6q005von60nsq/crash_20200201171359_23.dmp/file
Here is a list of all updated packages in last few days: https://gist.github.com/AngryPenguinPL/6ea924c4ee22feabc3c05b2f5ad27e1e
Also Im trying Steam on other Linux OS and works fine. Trying download also older ISO with OpenMandriva, created in 13 january and still Steam crashing. Worth to add, even If I install old ISO, then all needed packages is still downloading from repo in recent version. List is here: https://gist.github.com/AngryPenguinPL/31915cff125aae88500862f98fd93869
Worth to add, when run steam without runtime: STEAM_RUNTIME=0 steam
Steam launching and hang on this small window with "updating steam information".
PS. is any way to force steam update to older version? For example before 21 January?
Steps for reproducing this issue:
Issue confirmed also by @berolinux