Public bug reported: Test environment/steps: 1. A desktop or workstation which containing an iGPU. 2. Plug a nvidia graphic card to the system and installing proprietary nvidia driver (470 in my case) 3. Attach a monitor to dGPU and leave iGPU connect to nothing. (in my test environment, there is the other ethernet card and TBT4 cards) 4. Reboot system.
Based on: $ cat /lib/udev/rules.d/61-gdm.rules # disable Wayland on Hi1710 chipsets ATTR{vendor}=="0x19e5", ATTR{device}=="0x1711", RUN+="/usr/lib/gdm3/gdm-disable-wayland" # disable Wayland when using the proprietary nvidia driver DRIVER=="nvidia", RUN+="/usr/lib/gdm3/gdm-disable-wayland" It will disable wayland by default if proprietary nvidia driver load. But in some race condition cases, the nvidia probe is later than gnome launches. (The fail rate is 6/24.) Thus, ubuntu-gdm has a fix for Bug#1794280 to add "ExecStartPre=@libexecdir@/gdm-wait-for-drm". The gdm-wait-for-drm is intend to make sure all drm udev devices enumerated before launching gdm. It rely on at least one "master-of-seat" graphic card for gdm but it's not rigorous enough. Since most of graphic cards are own "master-of-seat"[1]. In my case, it detects the iGPU is probed but dGPU. However, the display is attached to dGPU. We need to make sure the targeted gpu (connecting to monitor) is probe before launching gdm. [1] https://www.freedesktop.org/wiki/Software/systemd/multiseat/ /lib/udev/rules.d/71-seat.rules /lib/udev/rules.d/71-nvidia.rules ** Affects: gdm3 (Ubuntu) Importance: Undecided Assignee: jeremyszu (os369510) Status: New ** Changed in: gdm3 (Ubuntu) Assignee: (unassigned) => jeremyszu (os369510) ** Description changed: - Test environment: + Test environment/steps: 1. A desktop or workstation which containing an iGPU. 2. Plug a nvidia graphic card to the system and installing proprietary nvidia driver (470 in my case) 3. Attach a monitor to dGPU and leave iGPU connect to nothing. (in my test environment, there is the other ethernet card and TBT4 cards) 4. Reboot system. Based on: - $ cat /lib/udev/rules.d/61-gdm.rules + $ cat /lib/udev/rules.d/61-gdm.rules # disable Wayland on Hi1710 chipsets ATTR{vendor}=="0x19e5", ATTR{device}=="0x1711", RUN+="/usr/lib/gdm3/gdm-disable-wayland" # disable Wayland when using the proprietary nvidia driver DRIVER=="nvidia", RUN+="/usr/lib/gdm3/gdm-disable-wayland" It will disable wayland by default if proprietary nvidia driver load. - But in some race condition cases, the nvidia probe is later than gnome launches. + But in some race condition cases, the nvidia probe is later than gnome launches. (The fail rate is 6/24.) Thus, ubuntu-gdm has a fix for Bug#1794280 to add "ExecStartPre=@libexecdir@/gdm-wait-for-drm". - The gdm-wait-for-drm is intend to make sure all drm udev devices - enumerated before launching gdm. + + The gdm-wait-for-drm is intend to make sure all drm udev devices enumerated before launching gdm. It rely on at least one "master-of-seat" graphic card for gdm but it's not rigorous enough. Since most of graphic cards are own "master-of-seat"[1]. In my case, it detects the iGPU is probed but dGPU. However, the display is attached to dGPU. We need to make sure the targeted gpu (connecting to monitor) is probe before launching gdm. [1] https://www.freedesktop.org/wiki/Software/systemd/multiseat/ /lib/udev/rules.d/71-seat.rules /lib/udev/rules.d/71-nvidia.rules -- You received this bug notification because you are a member of Ubuntu Desktop Bugs, which is subscribed to gdm3 in Ubuntu. https://bugs.launchpad.net/bugs/1958488 Title: [nvidia][xorg] display hangs on boot LOGO To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/1958488/+subscriptions -- desktop-bugs mailing list desktop-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/desktop-bugs