FS#44938 - [systemd] initrd is not regenerated after systemd/udev update
Attached to Project:
Arch Linux
Opened by David Ryskalczyk (david_rysk) - Monday, 11 May 2015, 23:13 GMT
Last edited by Dave Reisner (falconindy) - Sunday, 27 November 2016, 23:01 GMT
Opened by David Ryskalczyk (david_rysk) - Monday, 11 May 2015, 23:13 GMT
Last edited by Dave Reisner (falconindy) - Sunday, 27 November 2016, 23:01 GMT
|
Details
Description:
After a systemd update (which also updates udev), the initrd is not regenerated, leading to a version mismatch between the udev in the initrd and the udev and systemd on the rootfs. This causes at least one strange issue with btrfs: systemd/udev 218 to 219: btrfs raid5/6 volumes specified in /etc/fstab refuse to automount with the following error: Job dev-disk-by\x2dlabel-bigarray.device/start timed out. Timed out waiting for device dev-disk-by\x2dlabel-bigarray.device. Dependency failed for /mnt/bigarray. Job mnt-bigarray.mount/start failed with result 'dependency'. Job dev-disk-by\x2dlabel-bigarray.device/start failed with result 'timeout'. Attempting a manual mount of this volume using the mount command causes systemd to immediately unmount it since the unit is failed. Removing the volume from fstab and running systemctl daemon-reload allows manual mounting. After running mkinitcpio -p linux and rebooting (which updates the udev version on the initrd), the problem disappears. I was able to reproduce this through multiple downgrade/upgrade cycles. However, after several reboots (at least 3-5) the problem strangely went away. Is is unclear why, but the problem was reproducible before this. Chances are this problem isn't very visible because if systemd and the kernel are upgraded at the same time, mkinitcpio is automatically run. Additional info: package versions: old: systemd-218-2 (and related); new: systemd-219-6 (and related) fstab line: LABEL=bigarray /mnt/bigarray btrfs autodefrag,compress=lzo,relatime,nofail 0 0 Steps to reproduce: 1. Set up a btrfs raid5 or raid6 array included in /etc/fstab. 2. Downgrade to systemd-218. Regenerate the initrd and reboot. 3. Observe that the btrfs array is mounting automatically, as it should be. 4. Use pacman to update the system to systemd-219 or newer. 5. Reboot and observe that the volume is no longer automatically mounting. 6. Run mkinitcpio to regenerate the initrd and reboot. 7. Observe that the volume is now correctly mounting. |
This task depends upon
Closed by Dave Reisner (falconindy)
Sunday, 27 November 2016, 23:01 GMT
Reason for closing: Fixed
Additional comments about closing: covered by /usr/share/libalpm/hooks/99-linux.hook
Sunday, 27 November 2016, 23:01 GMT
Reason for closing: Fixed
Additional comments about closing: covered by /usr/share/libalpm/hooks/99-linux.hook
Maybe systemd should check to make sure there isn't such a mismatch?
FS#45435My vote (not that I have one) is to add automatically running mkinitcpio