I have a 2 drive zmirror with 16TB drives, everything in zroot. x86_64. Automatic ZFS install. After a reboot, without notable changes to the filesystem, I'm getting these kinds of boot errors.
I seem to get them whether I try BIOS booting or UEFI booting.
I can mount the filesystem and all looks well. I did a scrub and there's no errors.
I've read things suggesting that zroot should be 1TB or smaller, in case /boot stuff is located more than 1TB out in the drive. I'm pretty sure UEFI is supposed to work fine in these cases as well.
At a bit of a loss. Debating just reinstalling to get the machine going again, but very perplexing and am wondering what wrong.
Current synopsis as of 2024-04-19:
I cannot reproduce this with a 1TB or 2TB drive. The 16TB drives, by themselves, or in a mirror, will do this readily. This seems to be some kind of size allocation issue with the larger drives, perhaps on certain UEFI firmware versions.
16TB drives with automatic UFS install will not boot, period.
Solved!
This was an issue with the UEFI configuration on my particular hardware. Nothing to do with FreeBSD at all. ZFS just took longer to trigger the issue, for whatever reason.
Under PCIe/PCI/PnP Configuration in the BIOS, "Launch Storage OpRom Policy" must be set to "EFI Compatible" or something along those lines. It's required to reliably boot drives larger than 2TB.
Code:
zio_read error: 5
zio_read error: 5
zio_read error: 5
ZFS: i/o error - all block copies unavailable
ZFS: failed to read pool zroot directory object
Can't find /boot/zfsloader
Can't find /boot/loader
Can't find /boot/kernel/kernel
I seem to get them whether I try BIOS booting or UEFI booting.
I can mount the filesystem and all looks well. I did a scrub and there's no errors.
I've read things suggesting that zroot should be 1TB or smaller, in case /boot stuff is located more than 1TB out in the drive. I'm pretty sure UEFI is supposed to work fine in these cases as well.
At a bit of a loss. Debating just reinstalling to get the machine going again, but very perplexing and am wondering what wrong.
Current synopsis as of 2024-04-19:
I cannot reproduce this with a 1TB or 2TB drive. The 16TB drives, by themselves, or in a mirror, will do this readily. This seems to be some kind of size allocation issue with the larger drives, perhaps on certain UEFI firmware versions.
16TB drives with automatic UFS install will not boot, period.
Solved!
This was an issue with the UEFI configuration on my particular hardware. Nothing to do with FreeBSD at all. ZFS just took longer to trigger the issue, for whatever reason.
Under PCIe/PCI/PnP Configuration in the BIOS, "Launch Storage OpRom Policy" must be set to "EFI Compatible" or something along those lines. It's required to reliably boot drives larger than 2TB.
Last edited: