On Mon, Nov 08, 2021 at 03:00:42PM +0100, Sean Nyekjaer wrote: > On Mon, Nov 08, 2021 at 03:47:36PM +0200, Uoti Urpala wrote: > > On Mon, 2021-11-08 at 12:05 +0100, Sean Nyekjaer wrote: > > > Regarding, > > > https://github.com/systemd/systemd/issues/21203 > > > > > > I think the point of the issue missed when the issue got closed. > > > > > > We have a service that is changing configs for systemd-networkd and > > > issuing a `systemctl restart systemd-networkd`. > > > An other service is checking uptime and issues a `systemctl reboot`, > > > when our max uptime have been exeeced. > > > If restart of systemd-networkd happens while a reboot is in progress, > > > the system will hang "forever" (and continue to pet the watchdog). > > > > The issue shows you using "systemctl start systemd-reboot". That is not > > the right way to reboot. Use "systemctl reboot" instead. I suspect this > > is related to why the reboot may stop partway: your command does not > > start the reboot tasks in "irreversible" mode, which means that any > > following contrary command, such as explicitly (re)starting a unit that > > was going to be shut down, is going to implicitly cancel the > > conflicting reboot action. > > > > You should also be using "try-restart" instead of "restart". If your > > intent is to change configs, you want to say "make sure old configs are > > not in use" rather than "enforce that the service is running now". (I > > think making the "restart" command have "start" semantics was a design > > mistake, and the "try-restart"/"restart" pair would have been better > > named "restart"/"start-or-restart".) > > I can reproduce it with "systemctl reboot"... > > I'll try the "try-restart" option, and report back > > Thanks > "try-restart" does not fix it for the example above. But it does with the original issue where we first noticed this... https://github.com/systemd/systemd/issues/4955#issuecomment-506234412 $ mkdir /run/systemd/network/ $ vi /run/systemd/network/something.network corrupt the file! make it look something like """ [Match] Name=eth* [Net """ $ systemctl try-restart systemd-networkd; systemctl reboot Looks like a fix / workaround /Sean