'hpsa' - A SCSI-based Linux device driver for HP Smart Array Controllers

9
Potential impact of transitioning to hpsa
Device name changes are the most visible difference between the cciss and hpsa drivers. Remain aware of all potential
impacts of these naming differences to ensure a smooth transition.
Shared name space
Before hpsa, the names of all Smart Array devices stood apart from those of other storage devices because they
appeared in a separate namespace. Now, with hpsa, Smart Array devices group with standard SCSI devices. All use
standard SCSI naming as follows:
The hpsa Smart Array device namespace is standardized /dev/sd*
The cciss Smart Array device namespace was specialized /dev/cciss/c[0-9]d[0-9]
A device name alone is no longer sufficient for identifying a device as a Smart Array.
Name variability
The SCSI device names are assigned sequentially in order of device discovery. If the discovery order changes due to an
addition, removal, or some other change to SCSI hardware, the system assigns pre-existing Smart Array devices a new
name after the next reboot. A similar issue can occur when using the cciss driver. Since the cciss device shares its
namespace with other Smart Array controllers, the addition or removal of other Smart Array controllers can change the
name of a cciss Smart Array device.
Adding or changing other SCSI devices may change names of existing hpsa devices. Only changes to Smart Array
controllers can change names of existing cciss devices.
For example:
A server uses cciss driver with one Smart Array controller:
/dev/cciss/c0d0 Existing Smart Array Controller
If you add a new Smart Array controller, the system may discover it before the older controller on the next boot up.
The new controller would claim the first device name, c0d0, forcing the system to rename the older controller’s
device:
/dev/cciss/c0d0 New Smart Array controller
/dev/cciss/c1d0 Existing Smart Array controller
Similarly, a server using the hpsa driver with one Smart Array controller and one logical disk:
/dev/sda Existing Smart Array controller
If you add another SCSI device to the system and then reboot, the system may discover the new SCSI device before
discovering the Smart Array controller. The Smart Array device name could change:
/dev/sda New SCSI device
/dev/sdb Existing Smart Array controller
To avoid this problem, use the device name persistence features of the Linux udev system. Udev enables alternate
device naming mechanisms, avoiding the need to employ specific device names in configuration files. This enhances
your system’s stability.
Name transitions during OS changes
Changing the operating system on a server could alter the way it presents Smart Array devices. This is because the new
OS may change the driver used with a previously installed Smart Array controller. Complete the following tasks before
you upgrade or install a new OS on a server:
Determine which Smart Array controllers are installed in the server.
Using Table 1, determine which, if any, of these controllers will use the hpsa driver after installation of the new OS.