]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
mpr/mps(4): Make device mapping some more robust.
authorAlexander Motin <mav@FreeBSD.org>
Sat, 24 Apr 2021 03:18:01 +0000 (23:18 -0400)
committerAlexander Motin <mav@FreeBSD.org>
Mon, 24 May 2021 14:43:39 +0000 (10:43 -0400)
commit22d8055aa216b2e39ec48ddaeab31d542fb96bee
tree728defd563feb63785145bbd48889a52c453a622
parentf1119657d82ee8c7c7d3fb624d6e98927e459402
mpr/mps(4): Make device mapping some more robust.

Allow new enclosure to replace previously existing one if there is
no completely unused table entry, same as it is done for devices.

If we can not process DPM due to corruption -- wipe it and restart
from scratch.  Otherwise I don't see a way to recover persistence if
something go wrong and there is no BIOS to recover it for us.

Together this solves a problem that appeared when 9300-8i firmware
update to 16.00.10.00 somehow switched its mapping mode from Device
Persistence to Enclosure/Slot without wiping the DPM table.  It made
HBA completely unusable, since overflowed and conflicting mapping
table was unable to map any of enclosures and so devices.

Also while there make some enclosure mapping errors more informative.

MFC after: 1 month
Sponsored by: iXsystems, Inc.

(cherry picked from commit b99419aee49e2cc53747730be4d0ec4f9b330eb2)
sys/dev/mpr/mpr_mapping.c
sys/dev/mps/mps_mapping.c