From 876751b13ffc64ef3b9654bd7fb6151074e9daf2 Mon Sep 17 00:00:00 2001 From: Ray Strode Date: Tue, 1 Mar 2022 14:26:25 -0500 Subject: 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(-) delete mode 100644 data/gdm-waiting-on-udev.path.in (limited to 'data') diff --git a/data/61-gdm.rules.in b/data/61-gdm.rules.in index d4f094ea..e9c72697 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-waiting-on-udev.path.in b/data/gdm-waiting-on-udev.path.in deleted file mode 100644 index ceb03704..00000000 --- a/data/gdm-waiting-on-udev.path.in +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Synchronize GNOME Display Manager with udev -ConditionPathExists=/run/udev/gdm-waiting-on-udev - -[Path] -PathChanged=/run/udev/gdm-waiting-on-udev -Unit=gdm.service - -[Install] -WantedBy=graphical.target - - diff --git a/data/gdm.service.in b/data/gdm.service.in index effdf56a..17e8a8de 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 8764abfe..2dec4c23 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) -- cgit v1.2.1