** Description changed:

+ SRU justification:
+ 
+ [Impact]
+ 
+  * The NX server (and derivatives e.g. FreeNX, X2Go) and Xvnc server
+ (and derivatives e.g. tightvncserver, xrdp) do not support the IDLETIME
+ counter. Violating the assumption that this is available leads to gnome-
+ session (in trusty) or unity-settings-daemon (in utopic) crashing when
+ trying to set up an idle monitor.
+ 
+  * This bug renders GNOME Flashback unusable on the mentioned X servers.
+ Per the justification in bug 1251281, these collectively affect quite a
+ few users, particularly on the LTS which tends to be chosen when setting
+ up a terminal server.
+ 
+ * The proposed patch adds missing precondition checks to
+ gnome_idle_monitor_get_idletime, avoiding the crash. Other public entry
+ points to the idle monitor library already have similar checks.
+ 
+ [Test Case]
+ 
+  * Install gnome-session-flashback, tightvncserver, and vncviewer.
+ 
+  * If bug 1251281 is not fixed in -updates yet: install gnome-session-
+ bin from -proposed (needed for --disable-acceleration-check).
+ 
+  * Create ~/.vnc/xstartup with the following content (3 lines):
+ 
+ #!/bin/sh
+ export STARTUP="gnome-session --session=gnome-flashback 
--disable-acceleration-check"
+ exec /etc/X11/Xsession
+ 
+  * Make it executable: chmod +x ~/.vnc/xstartup
+ 
+  * Log out from the desktop, log in on a tty, and run: vncserver :1
+ 
+  * Log in to the desktop as a guest, and run: vncviewer :1
+ 
+ Expected results: a GNOME Flashback VNC session is started.
+ 
+ Actual results:
+ - trusty: gnome-session crashes on startup.
+ - utopic: gnome-session starts, but unity-settings-daemon crashes, so 
gnome-session gives up shortly after (because it's a required component).
+ 
+ [Regression Potential]
+ 
+  * The patch was accepted in unity-settings-daemon for vivid and there
+ were no regression reports so far.
+ 
+  * There should be no changes observed under a conventional local (Xorg)
+ session.
+ 
+ [Other Info]
+  
+  * Packages for testing are available in ppa:rtandy/flashback. So far at 
least one user reported success using those packages in comment 68 on bug 
1251281.
+ 
+ Original description:
+ 
  The X server used by FreeNX and X2Go does not support the IDLETIME
  counter. This eventually leads to a NULL pointer dereference by gnome-
  session due to a missing parameter check in
  gnome_idle_monitor_get_idletime. This renders GNOME Flashback unusable
  via FreeNX/X2Go in Trusty.
  
  Utopic and newer are not affected and the patch is not applicable as the
  GnomeIdleMonitor implementation was rewritten. Saucy is also affected
  but is EOL, however I would like to fix this in Trusty as the patch is
  tiny and IMO obviously correct.
  
  This and bug #1251281 are the only bugs preventing GNOME Flashback being
  used via FreeNX/X2Go in Trusty; and the latter has an easy workaround
  (divert the acceleration-check helper and replace it with /bin/true) and
  may be fixed properly soon.
  
  I would be happy to prepare a debdiff and fill out the SRU template if a
  sponsor agrees that the patch is SRUable.
  
  ProblemType: Crash
  DistroRelease: Ubuntu 14.04
  Package: gnome-session-bin 3.9.90-0ubuntu12 [modified: 
usr/lib/gnome-session/gnome-session-check-accelerated 
usr/lib/gnome-session/gnome-session-check-accelerated-helper]
  ProcVersionSignature: Ubuntu 3.13.0-32.57-generic 3.13.11.4
  Uname: Linux 3.13.0-32-generic x86_64
  ApportVersion: 2.14.1-0ubuntu3.6
  Architecture: amd64
  CasperVersion: 1.340
  Date: Thu Jan 29 19:28:42 2015
  ExecutablePath: /usr/bin/gnome-session
  ExecutableTimestamp: 1394758239
  LiveMediaBuild: Ubuntu 14.04.1 LTS "Trusty Tahr" - Release amd64 (20140722.2)
  ProcCmdline: /usr/bin/gnome-session --session=gnome-flashback
  ProcCwd: /home/ubuntu
  ProcEnviron:
-  PATH=(custom, no user)
-  XDG_RUNTIME_DIR=<set>
-  LANG=en_US.UTF-8
-  SHELL=/bin/bash
-  LD_LIBRARY_PATH=<set>
+  PATH=(custom, no user)
+  XDG_RUNTIME_DIR=<set>
+  LANG=en_US.UTF-8
+  SHELL=/bin/bash
+  LD_LIBRARY_PATH=<set>
  SegvAnalysis:
-  Segfault happened at: 0x7fb690b29196 <gnome_idle_monitor_get_idletime+6>:    
mov    0x18(%rdi),%rax
-  PC (0x7fb690b29196) ok
-  source "0x18(%rdi)" (0x00000018) not located in a known VMA region (needed 
readable region)!
-  destination "%rax" ok
+  Segfault happened at: 0x7fb690b29196 <gnome_idle_monitor_get_idletime+6>:    
mov    0x18(%rdi),%rax
+  PC (0x7fb690b29196) ok
+  source "0x18(%rdi)" (0x00000018) not located in a known VMA region (needed 
readable region)!
+  destination "%rax" ok
  SegvReason: reading NULL VMA
  Signal: 11
  SourcePackage: gnome-session
  StacktraceTop:
-  gnome_idle_monitor_get_idletime (monitor=0x0) at gnome-idle-monitor.c:613
-  reset_idle_watch (presence=0x7fb6780036f0) at gsm-presence.c:196
-  gsm_presence_set_idle_enabled (presence=0x7fb6780036f0, enabled=1) at 
gsm-presence.c:354
-  start_phase (manager=manager@entry=0x1658100) at gsm-manager.c:1568
-  end_phase (manager=manager@entry=0x1658100) at gsm-manager.c:580
+  gnome_idle_monitor_get_idletime (monitor=0x0) at gnome-idle-monitor.c:613
+  reset_idle_watch (presence=0x7fb6780036f0) at gsm-presence.c:196
+  gsm_presence_set_idle_enabled (presence=0x7fb6780036f0, enabled=1) at 
gsm-presence.c:354
+  start_phase (manager=manager@entry=0x1658100) at gsm-manager.c:1568
+  end_phase (manager=manager@entry=0x1658100) at gsm-manager.c:580
  Title: gnome-session crashed with SIGSEGV in gnome_idle_monitor_get_idletime()
  UpgradeStatus: No upgrade log present (probably fresh install)
  UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1416081

Title:
  (FreeNX/X2Go) gnome-session crashed with SIGSEGV in
  gnome_idle_monitor_get_idletime()

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gnome-desktop3/+bug/1416081/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to