Hi. I've confirmed this fix by using curtin's "vmtest" test harness.
I've applied the attached patch to curtin at 82622f129b. The patch does: a.) remove the work arounds we had in place to make zfs root work on xenial. b.) enable proposed Then I've run an install of a system that does a installation of zfs on root. ./tools/jenkins-runner examples/tests/zfsroot.yaml:tests/vmtests/test_zfsroot.py:XenialGATestZfsRoot I'll attach the boot and install logs of that system also. ** Patch added: "applied curtin diff" https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1527727/+attachment/5060820/+files/curtin.diff -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to zfs-linux in Ubuntu. https://bugs.launchpad.net/bugs/1527727 Title: grub-probe for zfs assumes all devices prefix with /dev, ignoring /dev/disk/... Status in grub: Unknown Status in grub2 package in Ubuntu: Fix Released Status in grub2-signed package in Ubuntu: Fix Released Status in zfs-linux package in Ubuntu: Fix Released Status in grub2 source package in Xenial: Fix Committed Status in grub2-signed source package in Xenial: Fix Committed Status in zfs-linux source package in Xenial: Fix Released Bug description: [Impact] Installs over ZFS where a ZFS disk is expected to be used as a root device. [Test case] - Run update-grub on a system with a ZFS root filesystem. [Regression Potential] Installs relying on the current broken behavior to avoid listing other operating systems in grub menu may find that new entries are added. --- update-grub runs /usr/sbin/grub-probe Without libzfslinux support compiled in, /usr/sbin/grub-probe runs ["zpool", "status", poolname] to find out ZFS info. zpool responds with device names as used at (I think!) pool creation time. Often, this is /dev/disk/by-id/... names, without the path. grub-probe then parses the output, and takes the names of devices, and if they do not start with a "/", it prepends "/dev/". It then tests the existence of the path name of the device. it fails. grub-probe then returns something like /usr/sbin/grub-probe: error: failed to get canonical path of `/dev /ata-ST31000333AS_99999999-part1'. The actual path is of course /dev/disk/by- id/ST31000333AS_99999999-part1 It can prepend smarter than "/dev" or it can understand ZFS natively, to fix the problem. To manage notifications about this bug go to: https://bugs.launchpad.net/grub/+bug/1527727/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp