unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Mark H Weaver <mhw@netris.org>
To: Timothy Sample <samplet@ngyro.com>
Cc: 35509@debbugs.gnu.org
Subject: bug#35509: Stopping gdm-service results in an unresponsive system
Date: Thu, 02 May 2019 17:46:31 -0400	[thread overview]
Message-ID: <877eb8o7fx.fsf@netris.org> (raw)
In-Reply-To: <87ef5gprmy.fsf@ngyro.com> (Timothy Sample's message of "Thu, 02 May 2019 15:45:25 -0400")

Hi Timothy,

Timothy Sample <samplet@ngyro.com> 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 “c1”, 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’m guessing it does some magic with
> the VT_* set of ioctl requests (see “src/basic/terminal-util.c” from
> elogind).  I’m not sure how to get GDM to clean up after itself, though.
> It might be expecting things of elogind that it doesn’t 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-launch ]; then
      dbus-send --system --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus \
        org.freedesktop.DBus.StartServiceByName string:org.freedesktop.login1 uint32:0 2>&1 > /dev/null
    fi
  }

The Debian start script is debian/gdm3.init in
<http://deb.debian.org/debian/pool/main/g/gdm3/gdm3_3.22.3-3+deb9u2.debian.tar.xz>.

The Debian bug referenced above is <https://bugs.debian.org/747292>.

Might be worth a try, but admittedly I'm grasping at straws here :)

       Mark

  reply	other threads:[~2019-05-02 21:49 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-30 20:42 bug#35509: Stopping gdm-service results in an unresponsive system Mark H Weaver
2019-05-01 12:36 ` Timothy Sample
2019-05-02 19:45   ` Timothy Sample
2019-05-02 21:46     ` Mark H Weaver [this message]
2019-05-03  2:15       ` Timothy Sample

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877eb8o7fx.fsf@netris.org \
    --to=mhw@netris.org \
    --cc=35509@debbugs.gnu.org \
    --cc=samplet@ngyro.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).