Package: gdm3 Version: 3.12.2-2 Severity: important Tags: upstream Dear Maintainer,
We've been puzzled to see that when using recent gdm3 and gnome3, our application stopped receiving SIGUSR1 signals. Digging into the issue, we found this gdm commit that seems to block the SIGUSR1 signal in a process-wide fashion: commit 956d7d1c7a0cfbf2beacdb9e88e645e15ad32047 Author: Jasper St. Pierre <[email protected]> Date: Fri Feb 14 14:32:50 2014 -0500 server: Process SIGUSR1 more carefully If the slave is removed as a separate process, it means that we need to be more careful with our handling of SIGUSR1. If multiple X servers are launched at once, we need to use siginfo_t to get the PID of the thing that sent the user signal, and make sure we signal the correct GdmServer. glib doesn't have native siginfo support, so do it ourselves by using a worker thread that spins around waiting for sigwaitinfo. https://bugzilla.gnome.org/show_bug.cgi?id=724382 Our issue is that this signal mask blocking of SIGUSR1 trickles down to every application launched by the window manager. This breaks POSIX guarantees about signal masks (see signal(7)). We would expect SIGUSR1 to be delivered to the application by default. Moreover, reading the commit, we notice that the intent using sigprocmask in sigusr1_thread_main() is to handle SIGUSR1, but the code actually blocks SIGUSR1. This is exactly the opposite of what is expected. Therefore, we can expect that the signal is never handled by sigusr1_thread_main, so there are probably other issues hidden under this. Also, we would recommend using pthread_sigmask rather than sigprocmask so the effect of the signal masking only applies to the thread running sigusr1_thread_main. Thanks, Mathieu -- System Information: Debian Release: jessie/sid APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.14-1-amd64 (SMP w/4 CPU cores) Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages gdm3 depends on: ii accountsservice 0.6.37-2 ii adduser 3.113+nmu3 ii dconf-cli 0.20.0-2 ii dconf-gsettings-backend 0.20.0-2 ii debconf [debconf-2.0] 1.5.53 ii gir1.2-gdm3 3.12.2-2 ii gnome-session [x-session-manager] 3.12.1-3 ii gnome-session-bin 3.12.1-3 ii gnome-session-flashback [x-session-manager] 3.8.0-3 ii gnome-settings-daemon 3.12.2-1 ii gnome-shell 3.12.2-3 ii gnome-terminal [x-terminal-emulator] 3.12.3-1 ii gsettings-desktop-schemas 3.12.2-1 ii libaccountsservice0 0.6.37-2 ii libatk1.0-0 2.12.0-1 ii libaudit1 1:2.3.7-1 ii libc6 2.19-7 ii libcairo-gobject2 1.12.16-2 ii libcairo2 1.12.16-2 ii libcanberra-gtk3-0 0.30-2 ii libcanberra0 0.30-2 ii libgdk-pixbuf2.0-0 2.30.7-1 ii libgdm1 3.12.2-2 ii libglib2.0-0 2.40.0-3 ii libglib2.0-bin 2.40.0-3 ii libgtk-3-0 3.12.2-1+b1 ii libpam-modules 1.1.8-3 ii libpam-runtime 1.1.8-3 ii libpam-systemd 208-6 ii libpam0g 1.1.8-3 ii libpango-1.0-0 1.36.3-1 ii libpangocairo-1.0-0 1.36.3-1 ii librsvg2-common 2.40.2-1 ii libselinux1 2.3-1 ii libsystemd-daemon0 208-6 ii libsystemd-id128-0 208-6 ii libsystemd-journal0 208-6 ii libsystemd-login0 208-6 ii libwrap0 7.6.q-25 ii libx11-6 2:1.6.2-2 ii libxau6 1:1.0.8-1 ii libxdmcp6 1:1.1.1-1 ii libxrandr2 2:1.4.2-1 ii lsb-base 4.1+Debian13 ii metacity [x-window-manager] 1:2.34.13-1 ii policykit-1 0.105-6 ii twm [x-window-manager] 1:1.0.8-1 ii ucf 3.0030 ii x11-common 1:7.7+7 ii x11-xserver-utils 7.7+3 ii xfce4-session [x-session-manager] 4.10.1-6 ii xfwm4 [x-window-manager] 4.10.1-2 ii xterm [x-terminal-emulator] 308-1 Versions of packages gdm3 recommends: ii at-spi2-core 2.12.0-2 ii desktop-base 7.0.3 ii gnome-icon-theme 3.12.0-1 ii gnome-icon-theme-symbolic 3.12.0-1 ii x11-xkb-utils 7.7+1 ii xserver-xephyr 2:1.16.0-1 ii xserver-xorg 1:7.7+7 ii zenity 3.12.1-1 Versions of packages gdm3 suggests: pn gnome-orca <none> ii libpam-gnome-keyring 3.8.2-2+b1 -- debconf information: gdm3/daemon_name: /usr/sbin/gdm3 * shared/default-x-display-manager: gdm3 -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

