Subject: Hang on reboot in Guix system
From: [email-masked]
To: [email-masked], Ludovic Courtès <[email-masked]>
Date: Tue, 25 Feb 2025 09:06:00 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

when using a Guix system, it hangs on reboot pretty much every time.

I've tracked it down (using the magic sysrq key) to two processes being 
left over: shepherd(obviously) and virtlogd.

The interesting part of the system config is:

      (service virtlog-service-type
               (virtlog-configuration
                (max-clients 10)))
      (service libvirt-service-type
               (libvirt-configuration
                (keepalive-interval 50)
                (keepalive-count 50)
                (unix-sock-group "libvirt")
                (tls-port "16514")))

Killing virtlogd using sysrq e makes shepherd immediately respawn it 
(!).

Isn't there some shepherd state that says "I'm supposed to shut down, 
don't keep respawning services" ?

For reference, the important sysrq keys are:
   sysrq 9       to increase the log level to 9. After that, you will see 
a line printed every second with the process ids of the processes that 
are still there
   sysrq e       to send SIGTERM to all processes
   sysrq i       to send SIGKILL to all processes
   sysrq t       to see all "tasks"

guix b319256
     repository URL: https://git.savannah.gnu.org/git/guix.git
     branch: master
     commit: b31925665d07acbb049adf702066b95af2b58b4d