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
471 stars 38 forks source link

2021-12-15 game update does not work on pre-AVX CPUs on Linux #2003

Closed AngryPenguinPL closed 2 years ago

AngryPenguinPL commented 2 years ago

Your system information

Please describe your issue in as much detail as possible:

After today (2021.12.15) Dota2 update i can't run it on Linux anymore. When I click on the start button on Steam, nothing happens.

After starting Steam on my console and trying to start the game, I get one error - Illegal instruction (core dumped).

GameAction [AppID 570, ActionID 1] : LaunchApp changed task to UpdatingAppInfo with ""
GameAction [AppID 570, ActionID 1] : LaunchApp changed task to ProcessingInstallScript with ""
GameAction [AppID 570, ActionID 1] : LaunchApp changed task to SynchronizingCloud with ""
GameAction [AppID 570, ActionID 1] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
GameAction [AppID 570, ActionID 1] : LaunchApp changed task to CreatingProcess with ""
GameAction [AppID 570, ActionID 1] : LaunchApp waiting for user response to CreatingProcess ""
GameAction [AppID 570, ActionID 1] : LaunchApp continues with user response "CreatingProcess"
Opted-in Controller Mask for AppId 570: 0
/bin/sh\0-c\0/home/x/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/steam/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama\0
Game process added : AppID 570 "/home/x/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/steam/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama", ProcID 18129, IP 0.0.0.0:0
chdir /steam/steamapps/common/dota 2 beta
ERROR: ld.so: object '/home/x/.steam/bin32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
GameAction [AppID 570, ActionID 1] : LaunchApp changed task to WaitingGameWindow with ""
GameAction [AppID 570, ActionID 1] : LaunchApp changed task to Completed with ""
ERROR: ld.so: object '/home/x/.steam/bin32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
ERROR: ld.so: object '/home/x/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/home/x/.steam/bin32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
pid 18131 != 18130, skipping destruction (fork without exec?)
ERROR: ld.so: object '/home/x/.steam/bin32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
ERROR: ld.so: object '/home/x/.steam/bin32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
/steam/steamapps/common/dota 2 beta/game/dota.sh: line 109: 18133 Illegal instruction     (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"
Installing breakpad exception handler for appid(steam)/version(1637624439)
Game process removed: AppID 570 "/home/x/.local/share/Steam/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/steam/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama", ProcID 18129 
Uploaded AppInterfaceStats to Steam
No cached sticky mapping in ActivateActionSet.

As you can see here is one Illegal instruction (core dumped).

Quick info:

Steps for reproducing this issue:

  1. Install dota on Linux
  2. Click play on Steam
  3. Cry

EDIT: Looks like not only I see this issue. More people is affected https://www.reddit.com/r/linux_gaming/comments/rgs9sa/dota_2/

kisak-valve commented 2 years ago

Dota is not starting after the continuum conundrum update "Illegal instruction (core dumped)\

Issue transferred from https://github.com/ValveSoftware/Dota-2/issues/2004. @aghoz-i posted on 2021-12-15T14:04:17:

Your system information

Please describe your issue in as much detail as possible:

Dota 2 is not starting after the latest update (aghanim's labyrinth the continuum conundrum). Running ./dota.sh on terminal gives this output:

./dota.sh: line 109: 30642 Illegal instruction     (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"

Dmesg gives this output:

[10232.832637] traps: dota2[30435] trap invalid opcode ip:7f9ff39da490 sp:7ffd2ffdb900 error:0 in libtier0.so[7f9ff38ec000+227000]
[10748.960226] traps: dota2[30538] trap invalid opcode ip:7fbae1fb8490 sp:7ffed75e6440 error:0 in libtier0.so[7fbae1eca000+227000]
[10929.990243] traps: dota2[30642] trap invalid opcode ip:7fccba528490 sp:7ffc2b2a9d40 error:0 in libtier0.so[7fccba43a000+227000]

Tried deleting libtier0.so, and then verifying the game files to download it again (i thought maybe it was corrupted), but the problem still there. I usually use -gl launch options, but i also tried -vulkan launch option to see if this fix the problem, and unfortunately it didn't.

Steps for reproducing this issue:

  1. Starts Dota 2 by pressing "Play" button on Steam client, or by running ./dota.sh on terminal.
osnivac commented 2 years ago

Had the same issue on Manjaro Linux. I thought it's something due to OS update. Made a fresh install of Pop!_OS, downloaded steam and dota2, but unfortunately the problem is still there.

OS: Pop!_OS 21.04 x86_64 Kernel: 5.15.5-76051505-generic CPU: Intel Pentium G4560 (4) @ 3.500G GPU: NVIDIA GeForce GTX 1050 Ti NVIDIA-SMI 470.86 Driver Version: 470.86 CUDA Version: 11.4

darkbaboon commented 2 years ago

Same issue here on Manjaro/Archlinux. I renamed libtier0.so in libtier0.so.bak and copy libtier0.so from Dota Underlords game files. No more illegal instruction, but it didn't fix the issue. FATAL: /run/media/xxx/games/Steam/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/libengine2.so not loaded dlerror(): /run/media/xxx/games/Steam/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/libengine2.so: undefined symbol: g_BitBuf_BitWriteMasks So, the attempt was not successful...

OS: Manjaro 21.2rc Qonos Kernel: x86_64 Linux 5.10.83-1-MANJARO Resolution: 1600x900 DE: Xfce4 WM: Compiz CPU: Intel Xeon W3565 @ 8x 3.299GHz GPU: AMD Radeon HD 7900 Series (TAHITI, DRM 3.40.0, 5.10.83-1-MANJARO, LLVM 13.0.0)

AngryPenguinPL commented 2 years ago

Likely to be wrong, but it looks to me to be a processor dependent matter. It seems to me that the library was compiled with an instruction not available on older cpu, so on these processors we see an illegal instruction message when we try to run it.

I renamed libtier0.so in libtier0.so.bak and copy libtier0.so from Dota Underlords game files.
No more illegal instruction, but it didn't fix the issue.

and because you have compiled the library compiled with legacy-compatible instructions, the Illegal Instruction message is already popping up for them. Nevertheless, the game will not start because the library itself was compiled with other components, so you see the undefined symbol. Of course, this is just a theory.

powerjungle commented 2 years ago

Same issue for me.

OS: openSUSE Tumbleweed x86_64 Kernel: Linux 5.15.7-1-default CPU: Intel Xeon X5650 GPU: NVIDIA GeForce GTX 760 DE: Xfce 4.16 NVIDIA Driver Version: 470.86

theflockers commented 2 years ago

Also here.

Distributor ID: Ubuntu
Description:    Ubuntu 20.04.3 LTS
Release:    20.04
Codename:   focal

Linux nietzsche 5.4.0-91-lowlatency #102-Ubuntu SMP PREEMPT Fri Nov 5 18:18:39 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Radeon RX 570

I noticed that it only happened using newer driver - for me it broke only after installing new AMDGPU driver (21.40)

pwiecha commented 2 years ago

Also fails on 10y old GPU w/ radeon driver and OpenGL

Ubuntu 20.04.3, kernel 5.11.0-43,
Intel i5-750, Radeon HD 7870 GHz
GLIBC 2.31-0ubuntu9.2

Dota sh gives the same: ./dota.sh: line 109: 38564 Illegal instruction (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"

rumassa86 commented 2 years ago

Same here...

~/.steam/steam/steamapps/common/dota 2 beta/game $./dota.sh 
./dota.sh: line 109: 33406 Illegal instruction (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"
tiagofr commented 2 years ago

Same here, using debian 10 kernel 5.10.0-9-amd64 nvidia 750gtx with driver 460.91.03 ~/.steam/steam/steamapps/common/dota 2 beta/game $./dota.sh ./dota.sh: line 109: 33406 Illegal instruction (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"

Dushy007 commented 2 years ago

Facing the same issue. Initially, I was on manjaro and the game failed to load. So, I switched to ubuntu and facing the same issue - Game does not open which I click on "PLAY".

Here is the error I am getting when I run from the terminal: ./dota.sh: line 109: 4494 Illegal instruction (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"

System Information: NAME="Ubuntu" VERSION="20.04.3 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04.3 LTS" VERSION_ID="20.04" VERSION_CODENAME=focal UBUNTU_CODENAME=focal GPU: NVIDIA GeForce GTX 1050Ti NVIDIA Driver Version: 470.86 CPU: Intel Pentium G4560

sonofeuropa commented 2 years ago

Same issue on

OS: Pop_OS! 21.10 (64 bit) Kernel: 5.15.5-76051505-generic CPU: Intel Pentium G3258 GPU: NVIDIA GeForce GTX 960 NVIDIA Driver Version: 470.86

Lorkes commented 2 years ago

Same issue here.

OS: Arch Linux x86_64 Kernel: 5.15.8-arch1-1 CPU: Intel Pentium N3710 GPU: NVIDIA GeForce 920MX NVIDIA Driver version: 495.46

dabealu commented 2 years ago

+1

Error

dota.sh: line 109: 38371 Illegal instruction     (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"

Specs

OS: Arch x86_64
Kernel: 5.15.7
CPU: Intel Core i5 750
GPU: AMD R9 270
DE: Wayland/Sway
kisak-valve commented 2 years ago

It should be noted that applications that die with an illegal instruction would be involving a CPU instruction and the video card used is usually unrelated. From the hardware described so far, it sounds like an unguarded instruction from the AVX instruction set has slipped in.

cfe-dev commented 2 years ago

i get the same error since the update, and i also have an older CPU.

from syslog/dmesg: traps: dota2[6166] trap invalid opcode ip:7f2059f97490 sp:7ffd48700400 error:0 in libtier0.so[7f2059ea9000+227000]

my specs: OS: Ubuntu 20.04.3 LTS Kernel: 5.4.0-91-generic CPU: Intel Core i7-920 GPU: AMD RX480

tiagofr commented 2 years ago

After running steam client and all updates so far running on console i got this:

ExecuteSteamURL: "steam://rungameid/570" GameAction [AppID 570, ActionID 1] : LaunchApp changed task to UpdatingAppInfo with "" GameAction [AppID 570, ActionID 1] : LaunchApp changed task to ProcessingInstallScript with "" GameAction [AppID 570, ActionID 1] : LaunchApp changed task to SynchronizingCloud with "" GameAction [AppID 570, ActionID 1] : LaunchApp changed task to SynchronizingControllerConfig with "" Opted-in Controller Mask Forced Off GameAction [AppID 570, ActionID 1] : LaunchApp changed task to SiteLicenseSeatCheckout with "" GameAction [AppID 570, ActionID 1] : LaunchApp changed task to CreatingProcess with "" GameAction [AppID 570, ActionID 1] : LaunchApp waiting for user response to CreatingProcess "" GameAction [AppID 570, ActionID 1] : LaunchApp continues with user response "CreatingProcess" /bin/sh\0-c\0/home/user/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/home/user/.steam/debian-installation/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama -vulkan\0 Game process added : AppID 570 "/home/user/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/home/user/.steam/debian-installation/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama -vulkan", ProcID 13103, IP 0.0.0.0:0 chdir /home/user/.steam/debian-installation/steamapps/common/dota 2 beta ERROR: ld.so: object '/home/user/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. GameAction [AppID 570, ActionID 1] : LaunchApp changed task to WaitingGameWindow with "" ERROR: ld.so: object '/home/user/.steam/debian-installation/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored. GameAction [AppID 570, ActionID 1] : LaunchApp changed task to Completed with "" ERROR: ld.so: object '/home/user/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. pid 13106 != 13105, skipping destruction (fork without exec?) ERROR: ld.so: object '/home/user/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. ERROR: ld.so: object '/home/user/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. /home/user/.steam/debian-installation/steamapps/common/dota 2 beta/game/dota.sh: line 109: 13110 Illegal instruction ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@" Game process removed: AppID 570 "/home/user/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/home/user/.steam/debian-installation/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama -vulkan", ProcID 13103 Uploaded AppInterfaceStats to Steam No cached sticky mapping in ActivateActionSet.No cached sticky mapping in ActivateActionSet.No cached sticky mapping in ActivateActionSet.

MacFreak84 commented 2 years ago

I have this same issue. I am running Ubuntu 21.10 64bit with GNOME 40.4.0. I have an AMD Phenom II x4 965 processor with an NVIDIA GeForce GT 730 graphics card. Until the update dropped everything was fine. I was playing dota then the update dropped and after that it would not open. When i run steam from the Terminal and try to launch dota 2 this is the output:

GameAction [AppID 570, ActionID 2] : LaunchApp changed task to UpdatingAppInfo with "" GameAction [AppID 570, ActionID 2] : LaunchApp changed task to ProcessingInstallScript with "" GameAction [AppID 570, ActionID 2] : LaunchApp changed task to SynchronizingCloud with "" GameAction [AppID 570, ActionID 2] : LaunchApp changed task to SiteLicenseSeatCheckout with "" GameAction [AppID 570, ActionID 2] : LaunchApp changed task to CreatingProcess with "" GameAction [AppID 570, ActionID 2] : LaunchApp waiting for user response to CreatingProcess "" GameAction [AppID 570, ActionID 2] : LaunchApp continues with user response "CreatingProcess" /bin/sh\0-c\0/home/eliot/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/home/eliot/.steam/debian-installation/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama\0 Game process added : AppID 570 "/home/eliot/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/home/eliot/.steam/debian-installation/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama", ProcID 4560, IP 0.0.0.0:0 chdir /home/eliot/.steam/debian-installation/steamapps/common/dota 2 beta ERROR: ld.so: object '/home/eliot/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. GameAction [AppID 570, ActionID 2] : LaunchApp changed task to WaitingGameWindow with "" ERROR: ld.so: object '/home/eliot/.steam/debian-installation/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored. ERROR: ld.so: object '/home/eliot/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. GameAction [AppID 570, ActionID 2] : LaunchApp changed task to Completed with "" pid 4563 != 4562, skipping destruction (fork without exec?) ERROR: ld.so: object '/home/eliot/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. ERROR: ld.so: object '/home/eliot/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored. /home/eliot/.steam/debian-installation/steamapps/common/dota 2 beta/game/dota.sh: line 109: 4565 Illegal instruction (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@" Game process removed: AppID 570 "/home/eliot/.steam/debian-installation/ubuntu12_32/reaper SteamLaunch AppId=570 -- '/home/eliot/.steam/debian-installation/steamapps/common/dota 2 beta/game/dota.sh' +engine_experimental_drop_frame_ticks 1 +@panorama_min_comp_layer_dimension 0 -prewarm_panorama", ProcID 4560 Uploaded AppInterfaceStats to Steam No cached sticky mapping in ActivateActionSet.

I believe the relevant line is this: ERROR: ld.so: object '/home/eliot/.steam/debian-installation/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

It seems that gameoverlayrenderer.so is not loading correctly - im assuming because of some missing dependency but IDK. It worked before the update perfectly everytime everyday.

I have tried deleting and reinstalling dota2 and steam, validating the data files of the program through the steam client (which said everything is ok), mucking about with my display drivers (older versions, newer versions) and nothing seems to help. I tried reinstalling the mesa-utils. My OS is fully updated to the newest of everything.

Could you assist me with restoring dota2 to its former glory? (where at least the app would open....)

Thanks, Eliot

Strykar commented 2 years ago

Same issue, Arch linux x64, GTX 950, latest drivers:

[strykar@i5 game]$ ./dota.sh 
./dota.sh: line 109: 210150 Illegal instruction     (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"
[strykar@i5 game]$ bash -x ./dota.sh 
++ cd .
++ echo /home/strykar/.local/share/Steam/steamapps/common/dota 2 beta/game
+ GAMEROOT='/home/strykar/.local/share/Steam/steamapps/common/dota 2 beta/game'
++ uname
+ UNAME=Linux
+ '[' Linux == Darwin ']'
+ '[' Linux == Linux ']'
+ export 'LD_LIBRARY_PATH=/home/strykar/.local/share/Steam/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64:'
+ LD_LIBRARY_PATH='/home/strykar/.local/share/Steam/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64:'
+ USE_STEAM_RUNTIME=1
+ '[' -z ']'
+ '[' Linux == Darwin ']'
+ '[' Linux == Linux ']'
+ GAMEEXE=bin/linuxsteamrt64/dota2
+ ulimit -n 2048
+ ulimit -Ss 1024
+ export __GL_THREADED_OPTIMIZATIONS=1
+ __GL_THREADED_OPTIMIZATIONS=1
+ export multithread_glsl_compiler=1
+ multithread_glsl_compiler=1
+ cd '/home/strykar/.local/share/Steam/steamapps/common/dota 2 beta/game'
+ '[' Linux == Linux ']'
+ export ENABLE_PATHMATCH=1
+ ENABLE_PATHMATCH=1
+ '[' '' '!=' '' ']'
+ '[' '' = 0 ']'
+ '[' 1 = 1 ']'
+ STEAM_RUNTIME_PREFIX=/valve/steam-runtime/bin/run.sh
+ '[' '!' -f /valve/steam-runtime/bin/run.sh ']'
+ STEAM_RUNTIME_PREFIX=
+ '[' '' '!=' '' ']'
+ STATUS=42
+ '[' 42 -eq 42 ']'
+ '[' '' == gdb ']'
+ '[' '' == cgdb ']'
+ '[' '' == lldb ']'
+ '/home/strykar/.local/share/Steam/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/dota2'
./dota.sh: line 109: 210170 Illegal instruction     (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"
+ STATUS=132
+ '[' 132 -eq 42 ']'
+ exit 132
[strykar@i5 game]$

https://gist.github.com/Strykar/2137f015dc709d040aebf69d5bb68ee8

Strykar commented 2 years ago

It should be noted that applications that die with an illegal instruction would be involving a CPU instruction and the video card used is usually unrelated. From the hardware described so far, it sounds like an unguarded instruction from the AVX instruction set has slipped in.

How may we help troubleshoot this?

MikeEA0 commented 2 years ago

Same issue here, Everything worked fine before updating today.

Using Ubuntu 20.04.3 LTS and Intel(R) Core(TM) i5 CPU 750 (Lynnfield, released end of 2009)

Running dota via gdb

env GAME_DEBUGGER="gdb" ./dota.sh`

gives

Program received signal SIGILL, Illegal instruction. 0x00007f55af485490 in ?? () from /home/xxx/.steam/debian-installation/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/libtier0.so Argument list to give program being debugged when it is started is "".

Backtrace:

(gdb) backtrace

0 0x00007f55af485490 in ?? () from /home/xxx/.steam/debian-installation/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/libtier0.so

1 0x0000000000001d2f in ?? ()

2 0x000000001a3ff128 in ?? ()

3 0x00007fff74766c20 in ?? ()

4 0x00007f55af486807 in Plat_FloatTime ()

from /home/xxx/.steam/debian-installation/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/libtier0.so Backtrace stopped: frame did not save the PC

The assembly code at PC:

*0x7f55af485490 vxorpd %xmm0,%xmm0,%xmm0 0x7f55af485494 vcvtsi2sd %rax,%xmm0,%xmm0 0x7f55af485499 vmovsd %xmm0,0x36bb47(%rip) # 0x7f55af7f0fe8 0x7f55af4854a1 mov %rdx,0x36bb38(%rip) # 0x7f55af7f0fe0

Opcode vxorpd is an AVX instruction! AFAIK, Intel Lynnfield processors do not support AVX instruction set.

SDE (Intel® Software Development Emulator) should be able to translate AVX intructions on the fly during runtime, so anyone who is desperate/curious and has time to investigate may want to give it a try and run DOTA with SDE as a workaround...

Otherwise, it looks like we just have to wait for a new update that is hopefully coming the other day?

Strykar commented 2 years ago

Opcode vxorpd is an AVX instruction! AFAIK, Intel Lynnfield processors do not support AVX instruction set.

Bingo, Lynnfield CPU here, this confirms @kisak-valve suspicion.

Lorkes commented 2 years ago

Opcode vxorpd is an AVX instruction! AFAIK, Intel Lynnfield processors do not support AVX instruction set.

Bingo, Lynnfield CPU here, this confirms @kisak-valve suspicion.

Looks like the same applies to Braswell CPUs (mine).

ArBe18 commented 2 years ago

Opcode vxorpd is an AVX instruction! AFAIK, Intel Lynnfield processors do not support AVX instruction set.

Bingo, Lynnfield CPU here, this confirms @kisak-valve suspicion.

AVX problem, but is not Lynnfield CPUs problem, because first message issue AMD CPU

Strykar commented 2 years ago

AVX problem, but is not Lynnfield CPUs problem, because first message issue AMD CPU

Nobody suggested that, read https://github.com/ValveSoftware/Dota-2/issues/2003#issuecomment-995868658

MikeEA0 commented 2 years ago

renamed libtier0.so in libtier0.so.bak and copy libtier0.so from Dota Underlords game files. No more illegal instruction, but it didn't fix the issue. FATAL: /run/media/baboon/games/Steam/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/libengine2.so not loaded dlerror(): /run/media/baboon/games/Steam/steamapps/common/dota 2 beta/game/bin/linuxsteamrt64/libengine2.so: undefined symbol: g_BitBuf_BitWriteMasks So, the attempt was not successful...

Yes, that's because the version of libtier0.so that is bundled with DOTA exports the symbol (function) g_BitBuf_BitWriteMasks. The one you copied seems to be older and hence does not contain it.

I wonder whether libtier0.so is part of the steamworks SDK? If so, one may be able to download the version before Dec. 15th and copy all corresponding libs (not just libtier0.so) manually into the DOTA folder (linuxsteamrt64/).

But obviously, there is no guarantee that this would work, since the newest version of DOTA may require some features only available in the latest versions of those libs.

MaxLuong commented 2 years ago

Same here.

System info: gist

Quick info:

Verified integrity. Tried Vulkan and OpenGL. Tried Proton and Steam Linux Runtime. Reinstalled DOTA. Reinstalled Steam.

Seems that it might be the older CPU that's the issue.

tiagofr commented 2 years ago

Just to test i installed in the same machine a windows10 and dota2 runs in it without any trouble.

FoeT commented 2 years ago

Same here. When can we expect a fix?

fry- commented 2 years ago

System Info: gist

Short system Info:

Same issue, tried those launch options separately: -safe_mode, -gl, -vulkan

Lehtikaali commented 2 years ago

Have had this problem for 2 days now too.

From dmesg [ 1648.750826] traps: dota2[8177] trap invalid opcode ip:7fce355bb490 sp:7ffcbbbe6b60 error:0 in libtier0.so[7fce354cd000+227000]

theflockers commented 2 years ago

Can't play it using Proton as well :-1:. Should we expect playing it by the weekend?

MacFreak84 commented 2 years ago

Hopefully the fix is not "We no longer support older CPUs on Linux".....

Strykar commented 2 years ago

Hopefully the fix is not "We no longer support older CPUs on Linux".....

That would be astounding to do for Dota. @kisak-valve Any update on a fix?

kisak-valve commented 2 years ago

Hello @Strykar, friendly note that I'm a moderator for Valve's issue trackers on Github and not a Valve developer myself. We'll need to hear from a Dota 2 dev for any pre-release information.

theflockers commented 2 years ago

Hopefully the fix is not "We no longer support older CPUs on Linux".....

To be honest, I would not mind if the game could run on Proton... but it can't. Good that Deck is not available to users still.

theflockers commented 2 years ago

Also something I tested over and over to make sure I am not saying bullshit: I removed the AMD official driver and now I can play with the dist one. Not sure it will work for NVidia users, but for Radeon it worked. Of course, not the same performance...

Recalling my specs for reference:

CPU:  AMD Ryzen 7 2700X Eight-Core Processor
GPU:  Radeon RX 470/480/570/570X/580/580X/590
Dist:   Ubuntu 20.04.3 LTS
Linux: 5.4.0-91-lowlatency

Driver removed: amdgpu-pro-20.40-1147286-ubuntu-20.04.tar.xz

AngryPenguinPL commented 2 years ago

Also something I tested over and over to make sure I am not saying bullshit: I removed the AMD official driver and now I can play with the dist one. Not sure it will work for NVidia users, but for Radeon it worked. Of course, not the same performance...

Recalling my specs for reference:

CPU:  AMD Ryzen 7 2700X Eight-Core Processor
GPU:  Radeon RX 470/480/570/570X/580/580X/590
Dist: Ubuntu 20.04.3 LTS
Linux: 5.4.0-91-lowlatency

Driver removed: amdgpu-pro-20.40-1147286-ubuntu-20.04.tar.xz

You are talking about a completely different problem. Your problem was with the proprietary AMDGPU-PRO drivers.

Our problem is with older CPUs that don't support AVX instructions. You have Ryzen to run it. Other problem.

Strykar commented 2 years ago

Hello @Strykar, friendly note that I'm a moderator for Valve's issue trackers on Github and not a Valve developer myself. We'll need to hear from a Dota 2 dev for any pre-release information.

@kisak-valve Thanks for clearing that up, I've seen you around for years and assumed wrong. When do you feel we might get an update from the devs, it's been a few days now?

theflockers commented 2 years ago

You are talking about a completely different problem. Your problem was with the proprietary AMDGPU-PRO drivers.

@AngryPenguinPL Could be. But using the proprietary driver i have exactly the same error as you, the:

/steam/steamapps/common/dota 2 beta/game/dota.sh: line 109: 18133 Illegal instruction     (core dumped) ${STEAM_RUNTIME_PREFIX} ${GAME_DEBUGGER} "${GAMEROOT}"/${GAMEEXE} "$@"

And for some reason, it started to happen only after the last upgrade.

AngryPenguinPL commented 2 years ago

And for some reason, it started to happen only after the last upgrade.

@theflockers You should try debug it. Check dmesg and journal log. Maybe gdb too. This may give developers more information

theflockers commented 2 years ago

Sure. I did not paste anything because all I saw matches exactly what you guys pasted. But I will get some more info. Anyway - what bothers more is the lack of urgency on the topic.

Sega-Williams commented 2 years ago

Также присутствует данная проблема. Все вышеперечисленные способы испытаны, результат тот же. Действительно странно, что Valve не обратили на это внимание спустя такое кол-во времени


Google translate: This problem is also present. All of the above methods have been tested, the result is the same. It's really weird that Valve didn't pay attention after so much time.

4nk1 commented 2 years ago

Hi. I have the same problem as friends noted above.

Intel core 2 quad Q9550 + 750ti

Cheers!

Kutabe commented 2 years ago

Same problem here, source of evil (AVX instruction in libtier0.so) found, why is it not fixed yet?

MacFreak84 commented 2 years ago

No love. Nobody cares. *%$# Linux. I'd sell a kidney to play dota right now....

Masda-X commented 2 years ago

Same issue on Linux Lite OS with Nvidia graphics. Can not run the game after the latest update. Both opengl/vulkan tested. Tried windows 7 to make sure that is not my hardware. And it is running smoothly on windows. It is sad that Valve does not care about Linux.

tiagofr commented 2 years ago

Not even a statement from valve, just take it or leave it. Ok well done.

KoTLLIpeguHrepa commented 2 years ago

Такая же проблема. Попробовал все предложенные методы, не помогло. Вольво вообще не чешется по этому поводу, пошел 4й день. traps: dota2[6973] trap invalid opcode ip:7fbcb6fb2490 sp:7fff8b694c10 error:0 in libtier0.so[7fbcb6ec4000+227000] Ubuntu 20.04.3 LTS Intel® Core™ i5 CPU 750 @ 2.67GHz × 4 NVIDIA Corporation GK106 [GeForce GTX 660] 5.11.0-43-generic

darkbaboon commented 2 years ago

As a remember, here is your minimum requirements for Dota 2 on Linux : OS: Ubuntu 12.04 or newer Processor: Dual core from Intel or AMD at 2.8 GHz Memory: 4 GB RAM Graphics: NVIDIA Geforce 8600/9600GT (Driver v331), AMD HD 2xxx-4xxx (Driver mesa 10.5.9), AMD HD 5xxx+ (Driver mesa 10.5.9 or Catalyst 15.7), Intel HD 3000 (Driver mesa 10.6) Network: Broadband Internet connection Storage: 15 GB available space Sound Card: OpenAL Compatible Sound Card

Since the latest update, it becomes a false statement and fall under the false advertising laws. It was open 3 days ago, please Valve fix it, it is a critical bug.

Strykar commented 2 years ago

Not even a statement from valve, just take it or leave it. Ok well done.

Agreed, been trying to get a raise a response outside GH, chime in - https://twitter.com/AviHD/status/1472121415637733377