You are not logged in.

#1 2020-07-05 08:04:28

Ahad12
Member
Registered: 2013-01-14
Posts: 41

GDM and Gnome not using wayland on NVIDIA driver

I'm attempting to use wayland/gnome on the proprietary NVIDIA driver. Despite enabling KMS and removing the udev rule to force wayland, I still can't launch gdm/gnome with wayland. I understand that NVIDIA and gnome don't mix well, however I'm trying to see if I can get fractional scaling on gnome through wayland.

Journalctl excerpt showing that nvidia kms is working:

Jul 05 02:25:36 ahad-pc kernel: nvidia: loading out-of-tree module taints kernel.
Jul 05 02:25:36 ahad-pc kernel: nvidia: module license 'NVIDIA' taints kernel.
Jul 05 02:25:36 ahad-pc kernel: Disabling lock debugging due to kernel taint
Jul 05 02:25:36 ahad-pc kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
Jul 05 02:25:36 ahad-pc kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 242
Jul 05 02:25:36 ahad-pc kernel: nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem
Jul 05 02:25:36 ahad-pc kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module  440.100  Fri May 29 08:45:51 UTC 2020
Jul 05 02:25:36 ahad-pc kernel: nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  440.100  Fri May 29 08:14:04 UTC 2020
Jul 05 02:25:36 ahad-pc kernel: nvidia-uvm: Loaded the UVM driver, major device number 240.
Jul 05 02:25:36 ahad-pc kernel: Linux agpgart interface v0.103
Jul 05 02:25:36 ahad-pc kernel: [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
Jul 05 02:25:36 ahad-pc kernel: resource sanity check: requesting [mem 0x000c0000-0x000fffff], which spans more than PCI Bus 0000:00 [mem 0x000d0000-0x000d3fff window]
Jul 05 02:25:36 ahad-pc kernel: caller _nv000908rm+0x1bf/0x1f0 [nvidia] mapping multiple BARs
Jul 05 02:25:36 ahad-pc kernel: tsc: Refined TSC clocksource calibration: 3797.798 MHz
Jul 05 02:25:36 ahad-pc kernel: clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x6d7c72c07f0, max_idle_ns: 881591115316 ns
Jul 05 02:25:36 ahad-pc kernel: clocksource: Switched to clocksource tsc
Jul 05 02:25:36 ahad-pc kernel: [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
Jul 05 02:25:36 ahad-pc kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 0

Journalctl excerpt showing that gdm is using Xorg:

Jul 05 02:25:39 ahad-pc audit[450]: USER_START pid=450 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:session_open grantors=pam_keyinit,pam_succeed_if,pam_systemd,pam_permit acct="gdm" exe="/usr/lib/gdm-session-worker" hostname=ahad-pc>
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]: (--) Log file renamed from "/var/lib/gdm/.local/share/xorg/Xorg.pid-455.log" to "/var/lib/gdm/.local/share/xorg/Xorg.0.log"
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]: (WW) Failed to open protocol names file lib/xorg/protocol.txt
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]: X.Org X Server 1.20.8
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]: X Protocol Version 11, Revision 0
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]: Build Operating System: Linux Arch Linux
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]: Current Operating System: Linux ahad-pc 5.7.7-arch1-1 #1 SMP PREEMPT Wed, 01 Jul 2020 14:53:16 +0000 x86_64
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]: Kernel command line: initrd=\intel-ucode.img initrd=\initramfs-linux.img root=/dev/sda3 rw nvidia-drm.modeset=1
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]: Build Date: 05 May 2020  05:08:17AM
Jul 05 02:25:39 ahad-pc /usr/lib/gdm-x-session[455]:  
...

/etc/gdm/custom.conf

# GDM configuration storage

[daemon]
# Uncomment the line below to force the login screen to use Xorg
WaylandEnable=true

[security]

[xdmcp]

[chooser]

[debug]
# Uncomment the line below to turn on debugging
#Enable=true

/usr/lib/udev/rules.d/61-gdm.rules doesn't exist(I deleted as I heard this rule prevented gdm from using xorg).

Please let me know if any more information is needed.

Offline

#2 2020-07-05 11:14:48

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 77,762

Re: GDM and Gnome not using wayland on NVIDIA driver

Please post the complete system journal, not random excerpts. This makes it impossible to say how gdm ends up w/ an X11 session.
Also I'd suggest to take GDM out of the equation and just start gnome/wayland yourself, https://wiki.archlinux.org/index.php/GN … d_sessions

