]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
graid: unbreak Promise RAID1 with 4+ providers
authorEugene Grosbein <eugen@FreeBSD.org>
Mon, 12 Feb 2024 07:24:28 +0000 (14:24 +0700)
committerEugene Grosbein <eugen@FreeBSD.org>
Mon, 12 Feb 2024 07:33:43 +0000 (14:33 +0700)
commit81092e92ea5184c4eeedad58044d72cfef72dd24
treef6d155242c32780ad19466a1773c89be79344273
parented27ae8df4b10f67289a32458d89d143e758f6d4
graid: unbreak Promise RAID1 with 4+ providers

Fix a problem in graid implementation of Promise RAID1 created with 4+ disks.
Such an array generally works fine until reboot only due to a bug
in metadata writing code. Before the fix, next taste erronously created
RAID1E (kind of RAID10) instead of RAID1, hence graid used wrong offsets
for I/O operations.

The bug did not affect Promise RAID1 arrays with 2 or 3 disks only.

Reviewed by: mav
MFC after: 3 days
sys/geom/raid/md_promise.c