Bug#791944: /etc/init.d/sendsigs kills systemd-udevd upon shutdown, causing dmsetup to hang

Pali Rohár pali.rohar at gmail.com
Mon Jun 5 08:59:28 BST 2017


On Monday 05 June 2017 00:49:47 Michael Biebl wrote:
> Am 03.06.2017 um 19:44 schrieb Michael Biebl:
> > Am 03.06.2017 um 17:24 schrieb Felipe Sateler:
> > 
> >> diff --git a/debian/udev.init b/debian/udev.init
> >> index ffef3ea6a..dcc5c29d5 100644
> >> --- a/debian/udev.init
> >> +++ b/debian/udev.init
> >> @@ -208,6 +208,7 @@ case "$1" in
> >>      stop)
> >>      log_daemon_msg "Stopping $DESC" "$NAME"
> >>      if start-stop-daemon --stop --name $NAME --user root --quiet --oknodo --retry 5; then
> >> +	rm -f /run/udev/control
> > 
> > I think this is the correct fix, yes.
> > 
> > We need to keep in mind though, that udev currently does not install any
> > stop (K) symlinks in runlevel 0 and 6, but we rely on the killing spree
> > in sendsigs to kill the udev process on shutdown.
> > 
> > Which means, we'd need to start installing those K symlinks in 0 6.
> > For that, edit /etc/init.d/udev, add
> > # Default-Stop: 0 6
> > to the LSB header, then run
> > 
> > # rm /etc/rcS.d/???udev
> > # update-rc.d udev defaults
> 
> We need people using sysvinit to test that proposed fix and report back
> if it fixes that issue and does not introduce any new regressions.

That patch does not work, because order is:

/etc/rc0.d/K08cryptdisks
/etc/rc0.d/K09cryptdisks-early
/etc/rc0.d/K10udev

So that fix is called *after* crytptdisks which is too late.

cryptdisks-early has:

# Should-Start:      udev mdadm-raid
# Should-Stop:       udev mdadm-raid

And cryptdisks has:

# Should-Start:      udev mdadm-raid lvm2
# Should-Stop:       udev mdadm-raid lvm2

-- 
Pali Rohár
pali.rohar at gmail.com





More information about the Pkg-systemd-maintainers mailing list