steam-runtime icon indicating copy to clipboard operation
steam-runtime copied to clipboard

libGL error: failed to load driver: amdgpu

Open kyflores opened this issue 3 years ago • 3 comments

Your system information

  • Steam Runtime Version:
  • Distribution: Ubuntu 20.04
  • Link to your full system information: systeminfo
  • Have you checked for system updates?: [Yes]
  • Are you using the Steam Linux Runtime compatibility tool?: [Yes]

Please describe your issue in as much detail as possible:

Nier Replicant fails to launch. A blank window briefly appears then closes.

If you are using the Steam Linux Runtime compatibility tool, please provide the information requested here: SLR log Game launch log

Steps for reproducing this issue:

  1. Attempt to launch the game.

Other Info:

  • Seems like a similar symptom to https://github.com/ValveSoftware/Proton/issues/4777#issuecomment-826088048, where the most visible error appears in the game launch log as
libGL error: MESA-LOADER: failed to retrieve device information
libGL error: MESA-LOADER: failed to open amdgpu (search paths /overrides/lib/x86_64-linux-gnu/dri:/overrides/lib/i386-linux-gnu/dri)
libGL error: failed to load driver: amdgpu
  • This computer currently has the AMD ROCm compute stack installed and has previously had the amdgpu-pro dkms driver installed. That looked like a possible issue in https://github.com/ValveSoftware/steam-runtime/issues/309, but I don't see any references to paths in /opt in my logs except for libOpenCl.
  • This the same problem occurs with Proton 6.3.2 and 5.13-6. Also tested 5.0-10 (which doesn't launch) but the symptom is different.

kyflores avatar Apr 25 '21 04:04 kyflores

By the launch log it seems like the game is trying to use amdgpu_dri.so that is not available in your system, or at least it is not available under /usr/lib/x86_64-linux-gnu/dri/ nor /usr/lib/i386-linux-gnu/dri/.

amdgpu_dri.so should be provided by the amdgpu-pro drivers.

As a quick test I would expect that if you set the game launch options from the Steam client as MESA_LOADER_DRIVER_OVERRIDE=radeonsi %command% it should start to work again.

Maybe the amdgpu driver is forced by a configuration file like $HOME/.drirc or /etc/drirc? Still not sure why the system information log picks the right driver though.

RyuzakiKK avatar Apr 26 '21 08:04 RyuzakiKK

Hi, thanks for your reply! I tried the MESA_LOADER_DRIVER_OVERRIDE option, so my launch options are now PROTON_LOG=1 MESA_LOADER_DRIVER_OVERRIDE=radeonsi %command%.

The log output with that is:

1377.415:0114:0130:trace:seh:call_vectored_handlers calling handler at 0000000359134A60 code=406d1388 flags=0
1377.415:0114:0130:trace:seh:call_vectored_handlers handler at 0000000359134A60 returned ffffffff
1377.464:0114:0118:trace:seh:sigsys_handler SIGSYS, rax 0xf08a, rip 0x156865902.
MESA-LOADER: failed to retrieve device information
amdgpu: drmGetDevice2 failed.
libGL error: failed to create dri screen
libGL error: failed to load driver: radeonsi
1377.643:0114:0118:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
warn:  D3D11CoreCreateDevice: Adapter is not a DXVK adapter
1377.686:0114:0118:trace:loaddll:build_module Loaded L"C:\\windows\\system32\\dxvk_config.dll" at 0000000317D60000: native
1377.687:0114:0118:trace:seh:NtQueryInformationThread (0x11c,0,0x22dfa0,30,(nil))

I don't have drirc at either of those paths.

kyflores avatar Apr 26 '21 15:04 kyflores

Hi. I have the same problem.

I originally reported it here but was advised to create an issue for this project. The linked post also contains logs and system information.

I tried running it with ROTON_LOG=1 MESA_LOADER_DRIVER_OVERRIDE=radeonsi %command% as well, but the observed behavior is still the same: https://gist.github.com/Gambloide/618e8024d6002de2c037c71b740d13f7

Gambloide avatar Apr 26 '21 16:04 Gambloide