From: YASUOKA Masahiko <yasu...@openbsd.org>
Subject: Re: mfii(4): add bio(4) support
Date: Tue, 06 Mar 2018 08:14:44 +0900 (JST)
>> most parts are taken from mfi(4), plus fix for rebuilding (bioctl -R).
> Do I understand the rebuilding problem correctly?
> - mfii_makegood() and mfii_makespare() are added before sending the
> rebuild command to fix the problem
> - The problem doesn't happen with mfi(4)
well, sorry for insufficient explanation.
mfi(4) has the problem. original fix for mfi(4) is here,
to support rebuilding in current bio(4) framework, swapped(new) disk
should be exposed to userland as "unused" disk, but mfi(4) exposes
removed disk as "failed" disk which cannot be controlled any way. first
fix, in mfi(i)_ioctl_disk(), is "find an unused(new) disk and expose it
and, disk state of unused disk need to be "unconfigured good" and not to
be "foreign". second fix, mfi(i)_makegood(), try to change disk state if
then, mfi(i)_makespare() starts rebuilding.