x64 server platforms with QLogic/Marvell HBAs and UEFI firmware trying to boot from SAN may not have an option to select InfiniBox volumes from the boot list in the UEFI boot screen. It occurs even when the operating system installs to the InfiniBox volume without any issues.
This issue occurs in the case where a UEFI host is required to boot from InfiniBox SAN, and either:
The host is not part of an InfiniBox cluster, OR
The host is part of a cluster, but the ASCII code of the fifth character in the cluster name is even (contains 0 in the bit 0).
oracle_cluster is not a good cluster name because the fifth character is "l" and its binary value is 1101100. So the bit 0 contains 0.
fast_cluster is a good cluster name because the fifth character is "_" and its binary value is 1011111. So the bit 0 contains 1.
For more information on ascii-binary characters, refer to an ASCII Binary Character Table
This situation is caused by the way QLogic HBA firmware interprets InfiniBox SCSI inquiry page 0xC9. 0xC9 is a vendor-reserved inquiry page according to the SCSI spec. However, some storage systems report path status in that inquiry page, and QLogic HBAs in EFI environments look for that nonstandard path status field to determine boot-from-SAN options. By default InfiniBox includes the cluster name (among other things) in 0xC9, which intersects with that nonstandard path status field. Depending on the content of the cluster name, QLogic HBAs in EFI environments may draw the wrong conclusion about accessibility of InfiniBox volumes for BFS purposes.
Versions 5.5.20 and earlier, and version 6.0.0
Add the host to a cluster whose name contains a minus sign (-) or underscore (_) in the fifth byte. Or any other ASCII character whose value is odd (contains 1 in the bit 0).
Versions 5.5.30 and later
Set the system parameter
support_inquiry_page_xc9 to disabled.
Marvell/QLogic may release a firmware update mitigation of this bug in the future, though it is not confirmed yet. We will update this document if that happens.