ValveSoftware / Source-1-Games

Source 1 based games such as TF2 and Counter-Strike: Source
647 stars 75 forks source link

Latest Steam update broke Left 4 Dead 2 Vulkan #4521

Closed StarterX4 closed 1 year ago

StarterX4 commented 1 year ago

Your system information

Please describe your issue in as much detail as possible:

Latest stable update broke Left 4 Dead 2 Vulkan (OpenGL works fine). It is a bug that was in Steam Beta, impacting mainly Proton with Vulkan, but somehow also L4D2 using Vulkan.

When L4D2 is started with Vulkan, it fails with error

SDL video target is 'x11'
SDL video target is 'x11'
Using shader api: shaderapivk
free(): invalid pointer
/opt/gry/steamapps/common/Left4Dead2/./hl2.sh: linia 72: 33947 Przerwane               ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"
Game process removed: AppID 550 "gamemoderun SDL_AUDIODRIVER=pulseaudio SDL_DYNAMIC_API=/usr/lib32/libSDL2-2.0.so.0 DRI_PRIME=0 LD_PRELOAD=/usr/lib32/libSDL2-2.0.so.0:/usr/lib32/libgcrypt.so.11:/home/starterx4/.steam/steam/ubuntu12_32/gameoverlayrenderer.so LC_ALL=pl_PL.UTF-8 LANG=pl_PL /kesz/Steam/steam/ubuntu12_32/reaper SteamLaunch AppId=550 -- /kesz/Steam/steam/ubuntu12_32/steam-launch-wrapper -- '/opt/gry/steamapps/common/Left4Dead2/./hl2.sh' -game left4dead2 -steam -novid -nojoy -high +exec autoexec.cfg -tickrate 128 -threads 12 +cl_forcepreload 1 +sv_consistency 0 -vulkan", ProcID 33934 
ThreadGetProcessExitCode: no such process 33947

After debugging it with GAME_DEBUGGER=gdb, it points to the libdxvk_d3d9.so library:

Thread 1 "hl2_linux" received signal SIGABRT, Aborted.
0xf7fc4509 in __kernel_vsyscall ()
(gdb) where
#0  0xf7fc4509 in __kernel_vsyscall ()
#1  0xf7a983d7 in pthread_kill () from /usr/lib32/libc.so.6
#2  0xf7a399c7 in raise () from /usr/lib32/libc.so.6
#3  0xf7a1e126 in abort () from /usr/lib32/libc.so.6
#4  0xf7a88d64 in ?? () from /usr/lib32/libc.so.6
#5  0xf7aa3bbf in ?? () from /usr/lib32/libc.so.6
#6  0xf7aa5c0f in ?? () from /usr/lib32/libc.so.6
#7  0xf7aa8506 in free () from /usr/lib32/libc.so.6
#8  0xe75d7078 in operator delete(void*) () from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#9  0xe75d7108 in operator delete[](void*) () from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#10 0xe75dc2df in std::locale::_Impl::_M_install_facet(std::locale::id const*, std::locale::facet const*) ()
   from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#11 0xe75dc710 in std::locale::_Impl::_Impl(unsigned int) () from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#12 0xe75dd53e in std::locale::_S_initialize_once() () from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#13 0xf7a9b6eb in ?? () from /usr/lib32/libc.so.6
#14 0xe75dd59d in std::locale::_S_initialize() () from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#15 0xe75dd5f4 in std::locale::locale() () from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#16 0xe75da2b5 in std::ios_base::Init::Init() () from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#17 0xe74bb0d2 in ?? () from /opt/gry/steamapps/common/Left4Dead2/bin/libdxvk_d3d9.so
#18 0xf7fcaf9b in ?? () from /lib/ld-linux.so.2
#19 0xf7fcb089 in ?? () from /lib/ld-linux.so.2
#20 0xf7fd1d2b in ?? () from /lib/ld-linux.so.2
#21 0xf7b96724 in _dl_catch_exception () from /usr/lib32/libc.so.6
#22 0xf7fd1dda in ?? () from /lib/ld-linux.so.2
#23 0xf7b966c9 in _dl_catch_exception () from /usr/lib32/libc.so.6
#24 0xf7fd2153 in ?? () from /lib/ld-linux.so.2
#25 0xf7a90ffc in ?? () from /usr/lib32/libc.so.6
#26 0xf7b966c9 in _dl_catch_exception () from /usr/lib32/libc.so.6
#27 0xf7b96784 in _dl_catch_error () from /usr/lib32/libc.so.6
#28 0xf7a90a27 in ?? () from /usr/lib32/libc.so.6
#29 0xf7a910c8 in dlopen () from /usr/lib32/libc.so.6
#30 0xe965906e in ?? () from /opt/gry/steamapps/common/Left4Dead2/bin/materialsystem.so
#31 0xe9659164 in ?? () from /opt/gry/steamapps/common/Left4Dead2/bin/materialsystem.so
#32 0xe96593c5 in ?? () from /opt/gry/steamapps/common/Left4Dead2/bin/materialsystem.so
--Type <RET> for more, q to quit, c to continue without paging--c
#33 0xe95fdbaa in ?? () from /opt/gry/steamapps/common/Left4Dead2/bin/materialsystem.so
#34 0xe95fdc59 in ?? () from /opt/gry/steamapps/common/Left4Dead2/bin/materialsystem.so
#35 0xf613b5c0 in ?? () from bin/launcher.so
#36 0xf61568ee in ?? () from bin/launcher.so
#37 0xf6156a89 in ?? () from bin/launcher.so
#38 0xf6156aa8 in ?? () from bin/launcher.so
#39 0xf613ca7e in LauncherMain () from bin/launcher.so
#40 0x080484c4 in main ()
(gdb) q

This issue started in Beta, but now it passed to the today's stable update.

Steps for reproducing this issue:

  1. Pass -vulkan to L4D2 launch options
  2. Try to play it
StarterX4 commented 1 year ago

L4D2 Nov 19 2022 update seems to have fixed the issue for me, and L4D2 is now running normally.