Hello Ben and Christoph, Ben Hutchings [2016-01-29 13:50 +0000]: > # systemd maintainers do not want to handle ROOTDELAY
For the record, this isn't just a question of *where* to put a "sleep $ROOTDELAY" -- my point is, the previous sleep was entirely non-sensical, and moving it around would still be wrong: - Sleeping some extra seconds *before* the "wait for root fs" loop in local_device_setup() will either be a no-op (if $ROOTDELAY is shorter than the actual time that it takes for the root device to appear), or it's unnecessary waiting (if $ROOTDELAY is longer than necessary). This would have been the case in udev's i-t script, as that runs before "local" (IIRC the sleep used to be in init-top/). - Sleeping some extra seconds *after* the "wait for root fs" loop would be slightly less pointless, as that actually could make a difference (like waiting for more RAID mirror members to join before you boot the system). Still wrong, but at least not a no-op. But if booting a system without it fails, as "I always get a degraded array activated" just means that mdadm's initramfs-tools hook does not do a thorough enough job to assemble the root /dev/md?, or rather, does not wait until enough members are online. This should be done properly for every system with a dynamic waiting loop, we shouldn't expect users to figure out an appropriate $ROOTDELAY by themselves. Static sleeps are never the right answer. So please don't put this into initramfs-tools either -- let's find out what really goes wrong here and fix it properly? Thanks, Martin -- Martin Pitt | http://www.piware.de Ubuntu Developer (www.ubuntu.com) | Debian Developer (www.debian.org)