** Summary changed: - initramfs-tools script doesn't wait for device initialization, preventing mdadm to assemble md arrays + mount script doesn't wait for root device initialization, preventing udev+mdadm/cryptsetup to assemble md arrays
** Description changed: script '/usr/share/initramfs-tools/scripts/init-premount/udev' launches cold plugging of devices on background, then terminates immediately. this causes mdadm md array assembly to fail, because it doesn't see it's /dev/sd?? devices yet. Ugly hack is to sleep 20 after launching the coldplug. + + The script that mounts the root fs should enter a loop checking if all + the root device has come up, and if that has not happened for a while + start an md device in degraded mode. + + Something like + If rootfs depends on a md device, + while timeout not reached, do: + if root md device has come up, continue booting + wait 0.5 seconds + done. + if timeout has been reached: + mdadm --run <root md device> + + The udev lvm/crypt/ hotplug then goes on, so... + if rootfs then depends on a lvm device + while timeout not reached .... + + (check https://wiki.ubuntu.com/BootDegradedRaid) ** Summary changed: - mount script doesn't wait for root device initialization, preventing udev+mdadm/cryptsetup to assemble md arrays + mount script doesn't poll if root device has been initialized, preventing udev+mdadm/lvm/cryptsetup to do its job -- mount script doesn't poll if root device has been initialized, preventing udev+mdadm/lvm/cryptsetup to do its job https://bugs.launchpad.net/bugs/83025 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs