On Tue, Nov 08, 2022 at 12:22:36AM +0100, Arsen Arsenović via Grub-devel wrote: > zpool status by default prints basenames of VDEVs, which means that GRUB > would have to go around guessing to see whether a VDEV exists. Instead, > it'd be more robust to simply tell zpool to give us full paths to VDEVs > via -P.
Missing "Signed-off-by: Arsen Arsenović <ar...@aarsen.me>" line. I can add it on your behalf if you are OK with it. Otherwise Reviewed-by: Daniel Kiper <daniel.ki...@oracle.com>... I will commit this patch in a week or so if I do not hear any objections from folks more experienced with ZFS than I. Daniel > --- > Hey there, > > While setting up a new GNU+Linux install on a ZFS root, using /dev/disk/by-id/ > aliases for VDEVs rather than just /dev/?d* nodes, grub-mkconfig started > failing as a result of (for instance) /dev/ata-... not existing. This was > caused by a workaround for zfs status not printing full paths to VDEVs by > default, but this can be solved more directly by just telling zpool status to > print full paths instead. > > Apologies if I missed anything, I'm writing this in a hurry during a very > hectic week. > > Thanks! > > grub-core/osdep/unix/getroot.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/grub-core/osdep/unix/getroot.c b/grub-core/osdep/unix/getroot.c > index 7d2a29f31..cde821eb9 100644 > --- a/grub-core/osdep/unix/getroot.c > +++ b/grub-core/osdep/unix/getroot.c > @@ -229,14 +229,15 @@ grub_util_find_root_devices_from_poolname (char > *poolname) > char name[PATH_MAX + 1], state[257], readlen[257], writelen[257]; > char cksum[257], notes[257]; > unsigned int dummy; > - const char *argv[4]; > + const char *argv[5]; > pid_t pid; > int fd; > > argv[0] = "zpool"; > argv[1] = "status"; > - argv[2] = poolname; > - argv[3] = NULL; > + argv[2] = "-P"; > + argv[3] = poolname; > + argv[4] = NULL; > > pid = grub_util_exec_pipe (argv, &fd); > if (!pid) _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel