I switched from linux-lts to the stable linux kernel and now my nvidia drivers aren’t working anymore, i tried reinstalling nvidia-dkms both via pacman and nvidia-inst but it didn’t help, what do I do?
If you can, you may need to keep using the LTS kernel.
Or, please post some info about your system:
inxi -GMCzac0
pacman -Qs nvidia
inxi -GMCzac0
Machine:
Type: Laptop System: ASUSTeK product: ROG Strix G713RW_G713RW v: 1.0
serial: <superuser required>
Mobo: ASUSTeK model: G713RW v: 1.0 serial: <superuser required>
uuid: <superuser required> UEFI: American Megatrends LLC. v: G713RW.327
date: 02/16/2023
CPU:
Info: model: AMD Ryzen 9 6900HX with Radeon Graphics bits: 64 type: MT MCP
arch: Zen 3+ gen: 4 level: v3 note: check built: 2022 process: TSMC n6 (7nm)
family: 0x19 (25) model-id: 0x44 (68) stepping: 1 microcode: 0xA404102
Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache:
L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 4 MiB desc: 8x512 KiB
L3: 16 MiB desc: 1x16 MiB
Speed (MHz): avg: 3729 high: 4935 min/max: 400/4935 boost: enabled
scaling: driver: amd-pstate governor: performance cores: 1: 4935 2: 3767
3: 4935 4: 3287 5: 3267 6: 4935 7: 3264 8: 3251 9: 3238 10: 3265 11: 3266
12: 3548 13: 3267 14: 4935 15: 3251 16: 3263 bogomips: 105440
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities:
Type: gather_data_sampling status: Not affected
Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: mmio_stale_data status: Not affected
Type: reg_file_data_sampling status: Not affected
Type: retbleed status: Not affected
Type: spec_rstack_overflow status: Vulnerable: Safe RET, no microcode
Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
prctl
Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
sanitization
Type: spectre_v2 mitigation: Retpolines; IBPB: conditional; IBRS_FW;
STIBP: always-on; RSB filling; PBRSB-eIBRS: Not affected; BHI: Not
affected
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: NVIDIA GA104 [Geforce RTX 3070 Ti Laptop GPU] vendor: ASUSTeK
driver: N/A alternate: nouveau non-free: 550.xx+ status: current (as of
2024-06; EOL~2026-12-xx) arch: Ampere code: GAxxx process: TSMC n7 (7nm)
built: 2020-2023 pcie: gen: 4 speed: 16 GT/s lanes: 8 link-max: lanes: 16
bus-ID: 01:00.0 chip-ID: 10de:24a0 class-ID: 0300
Device-2: AMD Rembrandt [Radeon 680M] vendor: ASUSTeK driver: amdgpu
v: kernel arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm) built: 2020-22
pcie: gen: 4 speed: 16 GT/s lanes: 16 ports: active: eDP-1 empty: DP-1,
DP-2, DP-3, DP-4, DP-5, Writeback-1 bus-ID: 06:00.0 chip-ID: 1002:1681
class-ID: 0300 temp: 56.0 C
Display: wayland server: X.org v: 1.21.1.13 with: Xwayland v: 24.1.0
compositor: Hyprland v: 0.41.2 driver: X: loaded: amdgpu dri: radeonsi
gpu: amdgpu display-ID: 1
Monitor-1: eDP-1 model: BOE Display 0x0a69 built: 2021 res: 2560x1440
dpi: 171 gamma: 1.2 size: 381x214mm (15x8.43") diag: 437mm (17.2")
ratio: 16:9 modes: max: 2560x1440 min: 640x480
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: swrast gbm: drv: kms_swrast surfaceless: drv: radeonsi
wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.1.3-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon 680M (radeonsi rembrandt
LLVM 18.1.8 DRM 3.57 6.9.8-arch1-1) device-ID: 1002:1681 memory: 500 MiB
unified: no
API: Vulkan Message: No Vulkan data available.
pacman -Qs nvidia
$ pacman -Qs nvidia
local/cuda 12.5.0-1
NVIDIA's GPU programming toolkit
local/egl-wayland 2:1.1.13-2
EGLStream-based Wayland external platform
local/lib32-libvdpau 1.5-2
Nvidia VDPAU library
local/lib32-vulkan-nouveau 1:24.1.3-1
Open-source Vulkan driver for Nvidia GPUs - 32-bit
local/libvdpau 1.5-3
Nvidia VDPAU library
local/libxnvctrl 555.58.02-1
NVIDIA NV-CONTROL X extension
local/nvidia-dkms 555.58.02-1
NVIDIA drivers - module sources
local/nvidia-hook 1.5-2
pacman hook for nvidia
local/nvidia-inst 24-1
Script to setup nvidia drivers (dkms version) in EndeavourOS
local/nvidia-prime 1.0-4
NVIDIA Prime Render Offload configuration and utilities
local/nvidia-settings 555.58.02-1
Tool for configuring the NVIDIA graphics driver
local/nvidia-utils 555.58.02-1
NVIDIA drivers utilities
local/nvtop 3.1.0-1
GPUs process monitoring for AMD, Intel and NVIDIA
local/opencl-nvidia 555.58.02-1
OpenCL implemention for NVIDIA
local/supergfxctl 5.2.1-2
A utility for Linux graphics switching on Intel/AMD iGPU + nVidia dGPU laptops
local/vulkan-nouveau 1:24.1.3-1
Open-source Vulkan driver for Nvidia GPUs
Also since inxi said the gpu is using nouveau, lsmod | grep nouveau
returns nothing. Ditto for grep nvidia. I can enable nouveau though with modprobe and use nvk with it.
Your system is rendering on the integrated graphics amdgpu
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.1.3-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon 680M (radeonsi rembrandt
LLVM 18.1.8 DRM 3.57 6.9.8-arch1-1) device-ID: 1002:1681 memory: 500 MiB
unified: no
You may have nouveau open source driver installed but you have to switch to the nvidia gpu with some method.
Edit: How did you do this before when you say the nvidia drivers were installed or are you just looking at the output that shows nvidia drivers are installed. Doesn’t mean they are loaded. It has to be rendering on nvidia gpu with either nouveau or nvidia.
I just have an amd igpu, it’s a laptop, it’s supposed to be there.
I didn’t do this any different before switching kernels, just after switching kernels the nvidia driver will not load.
Only thing i did was switch kernels and try reinstalling drivers i already had.
Edit: Tried intalling and switching back to LTS, it doesn’t work there either now. The nvidia driver is just not loading.
I tried checking journalctl for errors, this was all I could find:
After looking up the failed to find module error, I found another similar thread where someone had to install nvidia-dkms to fix it.
So I replaced nvidia-dkms
with the standard nvidia
package and now it works fine on stable.
I would much rather use nvidia-dkms since it’s supposed to support both kernels instead of just one or the other though.
Yes it has integrated graphics and nvidia gpu. What i’m telling you is that the nouveau opensource drivers are installed but not loaded. It is rendering on the integrated graphics amdpu. There has to be a way to switch graphics so my question was how were you doing that before or did you just assume because you see nvida drivers that all is working. They may be installed but if not loaded and not rendering on the dedicated nvidia gpu then it’s just using the integrated graphics.
Graphics:
Device-1: NVIDIA GA104 [Geforce RTX 3070 Ti Laptop GPU] vendor: ASUSTeK
driver: N/A alternate: nouveau non-free: 550.xx+ status: current (as of
2024-06; EOL~2026-12-xx) arch: Ampere code: GAxxx process: TSMC n7 (7nm)
built: 2020-2023 pcie: gen: 4 speed: 16 GT/s lanes: 8 link-max: lanes: 16
bus-ID: 01:00.0 chip-ID: 10de:24a0 class-ID: 0300
Device-2: AMD Rembrandt [Radeon 680M] vendor: ASUSTeK driver: amdgpu
v: kernel arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm) built: 2020-22
pcie: gen: 4 speed: 16 GT/s lanes: 16 ports: active: eDP-1 empty: DP-1,
DP-2, DP-3, DP-4, DP-5, Writeback-1 bus-ID: 06:00.0 chip-ID: 1002:1681
class-ID: 0300 temp: 56.0 C
Looks like somethings got messed up. Do you have systemd-boot or grub? Did you try switching back to the current kernel?
This probably just means that it didn’t properly rebuild the kernel modules. Did you install nvidia this way?
sudo pacman -S nvidia nvidia-utils nvidia-settings lib32-nvidia-libgl
just pacman -S nvidia
, the rest was already installed except for the lib32 package, i was just swapping nvidia-dkms
for nvidia
.
I had before trying this tried fully uninstalling nvidia-dkms
and then installing it again, in case you’re wondering if that would fix the issue.
Previously when you say it did work? How were you switching from amdgpu to nvidia?
Edit: What is the current output?
inxi -Ga
Were you or are you using this package?
Graphics:
Device-1: NVIDIA GA104 [Geforce RTX 3070 Ti Laptop GPU] vendor: ASUSTeK
driver: nvidia v: 555.58.02 alternate: nouveau,nvidia_drm non-free: 550.xx+
status: current (as of 2024-06; EOL~2026-12-xx) arch: Ampere code: GAxxx
process: TSMC n7 (7nm) built: 2020-2023 pcie: gen: 1 speed: 2.5 GT/s
lanes: 8 link-max: gen: 4 speed: 16 GT/s lanes: 16 ports: active: none
empty: DP-1,HDMI-A-1,eDP-1 bus-ID: 01:00.0 chip-ID: 10de:24a0
class-ID: 0300
Device-2: AMD Rembrandt [Radeon 680M] vendor: ASUSTeK driver: amdgpu
v: kernel arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm) built: 2020-22
pcie: gen: 4 speed: 16 GT/s lanes: 16 ports: active: eDP-2 empty: DP-2,
DP-3, DP-4, DP-5, DP-6, Writeback-1 bus-ID: 06:00.0 chip-ID: 1002:1681
class-ID: 0300 temp: 51.0 C
Display: wayland server: X.org v: 1.21.1.13 with: Xwayland v: 24.1.0
compositor: Hyprland v: 0.41.2 driver: X: loaded: amdgpu dri: radeonsi
gpu: amdgpu display-ID: 1
Monitor-1: eDP-2 model: BOE Display 0x0a69 built: 2021 res: 2560x1440
dpi: 171 gamma: 1.2 size: 381x214mm (15x8.43") diag: 437mm (17.2")
ratio: 16:9 modes: max: 2560x1440 min: 640x480
API: EGL v: 1.5 hw: drv: nvidia drv: amd radeonsi platforms: device: 0
drv: nvidia device: 2 drv: radeonsi device: 3 drv: swrast gbm: drv: nvidia
surfaceless: drv: nvidia wayland: drv: radeonsi x11: drv: radeonsi
inactive: device-1
API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: amd mesa v: 24.1.3-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon 680M (radeonsi rembrandt
LLVM 18.1.8 DRM 3.57 6.9.8-arch1-1) device-ID: 1002:1681 memory: 500 MiB
unified: no
API: Vulkan v: 1.3.279 layers: 12 device: 0 type: integrated-gpu name: AMD
Radeon 680M (RADV REMBRANDT) driver: mesa radv v: 24.1.3-arch1.1
device-ID: 1002:1681 surfaces: xcb,xlib,wayland
I switched between nvidia and amdgpu by using prime-run for opengl. for vulkan it was a bit more convoluted, by default when nvidia drivers are installed they are always the default vulkan driver for some reason unless i forcefully specify otherwise.
So I set export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.x86_64.json:/usr/share/vulkan/icd.d/radeon_icd.i686.json
in ~/.profile
so that it instead defaults to amdgpu.
I then edited the prime-run
script to among all the things it does by default, also do: VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json
Like this:
#!/bin/bash
__NV_PRIME_RENDER_OFFLOAD=1 __VK_LAYER_NV_optimus=NVIDIA_only __GLX_VENDOR_LIBRARY_NAME=nvidia VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json "$@"
This honestly seems to me like an oversight by the arch devs, it’s been like this for years though.
I am using rog-control-center, yes.
Edit Note: If the nvidia_icd is mentioned at all anywhere in VK_ICD_FILENAMES
it wil always be loaded no matter what the order is. There’s another variable called VK_DRIVER or something like that, I haven’t tested if it behaves the same but i expect it does.
Okay so it’;s currently rendering on amdgpu and nvidia drivers are installed. You can switch to nvidia and it shows rendering on the nvidia gpu?
yes, by default for me amdgpu is used, if i use prime-run
nvidia is used instead. As it should be.
Looks like your good then.
I reinstalled nvidia-dkms just to check if it’d work.
It works on LTS but not on stable.
So nvidia-dkms is just broken on stable right now for some reason
Thanks for your help!
I’m not even sure what I’m running on my desktop system currently. It should be whatever the EOS installs. I think it’s nvidia-dkms? I’ll check that later someway.
This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.