This is a precursor to eventually allowing zfsbootcfg(8) to work in !i386 loaders.
efiloader has been updated to setup vfs.zfs.boot.primary_pool and vfs.zfs.boot.primary_pool as a test for correctness, that change can easily be separated out. The pool/vdev guids in efiloader are now cleared if we fail to probe that pool as a boot pool, then later setup if we find another ZFS pool to /boot from and the vfs.zfs.boot.* vars are setup only once we've finished our currdev probe and determined a sane ZFS pool to boot from.
The efiloader changes will likely be committed separate, or they could wait until efiloader actually learns how to honor pad2 configuration. I lean towards committing them now and working zfsbootcfg over a little bit to not operate if machdep.bootmethod != BIOS.