mpt_sas needs to try MUR reset at attach() time.
Pardon the redundancy (MUR == Message Unit Reset) in the subject. :)
The mpt_sas attachment path will always send a hard-reset, a diagnostic-reset using MPT/MPI2 terms. On a modern card-BIOS revision (126.96.36.199, 188.8.131.52, maybe others), and on an Intel-produced GA-level motherboard, this causes a hard system lock. We believe it to be a hardware problem most likely, or perhaps a longer string of circumstances with Illumos that only manifests a lock on this particular combination of hardware.
Regardless, after inspecting the FreeBSD driver, attempting a Message Unit Reset (MUR) first seems to make the right thing happen. So if we are attaching, we will attempt a Message Unit Reset regardless of a not-happened-yet query of the card's capabilities. This seems to work around the system lock.
We've subsequently booted a previously unbootable system with this in place, several times. A customer has since booted their previously unbootable systems over 1800 times without incident.
Updated by Dan McDonald over 8 years ago
- Status changed from New to Resolved
user: Dan McDonald <email@example.com>
date: Tue May 29 10:57:43 2012 -0400
2777 mpt_sas needs to try MUR reset at attach() time.
Reviewed by: Richard Elling <firstname.lastname@example.org>
Reviewed by: Jason King <email@example.com>
Reviewed by: Gordon Ross <Gordon.Ross@nexenta.com>
Reviewed by: Josef 'Jeff' Sipek <firstname.lastname@example.org>
Approved by: Garrett D'Amore <email@example.com>