1

GDM tries to start a Wayland session but gnome-shell dies with "No GPUs with outputs found". GDM doesn't offer a choice of Wayland sessions as a result.

System has NVIDIA GPU in addition to another graphics card. Driver: NVIDIA 535.154.05

  • /etc/gdm3/custom.conf: commented out the "WaylandEnable=false" line
  • Created /etc/modprobe.d/nvidia.conf with line "options nvidia-drm modeset=1"
  • Removed /usr/lib/udev/rules.d/61-gdm.rules

lspci shows:

00:03.0 VGA compatible controller: ... Device 1111
00:1e.0 3D controller: NVIDIA Corporation TU104GL [Tesla T4] (rev a1)

Extract from journalctl -b:

Feb 21 01:43:45 ord-pd-ldt04 gnome-shell[3872]: Device '/dev/dri/card0' prefers shadow buffer
Feb 21 01:43:45 ord-pd-ldt04 gnome-shell[3872]: Added device '/dev/dri/card0' (nvidia-drm) using non-atomic mode setting.
Feb 21 01:43:45 ord-pd-ldt04 dbus-daemon[3816]: [session uid=129 pid=3816] Successfully activated service 'org.gnome.Identity'
Feb 21 01:43:45 ord-pd-ldt04 dbus-daemon[729]: [system] Activating via systemd: service name='org.freedesktop.UPower' unit='upower.service' requested by ':1.54' (uid=129 pid=3870 comm="/usr/libexec/tracker-miner-fs-3 " label="unco>
Feb 21 01:43:45 ord-pd-ldt04 systemd[1]: Starting Daemon for power management...
Feb 21 01:43:45 ord-pd-ldt04 dbus-daemon[729]: [system] Successfully activated service 'org.freedesktop.UPower'
Feb 21 01:43:45 ord-pd-ldt04 systemd[1]: Started Daemon for power management.
Feb 21 01:43:45 ord-pd-ldt04 org.gnome.Shell.desktop[3872]: Failed to setup: No GPUs with outputs found
Feb 21 01:43:45 ord-pd-ldt04 gnome-session-binary[3847]: DEBUG(+): GsmAutostartApp: (pid:3872) done (status:1)
Feb 21 01:43:45 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[3847]: gnome-session-binary[3847]: DEBUG(+): GsmAutostartApp: (pid:3872) done (status:1)
Feb 21 01:43:45 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[3847]: gnome-session-binary[3847]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1
Feb 21 01:43:45 ord-pd-ldt04 gnome-session-binary[3847]: WARNING: App 'org.gnome.Shell.desktop' exited with code 1

Edit: Weston Tried to start a Weston session from GDM. It fails with "no drm device found".

Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.071] weston 9.0.0
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]:                https://wayland.freedesktop.org
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]:                Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]:                Build: 9.0.0
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.071] Command line: weston
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.071] OS: Linux, 6.5.0-1014-aws, #14~22.04.1-Ubuntu SMP Thu Feb 15 15:27:06 UTC 2024, x86_64
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.071] Starting with no config file.
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.071] Output repaint window is 7 ms maximum.
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.072] Loading module '/usr/lib/x86_64-linux-gnu/libweston-9/drm-backend.so'
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.077] initializing drm backend
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.078] logind: session control granted
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.079] no drm device found
Feb 27 07:50:41 ord-pd-ldt04 /usr/libexec/gdm-wayland-session[343462]: [07:50:41.079] fatal: failed to create compositor backend

Edit: glxinfo glxinfo|grep vendor says:

server glx vendor string: NVIDIA Corporation
client glx vendor string: NVIDIA Corporation
OpenGL vendor string: NVIDIA Corporation

Edit: No GPUs with outputs found This comes from libmutter.so. The function is meta_monitor_manager_native_initable_init and the bit of code that produces the error message is

  if (manager_native->needs_outputs && !can_have_outputs)
    {
      g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND,
                   "No GPUs with outputs found");
      return FALSE;
    }

Built a version of libmutter.so to ignore the error, but that produces a blank screen. So whatever it's looking for is necessary. Need to dig down further to find the root cause.

6
  • Nvidia doesn't like Wayland. What's your use case for Wayland?
    – Daniel T
    Commented Feb 21 at 10:16
  • Would like to try Wayland is all.
    – maqroll
    Commented Feb 21 at 10:58
  • Fastest way is to run Weston inside your existing X11
    – Daniel T
    Commented Feb 21 at 11:07
  • I said inside your existing X11. So log into GNOME with X11, then open terminal and type "weston"
    – Daniel T
    Commented Feb 27 at 16:50
  • 1
    @DanielT: Running Weston inside X11 is too ersatz to be satisfactory. @Hi-Angel: Added info from glxinfo showing NVDIA GPU to be in use.
    – maqroll
    Commented Mar 4 at 3:17

1 Answer 1

0

Got it working.My problems may have been because it's a headless box.

  • Downgraded the NVIDIA driver to 535.129.03.
  • Changed Exec= line in /usr/share/wayland-sessions/gnome-wayland.desktop to Exec=gnome-shell --wayland --virtual-monitor 2056x1329

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .