From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: bug#35509: Stopping gdm-service results in an unresponsive system Date: Thu, 02 May 2019 17:46:31 -0400 Message-ID: <877eb8o7fx.fsf@netris.org> References: <877ebbmdhc.fsf@netris.org> <87imuupd0h.fsf@ngyro.com> <87ef5gprmy.fsf@ngyro.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([209.51.188.92]:39183) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hMJZf-00028v-EO for bug-guix@gnu.org; Thu, 02 May 2019 17:49:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hMJZe-0008PI-Ap for bug-guix@gnu.org; Thu, 02 May 2019 17:49:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:33648) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hMJZe-0008PA-7U for bug-guix@gnu.org; Thu, 02 May 2019 17:49:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hMJZe-00017E-0y for bug-guix@gnu.org; Thu, 02 May 2019 17:49:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87ef5gprmy.fsf@ngyro.com> (Timothy Sample's message of "Thu, 02 May 2019 15:45:25 -0400") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Timothy Sample Cc: 35509@debbugs.gnu.org Hi Timothy, Timothy Sample writes: > I have a lead now! At least, I have a way to stop GDM and return to a > working TTY. Assuming that you are working on a TTY with elogind > session =E2=80=9Cc1=E2=80=9D, you can run > > herd stop xorg-server & (sleep 5; loginctl activate c1) > > When GDM exits, it leaves the display in a non-working state. It turns > out elogind knows how to fix this. I=E2=80=99m guessing it does some mag= ic with > the VT_* set of ioctl requests (see =E2=80=9Csrc/basic/terminal-util.c=E2= =80=9D from > elogind). I=E2=80=99m not sure how to get GDM to clean up after itself, = though. > It might be expecting things of elogind that it doesn=E2=80=99t provide (= since > it is not exactly like the original logind from systemd). Thanks for investigating! My first guess is that when GDM is killed, it's leaving the keyboard in RAW mode. Running "kbd_mode -a" might be another way to recover. "Alt + SysRq + r" might be another way. I'll try again after I finish building my post-staging-merge system. https://www.tldp.org/HOWTO/Keyboard-and-Console-HOWTO-9.html I notice that in Debian's start script for gdm3, it runs activate_logind just before launching GDM, where activate_logind is the following Bash function: activate_logind() { # Try to dbus activate logind to avoid a race conditions if we are not # running systemd as PID1 and we have systemd << 204 package installed = (see: # #747292) if [ ! -d /run/systemd/system ] && [ -x /lib/systemd/systemd-logind-lau= nch ]; then dbus-send --system --print-reply --dest=3Dorg.freedesktop.DBus /org/f= reedesktop/DBus \ org.freedesktop.DBus.StartServiceByName string:org.freedesktop.logi= n1 uint32:0 2>&1 > /dev/null fi } The Debian start script is debian/gdm3.init in . The Debian bug referenced above is . Might be worth a try, but admittedly I'm grasping at straws here :) Mark