As the value and use of information continue to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes, thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling system's may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in IHSs allow for IHSs to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, an information handling system may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
An information handling system can be configured in several different configurations. The information handling system can range from a single, stand-alone computer system to a distributed, multi-device computer system, to a networked computer system with remote or cloud storage systems. Both local computer storage systems and remote or cloud storage systems can support RAID configurations that use hard disk drives or solid state storage drives. Various “levels” of RAID configurations are well known to those in the field of data storage systems.
Historically, RAID driver development and support has been concentrated on traditional mass storage protocols, including SATA, SCSI, SAS, FC, ATA, and IDE. More recently, PCIe-based storage drives, including NVMe drives, have raised the prospect of RAID volumes spanning multiple PCI/PCIe devices, including systems that employ PCI/PCIe based RAID volumes as a boot disk. Whereas traditional mass storage bus protocols recognize the concept of a storage controller associated with two or more physical drives, PCIe treats each connected device as an individual controller. This distinction must be addressed to accommodate PCI/PCIe-based RAID volumes.