Check for "boot_vga" when creating the display

Resolves: https://redhat.atlassian.net/browse/RHEL-168869
This commit is contained in:
Joan Torres Lopez 2026-04-23 11:17:10 +02:00
parent bab2107079
commit 9fcc5d2156
No known key found for this signature in database
2 changed files with 57 additions and 0 deletions

View File

@ -0,0 +1,53 @@
From 85982d61790dbbf940c12ad6e747bb1ada0b1355 Mon Sep 17 00:00:00 2001
From: ceroma <165659-ceroma@users.noreply.gitlab.gnome.org>
Date: Thu, 18 Dec 2025 06:00:26 +0000
Subject: [PATCH] local-display-factory: look for 'boot_display' sysfs attr
Part-of: <https://gitlab.gnome.org/GNOME/gdm/-/merge_requests/343>
---
daemon/gdm-local-display-factory.c | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/daemon/gdm-local-display-factory.c b/daemon/gdm-local-display-factory.c
index 63117e1..23344fa 100644
--- a/daemon/gdm-local-display-factory.c
+++ b/daemon/gdm-local-display-factory.c
@@ -716,6 +716,7 @@ udev_is_settled (GdmLocalDisplayFactory *factory)
const gchar *id_path = g_udev_device_get_property (device, "ID_PATH");
g_autoptr (GUdevDevice) platform_device = NULL;
g_autoptr (GUdevDevice) pci_device = NULL;
+ g_autoptr (GUdevDevice) drm_device = NULL;
if (g_str_has_prefix (id_path, "platform-simple-framebuffer")) {
node = next_node;
@@ -743,10 +744,28 @@ udev_is_settled (GdmLocalDisplayFactory *factory)
factory->seat0_has_boot_up_graphics = TRUE;
is_settled = TRUE;
break;
- } else {
- g_debug ("GdmLocalDisplayFactory: Found secondary PCI graphics adapter, not proceeding yet.");
}
}
+
+ drm_device = g_udev_device_get_parent_with_subsystem (device, "drm", NULL);
+
+ if (drm_device != NULL) {
+ gboolean boot_display;
+
+ boot_display = g_udev_device_get_sysfs_attr_as_int (drm_device, "boot_display");
+
+ if (boot_display == 1) {
+ g_debug ("GdmLocalDisplayFactory: Found primary PCI graphics adapter, proceeding.");
+ factory->seat0_has_boot_up_graphics = TRUE;
+ is_settled = TRUE;
+ break;
+ }
+ }
+
+ if (pci_device != NULL || drm_device != NULL) {
+ g_debug ("GdmLocalDisplayFactory: Found secondary PCI graphics adapter, not proceeding yet.");
+ }
+
node = next_node;
}

View File

@ -63,6 +63,10 @@ Patch: 0001-data-Add-support-for-unified-authentication.patch
# https://gitlab.gnome.org/GNOME/gdm/-/merge_requests/317
Patch: 0001-session-Don-t-report-service-unavailable-error-as-fa.patch
# RHEL-168869
# https://gitlab.gnome.org/GNOME/gdm/-/merge_requests/343
Patch: 0001-local-display-factory-look-for-boot_display-sysfs-at.patch
BuildRequires: dconf
BuildRequires: desktop-file-utils
BuildRequires: gettext-devel