ValveSoftware / Dota-2

Tracker for issues specific to Linux and Mac in the Reborn client. If you have a general issue or non-system-specific feature request please go to dev.dota2.com
472 stars 38 forks source link

Failing to launch on Linux (segfault) #2442

Open kamikazechaser opened 1 year ago

kamikazechaser commented 1 year ago

Your system information

Please describe your issue in as much detail as possible:

Launches for a first time, after that it fails to launch after I tried to change an account. Restarting doesn't help.

Steps for reproducing this issue:

  1. Launch dota2 for a 2nd time

Dmesg Logs

[  704.900728] dota2[5640]: segfault at 7f3074021000 ip 00007f30c4afc4b7 sp 00007fff045e05e8 error 4 in libc-2.31.so[7f30c49be000+159000] likely on CPU 6 (core 3, socket 0)
[  704.900761] Code: c7 80 00 00 00 48 81 fa 80 00 00 00 77 bc c5 fe 7f 29 c5 fe 7f 71 e0 c5 fe 7f 79 c0 c5 7e 7f 41 a0 c4 c1 7e 7f 23 c5 f8 77 c3 <c5> fe 6f 26 c5 fe 6f 6e 20 c5 fe 6f 76 40 c5 fe 6f 7e 60 c5 7e 6f

Dump

Attached

crash_20230831230155_2.dmp.tar.gz

kisak-valve commented 1 year ago

Hello @kamikazechaser, for reference, the attached minidump is a SIGSEGV in libc.so.6 coming from librendersystemvulkan.so.

Possible duplicate of #2400.

kamikazechaser commented 1 year ago

yes, behavior seems to be consistent. I have seen similar reports on the other issue repo:

^ and many more. Not sure if related.

easyktk commented 1 year ago

Game crashes after the start, when a notification("Access steam community while playing") Regardless of when it appears (during the intro video or after loading the menu). Crash during the appearance of this notification. Before the summer update everything worked fine

kamikazechaser commented 1 year ago

Additional logs (not sure if these are common):

/bin/sh\0-c\0/home/kamikaze/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=570 -- /home/kamikaze/.local/share/Steam/ubuntu12_32/steam-launch-wrapper -- '/home/kamikaze/.local/share/Steam/steamapps/common/SteamLinuxRuntime_sniper'/_v2-entry-point --verb=waitforexitandrun --  '/home/kamikaze/.local/share/Steam/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama -perfectworld -high -novid\0
chdir "/home/kamikaze/.local/share/Steam/steamapps/common/dota 2 beta"
ERROR: ld.so: object '/home/kamikaze/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/kamikaze/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/home/kamikaze/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/kamikaze/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/kamikaze/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

Also tried to use Steam Beta Client and other Compatibility Runtimes (Steam Linux Runtime/Sniper (Including previous_branch, beta), Proton) to no avail.

tfhavingfun commented 1 year ago

Moving my comment to this issue: https://github.com/ValveSoftware/Dota-2/issues/2285#issuecomment-1703729199. Have you guys find a fix yet? What else can I do to help? Thanks.

kamikazechaser commented 1 year ago

No luck on my end yet.

tfhavingfun commented 1 year ago

Should also mentiion that if I set compatibility tool to Proton Experimental, Dota 2 launches into its main menu, but crashes after a while.

tfhavingfun commented 1 year ago

It's resolved for me. What I did is just rm -rf ~/.local/share/Steam ~/.steam and run steam-runtime --reset (probably not necessary) and of course reinstall Dota2.

kamikazechaser commented 1 year ago

Glad it worked for you. I might try it out later. Not really an ideal solution though if the game has to be reinstalled. I suspect the issue is probably the runtime. From what I have gathered, dota2 runs in a container environment shipped with its own dependencies.

tfhavingfun commented 1 year ago

I suspect the issue is probably the runtime. From what I have gathered, dota2 runs in a container environment shipped with its own dependencies.

Yeah. My new install only brings steam linux runtime - sniper which is the newest version. Used to have other versions installed on my system and I suspect Steam got confused and used the wrong version for Dota2.

kisak-valve commented 1 year ago

I suspect Steam got confused and used the wrong version for Dota2.

From https://github.com/ValveSoftware/Dota-2/issues/2285#issuecomment-1703729199, https://gist.github.com/tfhavingfun/858f1a1d207c628330c5fdc66ffc5f39#file-gistfile1-txt-L39 is evidence that Steam was running Dota 2 with Steam Linux Runtime - Sniper before you nuked your Steam install. That's the current intended runtime configuration.

kamikazechaser commented 1 year ago

Reinstalling does fix it. But a far from ideal solution for those with bandwidth constraints.