Offline

#3 2020-07-05 23:47:38

Ahad12
Member
Registered: 2013-01-14
Posts: 41

Re: GDM and Gnome not using wayland on NVIDIA driver

Thanks for the reply.  Here's a pastebin containing the output of journalctl -b
I also tried to start wayland unsucessfully with the command in the archwiki article you linked, but it gave an error as follows:

dbus-daemon[2217]: [session uid=1000 pid=2217] Activating service name='org.freedesktop.systemd1' requested by ':1.1' (uid=1000 pid=2218 comm="/usr/lib/gnome-session-binary ")
dbus-daemon[2217]: [session uid=1000 pid=2217] Activated service 'org.freedesktop.systemd1' failed: Process org.freedesktop.systemd1 exited with status 1
dbus-daemon[2217]: [session uid=1000 pid=2217] Activating service name='org.freedesktop.systemd1' requested by ':1.3' (uid=1000 pid=2218 comm="/usr/lib/gnome-session-binary ")
dbus-daemon[2217]: [session uid=1000 pid=2217] Activated service 'org.freedesktop.systemd1' failed: Process org.freedesktop.systemd1 exited with status 1
dbus-daemon[2217]: [session uid=1000 pid=2217] Activating service name='org.freedesktop.systemd1' requested by ':1.4' (uid=1000 pid=2218 comm="/usr/lib/gnome-session-binary ")
dbus-daemon[2217]: [session uid=1000 pid=2217] Activated service 'org.freedesktop.systemd1' failed: Process org.freedesktop.systemd1 exited with status 1
dbus-daemon[2217]: [session uid=1000 pid=2217] Activating service name='org.freedesktop.systemd1' requested by ':1.4' (uid=1000 pid=2218 comm="/usr/lib/gnome-session-binary ")
dbus-daemon[2217]: [session uid=1000 pid=2217] Activated service 'org.freedesktop.systemd1' failed: Process org.freedesktop.systemd1 exited with status 1
dbus-daemon[2217]: [session uid=1000 pid=2217] Activating service name='org.freedesktop.systemd1' requested by ':1.4' (uid=1000 pid=2218 comm="/usr/lib/gnome-session-binary ")
dbus-daemon[2217]: [session uid=1000 pid=2217] Activated service 'org.freedesktop.systemd1' failed: Process org.freedesktop.systemd1 exited with status 1

I found this systemd issue that seemed to discuss a similar issue, which was closed because apparently it's a bug with archlinux(?). I also tried removing dbus-run-session from the command, but then it didn't do anything (no output even).

Offline

#4 2020-07-06 06:27:12

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 77,762

Re: GDM and Gnome not using wayland on NVIDIA driver

The journal ends early, use the first link in my signature to feed it directly into a pastebin service.

To lennart, everything is somebody elses bug (or a feature) ;-)
Did you inject it into your bash_profile or attempt to start it manually?

Also before launching gnome check

type systemctl
echo $XDG_RUNTIME_DIR

Offline

#5 2020-07-06 23:25:41

Ahad12
Member
Registered: 2013-01-14
Posts: 41

Re: GDM and Gnome not using wayland on NVIDIA driver

type systemctl -> systemctl is /usr/bin/systemctl
echo $XDG_RUNTIME_DIR -> /run/user/1000

Pastebin for journal
I hope I got the pastebin right this time wink
~/.bash_profile:

#
# ~/.bash_profile
#

if [[ -z $DISPLAY && $(tty) == /dev/tty1 && $XDG_SESSION_TYPE == tty ]]; then
	MOZ_ENABLE_WAYLAND=1 QT_QPA_PLATFORM=wayland XDG_SESSION_TYPE=wayland dbus-run-session gnome-session 2> errors.txt
fi

[[ -f ~/.bashrc ]] && . ~/.bashrc

When I start it from bash_profile, I get the same dbus-daemon errors as in my previous post - I even tried removing dbus-run-session from the command. Any ideas why that might be?

Offline

#6 2020-07-07 15:10:05

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 77,762

Re: GDM and Gnome not using wayland on NVIDIA driver

The critical line is

Jul 06 17:48:43 ahad-pc gnome-shell[458]: Failed to create backend: No GPUs with outputs found

Despite https://wiki.gnome.org/Initiatives/Wayland/NVIDIA suggesting "some preliminary support for runnig a Wayland session on top of the NVIDIA drivers"

Since you want to "get fractional scaling on gnome", is this a multi-monitor setup?

