You are not logged in.
Note: the issue has been resolved 'by me', this thread is just for the sake of curiosity
Hello, I am an arch linux amateur, I was having issues while attempting to install official Nvidia drivers for my RTX 2080 Ti graphics card.
I'm using KDE Plasma w/ Wayland and SDDM.
I followed the instructions in the wiki as follows:
-Installed the "nvidia-open" package
-Removed the "kms" hook in mkinitcpio.d and manually ran mkinitcpio -P
-Tried to enable DRM with "modprobe nvidia_drm modeset=1"
Upon restarting, I noticed wayland was running at approx. 30hz and there was a lot of general lag. Running glxgears gave me results of over 4000 fps, indicating lack of hardware accelaration.
KDE's system info applet listed the GPU as "llvmpipe"
lspci produced the following about the GPU:
VGA compatible controller: NVIDIA Corporation TU102 [GeForce RTX 2080 Ti Rev. A] (rev a1)
Subsystem: Gigabyte Technology Co., Ltd Device 37a9
Kernel modules: nouveau
Journalctl reported these notable warnings:
Sep 14 21:20:01 ymarchlinuxrog plasmashell[919]: file:///usr/share/plasma/plasmoids/org.kde.desktopcontainment/contents/ui/main.qml:195:25: QML FolderViewDropArea (parent or ancestor of QQuickLayoutAttached): Binding loop detected for property "minimumWidth"
Sep 14 21:20:01 ymarchlinuxrog plasmashell[919]: Toolbox not loading, toolbox package is either invalid or disabled.
Sep 14 21:20:02 ymarchlinuxrog plasmashell[919]: file:///usr/share/plasma/plasmoids/org.kde.plasma.private.systemtray/contents/ui/main.qml:162:21: QML KSortFilterProxyModel: Binding loop detected for property "sourceModel"
Sep 14 21:20:02 ymarchlinuxrog org_kde_powerdevil[985]: busno=4, Feature 0x00 should not exist but ddc_get_nontable_vcp_value() succeeds, returning mh=0xff ml=0xff sh=0x00 sl=0xff
Sep 14 21:20:02 ymarchlinuxrog org_kde_powerdevil[985]: busno=4, All features that should not exist detected. Monitor does not indicate unsupported
Sep 14 21:20:02 ymarchlinuxrog org_kde_powerdevil[985]: Library initialization complete.
Sep 14 21:20:47 ymarchlinuxrog kwin_wayland[647]: kwin_wayland_drm: Failed to create framebuffer: Invalid argument (15 times per second of uptime)
Sep 14 21:22:48 ymarchlinuxrog plasmashell[919]: The cached device pixel ratio value was stale on window update. Please file a QTBUG which explains how to reproduce.
Startup:
Sep 14 21:19:58 ymarchlinuxrog kwin_wayland[647]: No backend specified, automatically choosing drm
Sep 14 21:19:59 ymarchlinuxrog baloo_file[646]: qt.dbus.integration: QDBusConnection: name 'org.freedesktop.UDisks2' had owner '' but we thought it was ':1.24'
Sep 14 21:19:59 ymarchlinuxrog baloo_file[646]: qt.dbus.integration: QDBusConnection: name 'org.freedesktop.UPower' had owner '' but we thought it was ':1.29'
Sep 14 21:19:59 ymarchlinuxrog systemd[603]: Started PipeWire Multimedia Service.
Sep 14 21:19:59 ymarchlinuxrog systemd[603]: Started Multimedia Service Session Manager.
Sep 14 21:19:59 ymarchlinuxrog wireplumber[725]: wp-internal-comp-loader: Loading profile 'main'
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland[647]: kwin_scene_opengl: No render nodes have been found, falling back to primary node
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland[647]: kwin_wayland_drm: Failed to create framebuffer: Invalid argument
Sep 14 21:19:59 ymarchlinuxrog kcminit_startup[651]: Initializing "/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_fonts.so"
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[761]: Refusing to try glamor on llvmpipe
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[761]: EGL setup failed, disabling glamor
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[761]: Failed to initialize glamor, falling back to sw
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[761]: src/nv_gbm.c:300: GBM-DRV error (nv_gbm_create_device_native): nv_common_gbm_create_device failed (ret=-1)
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[800]: The XKEYBOARD keymap compiler (xkbcomp) reports:
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[800]: > Warning: Unsupported maximum keycode 708, clipping.
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[800]: > X11 cannot support keycodes above 255.
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[800]: > Warning: Could not resolve keysym XF86KbdInputAssistPrevgrou
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[800]: > Warning: Could not resolve keysym XF86KbdInputAssistNextgrou
Sep 14 21:19:59 ymarchlinuxrog kwin_wayland_wrapper[800]: Errors from xkbcomp are not fatal to the X server
Sep 14 21:19:59 ymarchlinuxrog kcminit_startup[651]: Initializing "/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_style.so"
Sep 14 21:19:59 ymarchlinuxrog kcminit[801]: Initializing "/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_fonts.so"
Sep 14 21:19:59 ymarchlinuxrog kcminit[801]: Initializing "/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_style.so"
Sep 14 21:19:59 ymarchlinuxrog kcminit_startup[651]: Initializing "/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_mouse.so"
Sep 14 21:19:59 ymarchlinuxrog systemd[603]: Started KDE Config Module Initialization.
Sep 14 21:19:59 ymarchlinuxrog systemd[603]: Starting KDE Session Management Server...
Sep 14 21:19:59 ymarchlinuxrog systemd[603]: Started Unlock kwallet from pam credentials.
Sep 14 21:19:59 ymarchlinuxrog systemd[603]: Starting KDE Daemon 6...
Afterwards, I tried:
-installing and reinstalling "nvidia", "nvidia-open", "nvidia-open-beta" and "egl-wayland"
-adding "nvidia", "nvidia_modeset", "nvidia_uvm" and "nvidia_drm" to MODULES in mkinitcpio.d.
none of these worked, it was like no proper gpu driver was loaded (which I'm guessing that's what's been going on...)
getting tired after this ordeal-like driver installation, I followed the steps of this guide..:
https://linuxiac.com/nvidia-with-waylan … tup-guide/
lo and behold it worked
I'm assuming that whatever needed to be loaded on startup loads now but why the heck wouldn't that happen when I ran modprobe (did I miss something?)
Anyway, it works now, lspci reports the driver in use as nvidia, the KDE applet recognizes my RTX 2080 Ti and hopefully all is good for the long-term... (hopefully)
My question is, what went wrong? Was something behind my nose this entire time? Or is there something seriously wrong with the current nvidia packages?
Offline
You can't modprobe the modeset kernel parameter when the module is already loaded -- and you can't unload the module if it's in active use. You need to set that when the module is initially loaded, best via the kernel cmdline as that has the positive side effect of killing the simpledrm device which will otherwise take over the framebuffer. Even if the modprobe succeeded because you went through the necessary steps, simply doing that directly via the modprobe command is transient and will get lost on reboot.
I.e. the key element of this guide was adding nvidia_drm.modeset=1 (this is the parameter that's mandatory to enable Wayland support) to the kernel cmdline. I'd strongly suggest you don't override the GBM_BACKEND or the GLX_VENDOR statically like that. Should this ever change this will break or if you ever decide to switch GPU vendors you will wonder why the system doesn't work because you set unnecessary environment overrides.
Last edited by V1del (2024-09-14 21:10:59)
Offline
I removed both GBM_BACKEND and GLX_VENDOR from /etc/environment and everything still works. As for whether it'll break the system, I'm relatively sure Nvidia on Linux will be perfected before I upgrade
Apparently the issue all along was the nvidia_drm parameter wasn't set to "1" on startup which was necessary for Wayland. I guess that's how you properly add commands/parameters for the kernel to see and handle on startup before systemd kicks in. I'm hoping this doesn't count as an eye dee ten tee error...
Thanks nonetheless
Offline