I just switched to openSUSE Tumbleweed coming from Windows, and one of the first issues I encountered was with my NVIDIA driver. After selecting the “GNOME Desktop” option during installation, it automatically chose Wayland without installing X11. Thus, one would expect that the driver would be configured properly for Wayland since by default, for “GNOME Desktop”, it’s the only option with no alternatives. However, after I booted up for the first time, my system went directly into IceWM, and I realized that GNOME isn’t even available to choose in GDM, and installing the X11 GNOME pattern made GNOME available but without Wayland. After some further troubleshooting, I finally found the issue; it was a rule in /usr/lib/udev/rules.d/61-gdm.rules
that prevented the Wayland session from being an option if NVreg_PreserveVideoMemoryAllocations was set to 0. I tried commenting out this rule, then the Wayland session finally worked, but the driver failed to load. So, instead I tried changing its value to 1 rather than simply skipping the rule by creating a modprobe.d configuration file and using options nvidia NVreg_PreserveVideoMemoryAllocations=1
, and now it works as expected.
In another thread about NVIDIA drivers and Wayland, I noticed someone whose setting was set to 1 (either they changed it manually or it defaults to the proper value for them). So, I’m wondering, why is NVreg_PreserveVideoMemoryAllocations disabled by default for me? Is it disabled by default for everyone by default? Could this be a bug specific to my graphics card, or did I make a mistake installing the correct drivers?
@ffrustrated Hi and welcome to the Forum
I’m assuming the rpm install, are your using the open driver?
Likewise you need nvidia_drm.modeset=1
in the boot options and also libnvidia-egl-wayland1 and libnvidia-egl-gbm1 packages installed.
I suspect that once X11 is dropped it may be able to be changed.
I personally use the run file along with my own nvidia options, so it avoids this issue.
Hi and thanks for the warm welcome!
I installed everything using zypper, as outlined in the SDB:NVIDIA Drivers, so both of the packages and the rest of the dependencies are installed.
I replaced NVreg_PreserveVideoMemoryAllocations with nvidia_drm.modeset as you suggested, and it has the same result (i.e. it fixed the PreserveVideoMemoryAllocations, and I’m assuming it also did more things as this seems like a more general setting).
Are there any more resources on the openSUSE Wiki on why nvidia_drm.modeset=1
is necessary for Tumbleweed and why it’s disabled by default, even for NVIDIA users who chose to install GNOME with Wayland?
@ffrustrated Hi, well Nvidia has been in the past proprietary in nature, so that’s all been left to the user in the past… Plus there is no official support for Nvidia in GNOME, but improving.
Can you post the output from;
inxi -GSaz
cat /proc/driver/nvidia/params | sort
Sure thing!
System:
Kernel: 6.15.2-1-default arch: x86_64 bits: 64 compiler: gcc v: 14.3.0
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/boot/vmlinuz-6.15.2-1-default
root=UUID=e389d24f-7619-4237-9a14-9c99d0068c1c splash=silent quiet
security=selinux selinux=1 rd.driver.blacklist=nouveau
nvidia_drm.modeset=1 mitigations=auto
Desktop: GNOME v: 48.2 tk: GTK v: 3.24.50 wm: gnome-shell
tools: gsd-screensaver-proxy avail: xscreensaver dm: GDM v: 48.0
Distro: openSUSE Tumbleweed 20250617
Graphics:
Device-1: NVIDIA TU116 [GeForce GTX 1650 SUPER] vendor: Gigabyte
driver: nvidia v: 570.153.02 alternate: nouveau,nvidia_drm
non-free: 550/565.xx+ status: current (as of 2025-01; EOL~2026-12-xx)
arch: Turing code: TUxxx process: TSMC 12nm FF built: 2018-2022 pcie:
gen: 1 speed: 2.5 GT/s lanes: 16 link-max: gen: 3 speed: 8 GT/s ports:
active: none off: HDMI-A-1 empty: DP-1,DVI-D-1 bus-ID: 01:00.0
chip-ID: 10de:2187 class-ID: 0300
Display: wayland server: X.org v: 1.21.1.15 with: Xwayland v: 24.1.6
compositor: gnome-shell driver: X: loaded: N/A unloaded: modesetting,vesa
failed: nvidia alternate: fbdev,nouveau,nv gpu: nvidia,nvidia-nvswitch
display-ID: 0
Monitor-1: HDMI-A-1 model: MACROSILICON serial: <filter> built: 2019
res: 1280x720 dpi: 61 gamma: 1.2 size: 1039x584mm (40.91x22.99")
diag: 604mm (23.8") ratio: 16:9 modes: max: 1280x720 min: 640x480
API: OpenGL v: 4.6.0 vendor: nvidia v: 570.153.02 glx-v: 1.4
direct-render: yes renderer: NVIDIA GeForce GTX 1650 SUPER/PCIe/SSE2
memory: 3.91 GiB display-ID: :0.0
API: EGL Message: EGL data requires eglinfo. Check --recommends.
Info: Tools: api: glxinfo gpu: nvidia-smi x11: xprop,xrandr
CreateImexChannel0: 0
DeviceFileGID: 483
DeviceFileMode: 432
DeviceFileUID: 0
DmaRemapPeerMmio: 1
DynamicPowerManagement: 3
DynamicPowerManagementVideoMemoryThreshold: 200
EnableDbgBreakpoint: 0
EnableGpuFirmware: 18
EnableGpuFirmwareLogs: 2
EnableMSI: 1
EnablePCIeGen3: 0
EnablePCIERelaxedOrderingMode: 0
EnableResizableBar: 0
EnableS0ixPowerManagement: 1
EnableStreamMemOPs: 0
EnableUserNUMAManagement: 1
ExcludedGpus: ""
GpuBlacklist: ""
GrdmaPciTopoCheckOverride: 0
IgnoreMMIOCheck: 0
ImexChannelCount: 2048
InitializeSystemMemoryAllocations: 1
KMallocHeapMaxSize: 0
MemoryPoolSize: 0
ModifyDeviceFiles: 1
NvLinkDisable: 0
OpenRmEnableUnsupportedGpus: 1
PreserveVideoMemoryAllocations: 1
RegisterPCIDriver: 1
RegistryDwords: ""
RegistryDwordsPerDevice: ""
ResmanDebugLevel: 4294967295
RmLogonRC: 1
RmMsg: ""
RmNvlinkBandwidthLinkCount: 0
RmProfilingAdminOnly: 1
S0ixPowerManagementVideoMemoryThreshold: 256
TemporaryFilePath: "/var/tmp"
UsePageAttributeTable: 4294967295
VMallocHeapMaxSize: 0
@ffrustrated Looks normal, the only additional thing I would set is PAT;
## Enable the PAT feature
options nvidia NVreg_UsePageAttributeTable=1
This provides some better memory management.
I suspect you have the open and closed kmp installed zypper se -si nvidia
I just checked using the command you gave, and unless I’m mistaken somewhere, I think I only have the open kmp installed.
S | Name | Type | Version | Arch | Repository
---+-------------------------------------------+---------+--------------------------+--------+------------------
i | kernel-firmware-nvidia | package | 20250516-3.1 | noarch | repo-oss
i | libnvidia-egl-gbm1 | package | 1.1.2-7.11 | x86_64 | repo-non-free
i | libnvidia-egl-wayland1 | package | 1.1.19-49.3 | x86_64 | repo-non-free
i | libnvidia-egl-x111 | package | 1.0.1-18.1 | x86_64 | repo-non-free
i | nvidia-common-G06 | package | 570.153.02-36.1 | x86_64 | repo-non-free
i | nvidia-compute-G06 | package | 570.153.02-36.1 | x86_64 | repo-non-free
i | nvidia-compute-utils-G06 | package | 570.153.02-36.1 | x86_64 | repo-non-free
i | nvidia-gl-G06 | package | 570.153.02-36.1 | x86_64 | repo-non-free
i | nvidia-modprobe | package | 570.169-15.2 | x86_64 | repo-non-free
i | nvidia-open-driver-G06-signed-kmp-default | package | 570.153.02_k6.15.1_1-3.1 | x86_64 | (System Packages)
i | nvidia-persistenced | package | 570.169-2.2 | x86_64 | repo-non-free
i | nvidia-userspace-meta-G06 | package | 570.153.02-3.1 | noarch | repo-non-free
i | nvidia-userspace-meta-G06 | package | 570.153.02-3.1 | noarch | repo-non-free
i | nvidia-video-G06 | package | 570.153.02-36.1 | x86_64 | repo-non-free
i+ | openSUSE-repos-Tumbleweed-NVIDIA | package | 20250606.b852490-1.1 | x86_64 | repo-oss
It’s not updated (System Package) 570.169_k6.15.2_1-1.1 is available… If you force the re-install and reboot to see if that helps.
zypper in -f nvidia-open-driver-G06-signed-kmp-default
Yep, that was the issue, my earlier system-wide update failed because of Internet issues and I didn’t even realize until now.
Now, everything is working as expected and Wayland is available without the need for extra manual configuration like using nvidia_drm.modeset=1
. I apologize for the wasted time.
Thanks for helping out!
Can this post get deleted? It was pointless and a mistake on my part.
@ffrustrated glad you have it sorted, just check the sort
output to ensure it’s enabled, else add back into the kernel boot options.
Everything is checked out, thanks.
This also solved a couple of other minor issues I was gonna post about in the forums. Next time I’ll make sure not to carelessly cut the power to the computer after assuming the update was done, without checking if it actually was. Turns out I forgot to connect to the faster internet router, so the download speed was much slower than I expected.
Thanks so much for the fast help malcolmlewis.
All good, learning is part of the experience, and this may still help others along their journey.
This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.