Offline

#7 2020-07-08 06:32:42

Ahad12
Member
Registered: 2013-01-14
Posts: 41

Re: GDM and Gnome not using wayland on NVIDIA driver

No, it's 1 4k monitor. At the moment I'm using font scaling, which is somewhat effective, but ideally a fractional scaling solution would be great. It seems as if they haven't fixed Wayland on NVIDIA yet, despite saying that a fix would come out in Spring 2020 sad

Offline

#8 2020-07-09 17:02:13

dima1911
Member
From: Ukraine
Registered: 2017-03-29
Posts: 20

Re: GDM and Gnome not using wayland on NVIDIA driver

+1 have same problems

Offline

#9 2020-07-09 22:21:20

afader
Member
Registered: 2013-09-12
Posts: 207

Re: GDM and Gnome not using wayland on NVIDIA driver

This hasn't worked for me for a while, but it used to.

gist of my segfault

https://gist.github.com/andrewfader/4eb … d765cafd6e

Last edited by afader (2020-07-10 23:34:46)

Offline

#10 2020-07-21 01:21:12

afader
Member
Registered: 2013-09-12
Posts: 207

Re: GDM and Gnome not using wayland on NVIDIA driver

I actually got it to boot to a wayland session but it seems very slow and probably not using EGLstreams. I get this

Jul 20 21:09:47 obsidian gnome-shell[1141]: GNOME Shell started at Mon Jul 20 2020 21:09:44 GMT-0400 (Eastern Daylight Time)
Jul 20 21:09:47 obsidian gnome-shell[1141]: Registering session with GDM
Jul 20 21:09:47 obsidian dbus-broker[731]: Dispatched 8 messages @ 12(±8)μs / message.
Jul 20 21:09:47 obsidian gnome-shell[653]: Connection to xwayland lost
Jul 20 21:09:47 obsidian audit[576]: USER_END pid=576 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:session_close grantors=pam_keyinit,pa>
Jul 20 21:09:47 obsidian audit[576]: CRED_DISP pid=576 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:setcred grantors=pam_permit acct="gd>
Jul 20 21:09:47 obsidian kernel: audit: type=1106 audit(1595293787.427:88): pid=576 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:session>
Jul 20 21:09:47 obsidian kernel: audit: type=1104 audit(1595293787.428:89): pid=576 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:setcred>
Jul 20 21:09:47 obsidian /usr/lib/gdm-wayland-session[623]: dbus-daemon[623]: [session uid=120 pid=623] Activating service name='org.freedes>
Jul 20 21:09:47 obsidian systemd-logind[459]: Session c1 logged out. Waiting for processes to exit.
Jul 20 21:09:47 obsidian gsd-color[1302]: failed to connect to device: Failed to connect to missing device /org/freedesktop/ColorManager/dev>
Jul 20 21:09:47 obsidian systemd[1]: session-c1.scope: Succeeded.
Jul 20 21:09:47 obsidian systemd-logind[459]: Removed session c1.
Jul 20 21:09:47 obsidian systemd[596]: pulseaudio.service: Succeeded.
Jul 20 21:09:47 obsidian gnome-shell[1141]: Impossible to monitor trash: Gio.IOErrorEnum: Operation not supported
Jul 20 21:09:47 obsidian gnome-shell[1141]: Impossible to enumerate trash children: Gio.IOErrorEnum: Operation not supported
Jul 20 21:09:47 obsidian gnome-shell[1141]: Impossible to monitor trash: Gio.IOErrorEnum: Operation not supported
Jul 20 21:09:47 obsidian gnome-shell[1141]: Impossible to enumerate trash children: Gio.IOErrorEnum: Operation not supported
Jul 20 21:09:48 obsidian kernel: [drm:nv_drm_dumb_create [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to map NvKmsKapiMemor>
Jul 20 21:09:48 obsidian gnome-shell[1141]: meta_drm_buffer_gbm_new failed: gbm_surface_lock_front_buffer failed
Jul 20 21:09:48 obsidian kernel: [drm:nv_drm_dumb_create [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to map NvKmsKapiMemor>
Jul 20 21:09:48 obsidian gnome-shell[1141]: meta_drm_buffer_gbm_new failed: gbm_surface_lock_front_buffer failed
Jul 20 21:09:48 obsidian kernel: [drm:nv_drm_dumb_create [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to map NvKmsKapiMemor>

Offline

Board footer

Powered by FluxBB