Comment 0 for bug 1713536

Revision history for this message
bugproxy (bugproxy) wrote :

The udev initramfs-tools boot script does not trigger subsystem "add" uevents. As a result, udev rules that listen to subsystem "add" events are never activated. This problem exists on at least Ubuntu 16.04 and 17.10.

On s390, this results in a boot failure if the kernel is configured to start with an active device black list (kernel parameter cio_ignore=all,!condev). An example for an affected udev rule looks like this:

    ACTION=="add", SUBSYSTEM=="subsystem", KERNEL=="ccw", RUN{program}+="/bin/sh -c 'echo free 0009,ec30,ec32,f5f0-f5f2 > /proc/cio_ignore'"

A proposed fix would be:

Modify /usr/share/initramfs-tools/scripts/init-top/udev:

Replace line
        udevadm trigger --action=add
with
        udevadm trigger --type=subsystems --action=add
        udevadm trigger --type=devices --action=add

This would also be consistent with the steps that the systemd udev coldplug unit file performs (see /lib/systemd/system/systemd-udev-trigger.service).