Here's the short summary: libzfs has a license that (most people agree) does not let grub link against it.
Linking against it is assumed by grub upstream to be the right way. But they have a fallback way that involves running a zfs utils command to list its devices. The devices the zfs utils program prints are not full device names but things like "hda1" or "ata-ST12346124623-ajqwers". Those are names that were scanned when you fabricated and imported the zfs device pool. There's no way to get exact paths. Grub assumes they're all device names that are directly within /dev/ directory, and that's often wrong if the user used /dev/by-id/ paths to set up zfs pools. ZFS-knowledgeable people are *really* likely to have used unambiguous device names. So, this patch in #4 takes the professed device file name and tests whether a name exists before printing it. It goes from most unique names to least unique names. It's incredibly unlikely to collide. bus-model- serial names are unlike uuid names, and unlike sdx names. It should be safe in all cases. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1527727 Title: grub-probe for zfs assumes all devices prefix with /dev, ignoring /dev/disk/... To manage notifications about this bug go to: https://bugs.launchpad.net/grub/+bug/1527727/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs