Managing RAID on Linux - Derek Vadala [93]
Linux support for Adaptec RAID controllers is common in many distributions. I tested direct installation to my 2100S controller using Red Hat, SuSE, and Mandrake. The official documentation recommends creating a driver disk by using the included CD-ROM, or by downloading a disk image from the Adaptec web site. However, I have found that out-of-the-box installation works fine, at least with Red Hat, SuSE, and Mandrake. You need to create a driver disk and use a distribution that is officially supported only if you encounter problems and need technical support from Adaptec.
Adaptec I2O RAID Driver
The Adaptec I2O RAID driver currently supports all I2O RAID cards and the DPT SmartRAID V controller. The dpt_i2o driver also provides support for some of Adaptec's ATA RAID controllers. Please check the driver's documentation and the Adaptec web site for specific compatibility information. The GPL driver was originally ported to Linux version 2.0.34 and was available as a patch to the kernel. The GPL driver was ported by Karen White (Dell Computer), with help from Mark Salyzyn and Bob Pasteur.
The driver was eventually rewritten from scratch. This new version (2.0) was developed by Deanna Bonds and Mark Salyzyn. Bonds currently maintains the driver for Adaptec. During the development of kernel 2.4, the driver finally made it into the stable kernel tree (2.4.10). That means users no longer have to undergo the arduous process of patching kernels or creating custom driver disks to perform installation.
* * *
What Is I2O?
I2O stands for Intelligent Input/Output. I2O is a way to achieve improved system performance by offloading tasks traditionally performed by the CPU onto dedicated I/O processors. I2O also offers a split-driver architecture that allows vendors to create platform-independent hardware drivers, so long as a generic I2O driver for each operating system is available.
Linux contains generic I2O support. In fact, you'll notice an entire subsection of the kernel configuration dedicated to I2O device support. But be certain to use the dpt_i2o driver in the SCSI subsection of the kernel configuration, and not the generic I2O driver. The generic driver does not work with Adaptec I2O RAID controllers.
* * *
To determine if your card is supported by the dpt_i2o driver, look for the Adaptec I2O logo in the card's BIOS banner, or consult the Adaptec web site (http://www.adaptec.com) or the README.dpti file, located within the kernel source tree in the directory /usr/src/kernel/drivers/scsi.
Configuring the kernel
Enable Adaptec I2O RAID support (CONFIG_SCSI_DPT_I2O) under the SCSI Low-Level Drivers submenu of the SCSI Support menu. The driver can be compiled statically or as a loadable kernel module (dpt_i2o).
SCSI support --->
...
SCSI low-level drivers --->
...
<*> Adaptec I2O RAID support
...
Arrays and standalone disks that are connected to Adaptec controllers show up with device entries just like any standard SCSI disk. So the first disk or array connected to the controller gets named /dev/sda by Linux, the second /dev/sdb, and so on.
The aacraid Driver
The original aacraid driver for Linux was merely a wrapper for the Windows NT driver. This presented both technical and philosophical problems. Eventually, Alan Cox rewrote the aacraid driver from the ground up. While some programmers at Adaptec were also working on a new replacement driver, that work was eventually scrapped in favor of Alan's rewrite, partly because his driver had already been integrated into the 2.4 kernel tree. Deanna Bonds is now improving the aacraid driver by adding