all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Clément Lassieur" <clement@lassieur.org>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 26931-done@debbugs.gnu.org
Subject: bug#26931: GuixSD rebooting fails when tmux is running
Date: Mon, 28 Aug 2017 10:30:37 +0200	[thread overview]
Message-ID: <87efrwt7pu.fsf@lassieur.org> (raw)
In-Reply-To: <87mv6kgkyr.fsf@gnu.org>

Ludovic Courtès <ludo@gnu.org> writes:

> Hi,
>
> Leo Famulari <leo@famulari.name> skribis:
>
>> On Sun, May 14, 2017 at 11:36:17PM +0200, Ludovic Courtès wrote:
>>> What does /var/log/shepherd.log show around the time where you hit
>>> “halt”?
>>> 
>>> I get something like this:
>>> 
>>> --8<---------------cut here---------------start------------->8---
>>> 18:06:26 Service mcron has been stopped.
>>> 18:06:26 sending all processes the TERM signal
>>
>> For me, this is where it gets stuck:
>>
>> ------
>> 2017-05-16 19:12:53 sending all processes the TERM signal
>> 2017-05-16 19:12:58 waiting for process termination (processes left: (1 494)) 
>> 2017-05-16 19:13:00 waiting for process termination (processes left: (1 494)) 
>> 2017-05-16 19:13:02 waiting for process termination (processes left: (1 494)) 
>> ------
>>
>> In my experience, it will wait here forever.
>>
>> And from `ps aux`:
>>
>> leo        494  0.0  0.1  27232  3676 ?        Ss   19:12   0:00 tmux
>
> The bug was 100% reproducible in a VM, and AFAICS it is fixed by
> 7f090203d5fb033eb1b64778b03afad5bb35f5f2.
>
> The problem was that the tmux server process would be left as a zombie,
> and then the loop would always see it because the parent process of the
> tmux server process is PID1 and for some reason the PID1 either didn’t
> get SIGCHLD or the handler didn’t run.
>
> The test that this commit adds does exactly the same thing: launch tmux
> and then invoke “halt”.  I tried to create a synthetic test not
> involving tmux, simply creating a process that gets PID1 as its parent,
> but it wouldn’t trigger the bug.  I’m unclear as to why tmux triggers it
> and no that other simple test.

FYI I have the exact same problem with guix-publish: I have to do 'herd
stop guix-publish', otherwise I can't reboot.  I'll report a bug soon.
I would be interested to know if someone else reproduces it.

  reply	other threads:[~2017-08-28  8:31 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-14 19:30 bug#26931: GuixSD rebooting fails when tmux is running Leo Famulari
2017-05-14 21:36 ` Ludovic Courtès
2017-05-16 23:18   ` Leo Famulari
2017-05-17  7:39     ` Ludovic Courtès
2017-05-18  1:13       ` Leo Famulari
2017-05-18  9:06         ` Ludovic Courtès
2017-05-18 12:22           ` ng0
2017-08-28  8:22     ` Ludovic Courtès
2017-08-28  8:30       ` Clément Lassieur [this message]
2017-08-28 10:16         ` Ludovic Courtès
2017-08-30  7:35           ` Clément Lassieur
2017-08-30  8:39             ` Ludovic Courtès
2017-08-28  8:50       ` ng0
2017-08-28 10:18         ` Ludovic Courtès

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

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

  git send-email \
    --in-reply-to=87efrwt7pu.fsf@lassieur.org \
    --to=clement@lassieur.org \
    --cc=26931-done@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.