On Fri, 07 Oct 2016 at 10:15:55 +0200, Paride Legovini wrote:
> $(canonical_device "$device" --no-simplify) resolves the UUID entry to
> /dev/sda2, then btrfs is asked to show the list of devices relevant for
> the filesystem contained in that device. (btrfs filesystems can span on
> several devices, like zfs.) This returns again: /dev/sda2. Then the
> canonical_device for /dev/sda2 is looked for, but this fails, as
> canonical_device() wants an UUID or LABEL in order to fully work, unless
> --no-simplify is given.

Right, thanks for looking that up.
 
> Perhaps we should add a --no-simplify to that loop?

Hmm but we'll still want unambiguous crypttab(5) lookups.  It's
unfortunate that `btrfs filesystem` lists /dev/sda2 while the FS
actually uses device UUIDs internally.  I think we need to call blkid(8)
to pass the device's UUID to canonical_device().

I should also point out that this doesn't happen for encrypted root FS,
as `btrfs filesystem` then lists /dev/mapper/….  Hence IMHO the proper
fix is to split initramfs integration into a separate package (cf.
#783297); then if you don't need cryptsetup initramfs integration you
could just uninstall ‘cryptsetup-initramfs’.

-- 
Guilhem.

Attachment: signature.asc
Description: PGP signature

Reply via email to