Re: ZFS i/o error in recent 12.0

From: Markus Wild <fbsd-lists_at_dudes.ch>
Date: Tue, 20 Mar 2018 08:50:28 +0100
Hi there,

> I've been encountered suddenly death in ZFS full volume
> machine(r330434) about 10 days after installation[1]:
> 
> ZFS: i/o error - all block copies unavailable
> ZFS: can't read MOS of pool zroot
> gptzfsboot: failed to mount default pool zroot
> 

>     268847104  30978715648      4  freebsd-zfs  (14T)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^


I had faced the exact same issue on a HP Microserver G8 with 8TB disks and a 16TB zpool on FreeBSD 11 about a year ago.
My conclusion was, that over time (and updating the kernel), the blocks for that kernel file were reallocated to a
later spot on the disks, and that however the loader fetches those blocks, it now failed doing so (perhaps a 2/4TB
limit/bug with the BIOS of that server? Unfortunately, there was no UEFI support for it, don't know whether that
changed in the meantime). The pool was always importable fine with the USB stick, the problem was only with the boot
loader. I worked around the problem stealing space from the swap partitions on two disks to build a "zboot" pool, just
containing the /boot directory, having the boot loader load the kernel from there, and then still mount the real root
pool to run the system off using loader-variables in loader.conf of the boot pool. It's a hack, but it's working
fine since (the server is being used as a backup repository). This is what I have in the "zboot" boot/loader.conf:

# zfs boot kludge due to buggy bios
vfs.root.mountfrom="zfs:zroot/ROOT/fbsd11"


If you're facing the same problem, you might give this a shot? You seem to have plenty of swap to canibalize as well;)

Cheers,
Markus
Received on Tue Mar 20 2018 - 07:02:05 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:15 UTC