Date: Sat, 14 Mar 2020 15:29:41 +0100 From: Willem Jan Withagen <wjw@digiware.nl> To: Peter Eriksson <pen@lysator.liu.se> Cc: FreeBSD Filesystems <freebsd-fs@freebsd.org> Subject: Re: ZFS pools in "trouble" Message-ID: <e1f8a889-254e-84f8-e6b9-4d5e7dfd2943@digiware.nl> In-Reply-To: <2137BCAA-03B7-4DFB-B4F3-B0B26A56D416@lysator.liu.se> References: <71e1f22a-1261-67d9-e41d-0f326bf81469@digiware.nl> <91e1cd09-b6b8-f107-537f-ae2755aba087@FreeBSD.org> <15bde4a5-0a2e-9984-dfd6-fce39f079f52@digiware.nl> <2137BCAA-03B7-4DFB-B4F3-B0B26A56D416@lysator.liu.se>
next in thread | previous in thread | raw e-mail | index | archive | help
On 14-3-2020 13:40, Peter Eriksson wrote:
> That probably corresponds to:
>
> ZPOOL_STATUS_BAD_GUID_SUM /* sum of device guids didn't match */
> (From /usr/src/cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h)
>
>
> Which get set in:
> /usr/src/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c
>
> /*
> * Check that the config is complete.
> */
> if (vs->vs_state == VDEV_STATE_CANT_OPEN &&
> vs->vs_aux == VDEV_AUX_BAD_GUID_SUM)
> return (ZPOOL_STATUS_BAD_GUID_SUM);
>
>
> /usr/src/sys # find . -name '*.c' -print0 | xargs -0 fgrep
> VDEV_AUX_BAD_GUID_SUM
> ./cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_missing.c:*
> VDEV_AUX_BAD_GUID_SUM. So we pretend to succeed, knowing that we
> ./cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c:return
> (spa_vdev_err(rvd, VDEV_AUX_BAD_GUID_SUM, ENXIO));
> ./cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c:return
> (spa_vdev_err(rvd, VDEV_AUX_BAD_GUID_SUM,
> ./cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c:case
> VDEV_AUX_BAD_GUID_SUM:
>
>
> error = spa_check_for_missing_logs(spa);
> if (error != 0)
> return (spa_vdev_err(rvd, VDEV_AUX_BAD_GUID_SUM, ENXIO));
>
> if (rvd->vdev_guid_sum != spa->spa_uberblock.ub_guid_sum) {
> spa_load_failed(spa, "uberblock guid sum doesn't match
> MOS "
> "guid sum (%llu != %llu)",
> (u_longlong_t)spa->spa_uberblock.ub_guid_sum,
> (u_longlong_t)rvd->vdev_guid_sum);
> return (spa_vdev_err(rvd, VDEV_AUX_BAD_GUID_SUM,
> ENXIO));
> }
>
>
> Missing the logs perhaps?
Right that is the case here, but I was led to believe that a log failure
no longer would spell desaster
on the vdev???
But clearly it does in this case....
--WjW
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?e1f8a889-254e-84f8-e6b9-4d5e7dfd2943>
