[gdm] session: jump to VT up front for X sessions
- From: Ray Strode <halfline src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gdm] session: jump to VT up front for X sessions
- Date: Fri, 27 Feb 2015 15:33:16 +0000 (UTC)
commit 5dcbc5ac1e8877787587d916a0bbcc6c4136a7c0
Author: Ray Strode <rstrode redhat com>
Date: Fri Feb 27 07:49:17 2015 -0500
session: jump to VT up front for X sessions
It turns out that in order for X to work without being
run as root, it needs to have its VT be active at start up.
This is because it bails out of some of its logind codepaths
if it gets given a "paused" device by logind, and then sometimes
fails in its fallback code paths as it races to open
/dev/dri/card0 while logind is still giving the user
permissions to it.
As a workaround, until X is fixed, this commit jumps to the VT up
front before starting X. That adds flicker, which we'll address in
a follow up commit.
https://bugzilla.gnome.org/show_bug.cgi?id=745031
daemon/gdm-session.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/daemon/gdm-session.c b/daemon/gdm-session.c
index c66a6ff..27eb531 100644
--- a/daemon/gdm-session.c
+++ b/daemon/gdm-session.c
@@ -2945,10 +2945,11 @@ gdm_session_get_display_mode (GdmSession *self)
return GDM_SESSION_DISPLAY_MODE_LOGIND_MANAGED;
}
- /* user based X sessions start on a new VT now and are managed
- * by logind
+ /* user based X sessions need us to allocate a VT for them
+ * and jump to it up front, because the X servers logind support
+ * currently relies on X running in the foreground VT.
*/
- return GDM_SESSION_DISPLAY_MODE_LOGIND_MANAGED;
+ return GDM_SESSION_DISPLAY_MODE_NEW_VT;
}
void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]