[gdm/wip/re-read-config: 4/4] Revert "data: Don't race with vendor nvidia driver at startup"




commit 876751b13ffc64ef3b9654bd7fb6151074e9daf2
Author: Ray Strode <rstrode redhat com>
Date:   Tue Mar 1 14:26:25 2022 -0500

    Revert "data: Don't race with vendor nvidia driver at startup"
    
    GDM now blocks itself at runtime until udev is ready, so there's
    no point in delaying GDM startup, too.
    
    This commit reverts udev and systemd logic put in place to stall
    GDM start up until udev finished.

 data/61-gdm.rules.in             | 17 ++---------------
 data/gdm-waiting-on-udev.path.in | 12 ------------
 data/gdm.service.in              |  5 -----
 data/meson.build                 |  9 ---------
 4 files changed, 2 insertions(+), 41 deletions(-)
---
diff --git a/data/61-gdm.rules.in b/data/61-gdm.rules.in
index d4f094ea2..e9c726977 100644
--- a/data/61-gdm.rules.in
+++ b/data/61-gdm.rules.in
@@ -9,15 +9,6 @@ DRIVERS=="simple-framebuffer", GOTO="gdm_nomodeset_end"
 IMPORT{cmdline}="nomodeset", GOTO="gdm_disable_wayland"
 LABEL="gdm_nomodeset_end"
 
-# The vendor nvidia driver has mutiple modules that need to be loaded before GDM can make an
-# informed choice on which way to proceed, so force GDM to wait until NVidia's modules are
-# loaded before starting up.
-KERNEL!="nvidia", GOTO="gdm_nvidia_end"
-SUBSYSTEM!="module", GOTO="gdm_nvidia_end"
-ACTION!="add", GOTO="gdm_nvidia_end"
-RUN+="@bindir@/touch /run/udev/gdm-waiting-on-udev"
-LABEL="gdm_nvidia_end"
-
 # Disable wayland when nvidia modeset is disabled or when drivers are a lower
 # version than 470,
 # For versions above 470 but lower than 510 prefer Xorg,
@@ -30,7 +21,7 @@ ATTR{parameters/modeset}!="Y", GOTO="gdm_disable_wayland"
 # disable wayland for nvidia drivers versions lower than 470
 ATTR{version}=="4[0-6][0-9].*|[0-3][0-9][0-9].*|[0-9][0-9].*|[0-9].*", GOTO="gdm_disable_wayland"
 # For nvidia drivers versions Above 510, keep Wayland by default
-ATTR{version}=="[5-9][1-9][0-9].*", GOTO="gdm_stop_waiting_on_udev"
+ATTR{version}=="[5-9][1-9][0-9].*", GOTO="gdm_end"
 # For nvidia drivers versions 470-495, prefer Xorg by default
 GOTO="gdm_prefer_xorg"
 LABEL="gdm_nvidia_drm_end"
@@ -39,14 +30,10 @@ GOTO="gdm_end"
 
 LABEL="gdm_prefer_xorg"
 RUN+="@libexecdir@/gdm-runtime-config set daemon PreferredDisplayServer xorg"
-GOTO="gdm_stop_waiting_on_udev"
+GOTO="gdm_end"
 
 LABEL="gdm_disable_wayland"
 RUN+="@libexecdir@/gdm-runtime-config set daemon WaylandEnable false"
-GOTO="gdm_stop_waiting_on_udev"
-
-LABEL="gdm_stop_waiting_on_udev"
-RUN+="@bindir@/rm -f /run/udev/gdm-waiting-on-udev"
 GOTO="gdm_end"
 
 LABEL="gdm_end"
diff --git a/data/gdm.service.in b/data/gdm.service.in
index effdf56a0..17e8a8de8 100644
--- a/data/gdm.service.in
+++ b/data/gdm.service.in
@@ -19,11 +19,6 @@ After=rc-local.service plymouth-start.service systemd-user-sessions.service
 # for any reason, make sure plymouth still stops
 OnFailure=plymouth-quit.service
 
-# If our udev rule is still trying to figure out the lay of the land
-# then block for a bit. gdm-waiting-on-udev.path will start us later
-# when appropriate.
-ConditionPathExists=!/run/udev/gdm-waiting-on-udev
-
 [Service]
 ExecStart=${sbindir}/gdm
 KillMode=mixed
diff --git a/data/meson.build b/data/meson.build
index 8764abfeb..2dec4c232 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -149,7 +149,6 @@ gdm_rules = configure_file(
   output: '@BASENAME@',
   configuration: {
     'libexecdir': gdm_prefix / get_option('libexecdir'),
-    'bindir': gdm_prefix / get_option('bindir'),
   },
   install_dir: udev_dir,
 )
@@ -186,14 +185,6 @@ configure_file(
   format: 'cmake'
 )
 
-configure_file(
-  input: 'gdm-waiting-on-udev.path.in',
-  output: '@BASENAME@',
-  configuration: service_config,
-  install_dir: systemd_systemunitdir,
-  format: 'cmake'
-)
-
 gdm_gnome_session_wanted_targets = []
 foreach component: gdm_gnome_user_session_wanted_components
   gdm_gnome_session_wanted_targets += 'Wants=@0@.target'.format(component)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]