diff options
Diffstat (limited to 'stand/efi/loader')
| -rw-r--r-- | stand/efi/loader/main.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index 7ff2cf188509..d8508d7d91a0 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -588,6 +588,9 @@ find_currdev(bool do_bootmgr, char *boot_info, size_t boot_info_sz) } #ifdef EFI_ZFS_BOOT + zfsinfo_list_t *zfsinfo = efizfs_get_zfsinfo_list(); + zfsinfo_t *zi; + /* * Did efi_zfs_probe() detect the boot pool? If so, use the zpool * it found, if it's sane. ZFS is the only thing that looks for @@ -595,9 +598,9 @@ find_currdev(bool do_bootmgr, char *boot_info, size_t boot_info_sz) * if we allow specifying which pool to boot from via UEFI variables * rather than the bootenv stuff that FreeBSD uses today. */ - if (pool_guid != 0) { - printf("Trying ZFS pool\n"); - if (probe_zfs_currdev(pool_guid)) + STAILQ_FOREACH(zi, zfsinfo, zi_link) { + printf("Trying ZFS pool 0x%jx\n", zi->zi_pool_guid); + if (probe_zfs_currdev(zi->zi_pool_guid)) return (0); } #endif /* EFI_ZFS_BOOT */ |
