** 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
