More details: Doing /sbin/blkid -o udev -p /dev/sda4 ID_FS_LABEL=root ID_FS_LABEL_ENC=root IF_FS_UUID=sekjhfbkejh ... ... ID_PART_ENTRY_SCHEME=gpt ... So apparently, blkid gives the correct informations to udev. Le 04/02/2019 17:15, « initramfs-owner@xxxxxxxxxxxxxxx au nom de LAHAYE Olivier » <initramfs-owner@xxxxxxxxxxxxxxx au nom de olivier.lahaye@xxxxxx> a écrit : Progressing in diagnostic, still need more help. A temporary script named devexists-\x2fdev\x2fdisk\x2fby-label\x2froot.sh has been created in /lib/dracut/hook/initqueue/finished by rootfs-generator.sh. It tests the existence of /dev/disk/by-label/root (normal behavior) PROBLEM: /dev/disk/by-label doesn't exists (thus the script always return 1, thus the finish hook loops forever) blkid lists all partitions including the LABEL=root one (after reporting an error on fd0) /dev/sda4: LABEL="root" UUID="xydfkjhzkfghzv" TYPE="xfs" PARTLABEL="primary" PARTUUID="ssdfighuskdjfhb" I can mount LABEL=root /sysroot with success. In the dmesg I have blk_update_request: I/O error, dev fd0, sector 0 I tried udevadm trigger, but this didn't help. /dev/disk/by-label still missing... (I'm using CentOS-7, kernel 3.10.0-957.1.3.el7.x86_64) Am I facing a kernel bug or is there something I'm doing wrong? (I'm creating the partition table and I format them in the initqueue). Is there something I need to do to inform the kernel that it has to update /dev/disk ? Many thanks for any tips. Cheers, Olivier. Le 04/02/2019 10:40, « initramfs-owner@xxxxxxxxxxxxxxx au nom de LAHAYE Olivier » <initramfs-owner@xxxxxxxxxxxxxxx au nom de olivier.lahaye@xxxxxx> a écrit : Hi, I’m writing a module that requires initqueue/finished test, so I’ve added a script that exits 1 while main initqueue scripts are doing the job and that exits 0 when done (I’ve also tried return instead of exit). Sometime it works perfectly, and sometimes initqueue/finished/myscript is called indefinitely even if I return/exit 0 What could be the reason for Dracut to loop/ignore the /lib/dracut/initqueue/finished/my_script exit code?!?! I’ve tried to remove myself at second run doing rm -f $f and then the system hangs… Wired. I must admit I’m lost. I’ve looked at /sbin/dracut-initqueue (started by systemd) and I don’t understand how this can happen. It looks like systemd somehow restarts dracut-initqueue. Is that possible? What could trigger that? Any idea on how I could track down the problem (rd.debug is way too much verbose) Module code is visible here: https://github.com/finley/SystemImager/tree/initrd-from-imageserver-and-dont-package-initrd/lib/dracut/modules.d/51systemimager Finished script is the following one: https://github.com/finley/SystemImager/blob/initrd-from-imageserver-and-dont-package-initrd/lib/dracut/modules.d/51systemimager/systemimager-wait-imaging.sh Note: I’m using bash in initrd (not dash) Any hint wpould be greatly appreciated. -- Olivier LAHAYE CID & ASSI - DRT Saclay