IBM AIC-9410/AIC-9405 SAS/SATA Device Drivers for RHEL 4 U 3 64-bit kernels System supported: x366, x460, x260, x206m, x306m, x3800, x3850, x3950, Intellistation M Pro 40 NOTE TO SERVICE - Reference RETAIN N/A (C) Copyright International Business Machines Corporation 1999, 2005. All rights reserved. US Government Users Restricted Rights - Use, duplication, or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Note: Before using this information and the product it supports, read the general information in "Notices and trademarks” in this document. Contents _________ 1.0 Overview 2.0 Installation and setup instructions 3.0 Configuration information 4.0 Unattended mode 5.0 Web information and support phone Number 6.0 Notices and trademarks 7.0 Disclaimer 1.0 Overview _____________ 1.1 This update includes a new device driver for the AIC-9410/AIC-9405 SAS/SATA supporting RHEL4-U3. 1.2 Limitations - None 1.3 Problem(s) fixed: - See Change history for detials. 1.4. Level of Recommendations and Prerequisites for the update: - none 1.5 Dependencies N/A 1.6 Update Contents: ibm_dd_adp94xx_1.0.7-11_rhel4u3_x86_64.tar Compression of adp94xx-1.0.7-11.rhel4qu3.x86_64.img and adp94xx-1.0.7-11.rhel4qu3.x86_64.rpm files adp94xx-1.0.7-11.rhel4qu3.x86_64.img Image for creating Support for RHEL4-U3 diskette for fresh installation of RHEL4-U3 adp94xx-1.0.7-11.rhel4qu3.x86_64.rpm RPM for updating Support for RHEL4-U3 used for upgrades from existing RHEL4 versions 2.0 Installation and setup instructions ________________________________________ 2.1 Installing Red Hat Linux with a SAS/SATA Host Adapter 1) Install the SAS/SATA adapter and power on your system. 2) Boot from the Red Hat CDROM. 3) At the boot menu, type 'linux dd' and press ENTER. 4) Follow the on-screen prompts to insert the Adaptec Red Hat driver disk. 5) Proceed with the normal Red Hat installation steps. 2.2 Installing SuSE Linux Enterprise Server or UnitedLinux with a SAS/SATA Host Adapter 1) Install the SAS/SATA adapter and power on your system. 2) Boot from the SuSE CDROM. 3) At the boot menu, press the ALT key to stop the boot. For SLES 9, use the F6 key instead of the ALT key. 4) Select installation and press 'Enter' and follow the on-screen prompts to insert the Adaptec SuSE driver disk. 5) Proceed with the normal SuSE installation steps. 2.3. Installing the Driver when Red Hat or SuSE is Already Installed 1) Download the Adaptec driver RPM file appropriate to your version of Red Hat/SuSE. 2) From a shell prompt, type: rpm -ivh to perform a fresh install, or rpm -Uvh to upgrade to a newer driver. 3) Make sure to reboot the system by issuing the command "shutdown -h now". After the system reboots, the procedure is then done. 2.4 Removing the Driver Removing the Adaptec SAS/SATA driver is not presently supported. 3.0 Configuration information _______________________________ WARNING: ALTERING OR ADDING THESE DRIVER PARAMETERS INCORRECTLY CAN RENDER YOUR SYSTEM INOPERABLE. USE THEM WITH CAUTION. Edit the file "modules.conf" or "modprobe.conf.local" in the directory /etc and add/edit a line containing options adp94xx adp94xx=parameter[,parameter,...] "parameter" is one or more of the following: cmd_per_lun: Global tag depth for all targets on all ports. This option sets the default tag depth for all targets if they support tag-queueing. Default Value: 32, range 1 to 64. attach_HostRAID: Controls whether the driver should atttach to HostRAID enabled controllers. Default: 0, false, the driver would *not* attach to RAID enabled controllers. To make the driver attach to RAID controllers, turn this on by setting it to 1. Example: options adp94xx adp94xx=cmd_per_lun:12,attach_HostRAID:1 Sets the queue depth to 12 for all targets that support tag-queueing, and instructs the driver not to attach to RAID enabled controllers. 4.0 Unattended mode _____________________ N/A 5.0 Web information and support phone Number ______________________________________________ 5.1 A Technical Support Identification (TSID) Number is required for Adaptec technical support. - The 12-digit TSID can be found on the white barcode-type label included inside the box with your product. The TSID helps us provide more efficient service by accurately identifying your product and support status. 5.2 Support Options - Search the Adaptec Support Knowledgebase (ASK) at http://ask.adaptec.com for articles, troubleshooting tips, and frequently asked questions for your product. - For support via Email, submit your question to Adaptec's Technical Support Specialists at http://ask.adaptec.com. - North America - Visit our Web site at http://www.adaptec.com. - To speak with a Fibre Channel/RAID/External Storage Technical Support Specialist, call 1-321-207-2000, Hours: Monday-Friday, 3:00 A.M. to 5:00 P.M., PST. (Not open on holidays) - For Technical Support in all other technologies including SAS, call 1-408-934-7274, Hours: Monday-Friday, 6:00 A.M. to 5:00 P.M., PST. (Not open on holidays) - For after hours support, call 1-800-416-8066 ($99/call, $149/call on holidays) - To order Adaptec products including software and cables, call 1-800-442-7274 or 1-408-957-7274. You can also visit our online store at http://www.adaptecstore.com - Europe - Visit our Web site at http://www.adaptec-europe.com. - English and French: To speak with a Technical Support Specialist, call one of the following numbers: - English: +32-2-352-3470 - French: +32-2-352-3460 Hours: Monday-Thursday, 10:00 to 12:30, 13:30 to 17:30 CET Friday, 10:00 to 12:30, 13:30 to 16:30 CET - German: To speak with a Technical Support Specialist, call +49-89-456-40660 Hours: Monday-Thursday, 09:30 to 12:30, 13:30 to 16:30 CET Friday, 09:30 to 12:30, 13:30 to 15:00 CET - To order Adaptec products, including accessories and cables: - UK: +0800-96-65-26 or fax +0800-731-02-95 - Other European countries: +32-11-300-379 - Australia and New Zealand - Visit our Web site at http://www.adaptec.com.au. - To speak with a Technical Support Specialist, call +612-9416-0698 Hours: Monday-Friday, 10:00 A.M. to 4:30 P.M., EAT (Not open on holidays) - Japan - To speak with a Technical Support Specialist, call +81-3-5308-6120 Hours: Monday-Friday, 9:00 a.m. to 12:00 p.m., 1:00 p.m. to 6:00 p.m. TSC - Hong Kong and China - To speak with a Technical Support Specialist, call +852-2869-7200 Hours: Monday-Friday, 10:00 to 17:00. - Fax Technical Support at +852-2869-7100. - Singapore - To speak with a Technical Support Specialist, call +65-245-7470 Hours: Monday-Friday, 10:00 to 17:00. - Fax Technical Support at +852-2869-7100 6.0 Notices and trademarks ____________________________ 6.1 Supported Hardware. - The following Adaptec SAS/SATA Host Adapters are supported by this driver set. SAS/SATA Adapters Description ---------------------------------------------------------------- AIC-9410 Eight port SAS and SATA 64-bit PCI-X 133MHz ASIC. AIC-9405 Four port SAS and SATA 64-bit PCI-X 133MHz ASIC. 6.2 Known/Unresolved or FYI Issues 6.3 Third-Party Compatibility Issues Adaptec only supports SAS and SATA hard drives running the latest firmware available. Please check with your hard drive manufacturer to ensure you have the latest version. 6.4 Operating System or Technology Limitations * PCI Hot Plug is untested, use at your own risk! * Sparse LUN space may not be automatically probed. This is a limitation of some kernels. Contact your OS vendor for support on this. * Using the Driver Update Disk version of this package during OS installation under Red Hat might result in two versions of this driver being installed into the system module directory. This might cause problems with the /sbin/mkinitrd program and/or other RPM packages that try to install system modules. The best way to correct this once the system is running is to install the latest RPM package version of this driver, available from http://www.adaptec.com/. * When updating with the kernel-hugemem-2.4.21- 32.EL.i686.rpm under Red Hat, because the kernel- hugemem-2.4.21-32.EL.i686.rpm contains only those embedded drivers and doesn't give users a chance to load additional drivers, users have to perform the following: -Backup /etc/modules.conf cp modules.conf modules.conf.bkup -Remove adp94xx entry from modules.conf using editor -Install hugemem kernel rpm -ivh kernel-hugemem-VERSION.rpm -Restore original modules.conf cp modules.conf.bkup modules.conf -Install adaptec driver rpm -ivh adp94xx-VERISON.rpm 6.5 Controlling Boot order on non SES-2 systems Linux discovers drives by walking sequentially through each channel/target/lun of the host adapter, mapping the drives that it finds sequentially to sda, sdb, sdc, etc. SAS, on the other hand, does not guarantee what order drives will be discovered, or appear. Because of this "drive drift" (different than migration) a mechanism is needed to guarantee that SAS drives will be consistently mapped to device names. The Razor BIOS provides a mechanism for determining what order drives have been reported to the system BIOS. Because of the different mechanisms that system BIOS vendors use to manage devices in BIOS and because of the limited size of the Razor OCM structures, the Razor BIOS structures can not be use to consistently map all drives to a unique device name that persists across boots. The only way to solve the problem of "drive drift" is to require that users assign a UUID or label to the filesystems on their drives. In addition, because swap does not support labels or UUIDs, we should recommend that the users use swap files instead of swap partitions. Labels: The reason why drive name mapping is an issue results from the way that Linux approaches assigning mount points to filesystems. Linux uses the /etc/fstab file in order to map device names to mount points. Normally the fstab file is populated with lines that look something like: /dev/sdb2 /users ext3 defaults 0 0 Unless specified in the options field (field number 4), the filesystems that are listed in /etc/fstab are automatically mounted by the init scripts as the system changes states into multi-user mode. Unfortunately, technologies like SAS and Fibre Channel do not guarantee what order drives will be presented to the system. As a result, a drive that was mapped to /dev/sdb on one boot might be mapped to a completely different device name after a subsequent reboot. To address this issue, Linux has added filesystem labels and UUIDs (Universally Unique Identifier). The main difference between filesystem labels and UUIDs is that filesystem labels are generated by the user, and UUIDs are generated automatically. For simplicity, this document will refer to filesystem labels and UUIDs as "labels". Once a filesystem has a label, the administrator can then specify that filesystem by its label instead or its device name. For example: # mount UUID=754b0958-f447-490b-9ae2-551987bc31a9 /users # mount LABEL=mylabel /users Regardless of what drive mapping has been assigned to the drive that has the filesystem that contains the label specified, mount will find the filesystem and mount it. In addition, the administrator can create entries in /etc/fstab that look like: UUID=754b0958-f447-490b-9ae2-551987bc31a9 /users ext3 defaults 0 0 LABEL=mylabel /users ext3 defaults 0 0 Suse allows the user who is installing the operating system to specify that a label should be used for the root filesystem. The user needs to select the 'fstab options' button when preparing the boot disk in YaST. In the fstab options popup the user will be allowed to assign a label or UUID to the filesystem. During the process of installing the system, the install program will embed the label for the root filesystem in the linuxrc script in initrd. The filesystem creation utilities support labels. Reiserfs will automatically create a UUID for a filesystem, regardless of whether it is being used in fstab. The user can specify the UUID using the '-u' option to mkreiserfs, or they can specifiy a label by using the '-l' option. The user can determine the label of a filesystem by using the dumpe2fs or debugreiserfs user level commands. Swap: Currently, the mount utility only supports labels on ext2, ext3 and xfs. Suse has added a patch that supports reiserfs (Suse's default filesystem). Any other filesystem type will not be be automatically mounted as the system transitions to multiuser. Unfortunately, swap labeling is not supported. In Linux, a swap device can be a filesystem or a file. TO ensure that the swap file is always correctly identified during drive drift, the user should use swap files instead of swap partitions. In order to use a file for swap, the user needs to create a file that will be used for swap. For example, to create a 256M zero initialized file and prepare it for the swap subsystem, the user might execute the following commands: # dd if=/dev/zero of=/swapfile bs=1k count=262144 # mkswap /swapfile After creating the swap file, the user would then edit the fstab file, remove the swap line and add the following line: /swapfile swap swap pri=42 0 0 To notify the kernel about the new swap file, the user would execute the following command: # swapon -a In the future, there is space that is reserved for a label in the swap header. 7.0 Disclaimer ________________ 7.1 THIS DOCUMENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IBM DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE AND MERCHANTABILITY WITH RESPECT TO THE INFORMATION IN THIS DOCUMENT. BY FURNISHING THIS DOCUMENT, IBM GRANTS NO LICENSES TO ANY PATENTS OR COPYRIGHTS. DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE AND MERCHANTABILITY WITH RESPECT TO THE INFORMATION IN THIS DOCUMENT. BY FURNISHING THIS DOCUMENT, IBM GRANTS NO LICENSES TO ANY PATENTS OR COPYRIGHTS.