Radeon/GPU Drivers messed up

Hey,

haven’t booted the system in a while except for the occasional updates and today I noticed that X11 would only login into a black screen.

Console would say something about KWIN_11 dying and OpenGL initialization failing.

So far so bad, so I went into Wayland and everything appeared to be fine at first. Except, no game ran. Period, full stop.

I have done some digging but am hopelessly lost as I haven’t done anything to the system and it used to just work.

Core issue: Games are complaining that there isn’t a DX12 device.

Vulkaninfo:

[derp@linux-destop vulkan]$ vulkaninfo
ERROR: [Loader Message] Code 0 : vkCreateInstance: Found no drivers!
Cannot create Vulkan instance.
This problem is often caused by a faulty installation of the Vulkan driver or attempting to use a GPU that does not support Vulkan.
ERROR at /usr/src/debug/vulkan-tools/Vulkan-Tools-1.3.269/vulkaninfo/./vulkaninfo.h:688:vkCreateInstance failed with ERROR_INCOMPATIBLE_DRIVER

As you can see, it is dead.

lspci claims amdgpu driver to be in use.

03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900 XTX/7900M] (rev c8)
        Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] RX 7900 GRE [XFX]
        Kernel driver in use: amdgpu

ICDs are present:

[derp@linux-destop ~]$ pacman -Qo /usr/share/vulkan/icd.d/*
/usr/share/vulkan/icd.d/radeon_icd.i686.json is owned by lib32-vulkan-radeon 1:24.1.3-1
/usr/share/vulkan/icd.d/radeon_icd.x86_64.json is owned by vulkan-radeon 1:24.1.3-1

and configured in /etc/environment:

VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json

No amdvlk packages are installed and I am slightly stumped as to how to proceed, let alone where to begin.

[derp@linux-destop icd.d]$ pacman -Qq | grep -E "amd|vulkan|nvidia"
amd-ucode
lib32-vulkan-icd-loader
lib32-vulkan-radeon
vulkan-headers
vulkan-icd-loader
vulkan-radeon
vulkan-tools
vulkan-utility-libraries
xf86-video-amdgpu

I suspect the OpenGL / KWIN_X11 issue ties into the same root issue, whatever that may be.

Both current kernel and LTS exhibit this behavior.

EDIT / SOLUTION: Running an app specifically with the dedicated prefix of

VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json app

seems to work just fine. Steam, games and vukaninfo work this way.

Was there a change in how ICDs are to be defined?

Seems like I solved it by a lucky shot.

In addition to VK_ICD_FILENAMES I added

VK_DRIVER_FILES=/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json

to /etc/environment as well and things seem to now be back in order, for now.

I have all packages installed except the above but that shouldn’t be the cause of the errors.

Edit: Does vulkaninfo give you the proper output?

Hey,

it initially didn’t.

See my latest edit and solution in the OP.

While I still don’t know/understand what’s caused this issue to begin with, I managed to resolve it.

Still not sure if anything under the hood changed requiring the new/additional step I’ve taken or something else fundamentally broke on my system in particular.

In case anything else breaks unexpectedly I might just settle for a reinstall should worse come to worse.

Not sure but i didn’t have to do this in order to have it output the proper vulkan-info.

Edit: Not sure if you also set hardware acceleration which requires a few more packages and configuration.

https://wiki.archlinux.org/title/Hardware_video_acceleration