--- Begin Message ---
Subject: |
GuixSD rebooting fails when tmux is running |
Date: |
Sun, 14 May 2017 15:30:43 -0400 |
User-agent: |
Mutt/1.8.2 (2017-04-18) |
When tmux is running, GuixSD fails to reboot. No more details yet, but
confirmation from at least 3 users:
[19:24:57] <CharlieBrown> My system can't shut itself down. Once it says
everything is shut down, I have to power off with the power button.
[19:25:05] <lfam> CharlieBrown: I've had that issue before
[19:25:12] <lfam> CharlieBrown: Are you using tmux or screen?
[19:25:23] <CharlieBrown> lfam: Yes.
[19:25:38] <lfam> CharlieBrown: I haven't seriously debugged yet, but I think
Shepherd is failing to kill tmux, preventing shutdown
[19:25:47] <paroneayea> must be that your computer doesn't want to shut down
screen
[19:25:51] <CharlieBrown> lfam: :-(
[19:25:53] <paroneayea> because it's using a screen-saver
[19:25:57] <paroneayea> sorry, bad pun
[19:25:59] <lfam> Lol
[19:26:21] <lfam> I should make a bug report
[19:26:36] <lfam> CharlieBrown: Tmux or screen?
[19:26:37] <ng0> I have this bug for 2 years now.. so it's a bug.
[19:26:46] <lfam> And ng0, tmux or screen?
[19:26:46] <ng0> here it is tmux
[19:27:07] <lfam> It's quite bad for remote machines. It breaks rebooting
completely
[19:27:20] <CharlieBrown> lfam: tmux
https://gnunet.org/bot/log/guix/2017-05-14#T1386137
signature.asc
Description: PGP signature
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#26931: GuixSD rebooting fails when tmux is running |
Date: |
Mon, 28 Aug 2017 10:22:52 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) |
Hi,
Leo Famulari <address@hidden> 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 PID 1 and for some reason the PID 1 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 PID 1 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.
Thanks,
Ludo’.
--- End Message ---