File Name: Linux_RDAC_readme.TXT This Readme file contains the latest information about the IBM TotalStorage™ DS4000 Linux RDAC multipath driver package version 09.01.B5.xx FOR USE IN LINUX 2.6 KERNEL OPERATING SYSTEM ENVIRONMENTS ONLY. For Linux 2.4 kernel operating system environments, please refer to the IBM DS4000 Linux RDAC package version 09.01.A5.xx instead. Note: The Linux RDAC driver is not supported in LoP servers with Redhat 4 operating system in this release. Please contact IBM representatives for such support in the future. Version : 09.01.B5.04 Last Update Date: 07/06/2005 Note: The 07/13/2005 update to the readme is to correct the version of Redhat EL 4 Update 1 kernel. Refer to the IBM TotalStorage™ Disk Storage Systems Technical Support web site for the latest information and updated readme file. Note: The IBM TotalStorage DS4000 Storage Manager version 9 Installation and Support Guide for Windows 2000/Server 2003, Netware, ESX Server, and Linux publication or the IBM TotalStorage DS4000 Storage Manager version 9 Installation and Support Guide for AIX, HP-UX, Solaris, and Linux on POWER publication, which is included in the Docs directory in any of the DS4000 Storage Manager CDs, is also available on IBM's Support Web Site as a downloadable Portable Document Format (PDF) file. These publications provide useful information on the installation of all DS4000 Storage Manager host software packages including the RDAC package. Products Supported: ---------------------------------------------------------------- | New Model | Old Model | Machine Type | Model | |------------|-----------|--------------|------------------------| | DS4800 | N/A | 1815 | 82H, 82A, 84H, 84A | |------------|-----------|--------------|------------------------| | DS4500 | FAStT 900 | 1742 | 90X, 90U | |------------|-----------|--------------|------------------------| | DS4400 | FAStT 700 | 1742 | 1RX, 1RU | |------------|-----------|--------------|------------------------| | DS4300 | FAStT 600 | 1722 | 60U, 60X (Standard/base| | | | | or Turbo Option) | |------------|-----------|--------------|------------------------| | DS4100 | FAStT 100 | 1724 | 100 (Standard/base | | | | | Option) | ---------------------------------------------------------------- CONTENTS --------- 1.0 Overview 2.0 Change History 3.0 Installation and Setup Instructions 4.0 Configuration Information 5.0 Unattended Mode 6.0 Web Sites and Support Phone Number 7.0 Trademarks and Notices 8.0 Disclaimer 1.0 Overview: 1.1 Description The Linux RDAC provides redundant failover/failback support for the logical drives in the DS4000 storage subsystem that are mapped to the Linux host server. The Linux host server must have Fibre Channel (FC) connections to the host ports of both controllers A and B of the DS4000 storage subsystem. It is provided as a redundant path failover/failback driver alternative to the Linux FC host bus adapter failover device driver. There are two versions of the Linux RDAC driver. The version (09.01.B5.04) that this README is packaged with is for Linux 2.6 kernels only like SuSe SLES 9 and Redhat 4. For Linux 2.4 kernel environment, please refer to the Linux RDAC drive package version 09.00.A5.XX instead. Please refer to the Dependencies section for the required code levels and Linux kernel versions. In addition, please refer to the http://www.ibm.com/servers/storage/support/disk/ IBM TotalStorage™ Disk Storage Systems Technical Support web site for the latest supported DS4000 storage subsystem models, host adapters, device drivers, Linux kernel versions and updated readme. Note: Deviations from the listed code levels are not supported. Please contact IBM Support or representatives for help if required. 1.2 Limitations 1. This version of DS4000 Linux RDAC will not support any Linux 2.4 kernels like SuSE SLES 8 or Redhat 3 Linux operating system on Intel/AMD architecture or Linux on POWER (LoP) servers. Please refer to the Linux RDAC package driver version 09.00.A5.XX instead. 2. The Linux RDAC driver cannot co-exist with a Fibre Channel HBA-level multipath failover/failback driver such as the 8.00.00-fo or 8.00.02-fo Linux device driver for the IBM DS4000 fc2-133 Host Bus Adapters driver on servers with Intel or AMD architecture processors, or the QLA driver for the Fibre Channel Expansion adapters on the IBM LoP blade servers. Note: You might have to modify the driver make file for it to be compiled in the non-failover mode. 3. Clustering is not supported on LoP servers. For servers with Intel or AMD architecture processors, the SteelEye's™ LifeKeeper® Clustering is currently supported with a maximum of 8 luns only. Please use the following additional instructions when setting up the LifeKeeper® cluster in servers with Intel or AMD architecture processors. a. Recompile the Fibre Channel Host Bus Adapter driver using the following setting. - Change the setting QLA2X_PERFORMANCE to 0 in the qla_settings.h file. b. Change the following setting in the /etc/default/LifeKeeper file. LCMHBEATTIME=5 LCMNUMHBEATS=16 c. Reboot the Linux host after completing steps a and b. 4. All limitations which apply to the current DS4000 Storage Server when configured with Linux servers also apply to this Linux RDAC release. 5. Auto Logical Drive Transfer(ADT/AVT) mode, is automatically enabled in the Linux storage partitioning host type. This mode causes contention when an RDAc is installed. If using the "Linux" host type, it has to be disabled using the script that is bundled in this Linux RDAC web package or in the \Scripts directory of this DS4000 Storage Manager version 9 support for Linux CD. The name of the script file is DisableAVT_Linux.scr. IMPORTANT: It is recommended, especially in an LoP RDAC server environment, to use the "LNXCL" host type which has ADT/AVT already disabled instead of using the following steps to disable the ADT/AVT mode in your "Linux" host type partition. Open the DS4000 Storage Manager Enterprise Management window, - Highlight the subsystem - Select Tools - Select Execute script. - A script editing window opens. In this window - Select File - Select Load Script - Give the full path name for the script file (eg . /scripts/DisableAVT_Linux.scr) and click OK - Select Tools - Select Verify and Execute Note: This is assumed that the "Linux" host type is selected for the Storage Partitioning partition that the Linux host server HBA port is defined in. This "Linux" host type has ADT/AVT enabled as default. Please refer to the IBM TotalStorage DS4000 Storage Manager version 9 Installation and Support Guide for appropriate OS or the Enterprise Window Online help for more information on how to execute a script. 6. The Linux SCSI layer does not support skipped (sparse) LUNs. If the mapped LUNs are not contiguous, the Linux kernel will not scan the rest of the LUNs. Therefore, the LUNs after the skipped LUN will not be available to the host server. The LUNs should always be mapped using consecutive LUN numbers. The SMutil hot_add command can be used to scan for sparse LUNs. However, after the system is reboot, the LUNs after the skipped LUN might not be available until the hot-add utility was performed. 7. Fibre channel configuration. If a host server has multiple HBA ports and each HBA port sees both controllers (via a un-zoned switch), the Linux RDAC driver may return I/O errors during controller failover. The recommendation is to use multiple unconnected FC switches to zone the FC switch into multiple zones so that each HBA port sees only one controller in a DS4000 storage subsystem. 8. The RDAC driver reports I/O failures immediately after all paths are failed. When the RDAC driver detects that all paths to a DS4000 storage subsystem are failed, it will report I/O failure immediately. This behavior is different from the IBM Fibre Channel (FC) HBA failover device driver. The FC HBA failover device driver will wait for a certain time out/retry period before reporting an I/O failure to the host application. There is no work-around. 9. The virtual HBA driver can not be loaded if there is no storage array attached. The work-around is to connect the host server to the DS4000 storage subsystem and run the "mppBusRescan" utility, which is previously known as the "hot_add" utility. Note: If no LUN is mapped to the host server partition on the DS4000 storage subsystem, "mppBusRescan"/"hot_add" will not load the mpp_Vhba module. If the server did not recognize any new mapped LUNs after running the "mppBusRescan" utility a few times, consider rebooting the server. 10. The cluster support feature in the Linux RDAC driver is only available for controller 05.4x.xx.xx or later firmware. If a SCSI-2 reserve/release command is addressed to a LUN on an array running a firmware version lower than 05.40, a check condition 05-02-00 (key-asc-ascq) (illegal request, invalid command operation code) will be returned. LoP servers do not support clustering with this Linux RDAC. 11. (For LoP Servers) The "modprobe" command is not supported with this Linux RDAC release on SLES 9 when the Linux RDAC driver is installed. Use "insmod" to remove and recover the device driver stack. On LoP pSeries servers with more than 3 processors, using the modprobe command may result in a hung server or panic's. 12. (For LoP Servers) SAN Boot is not supported on IBM JS20 server blades with the initial release SLES9 kernel. The SAN Boot is only supported on JS20 server blades with SLES9 w/SP1 kernel installed. (6-3-2005) 13. (For LoP Servers) JS20 blades must not have the following Fibre Channel Expansion card FRU number installed in certain JS20 blade model numbers. FRU number 13N2208 (or Option PN 13N2203) and JS20 8842-21X MT/MN are not compatible. This combination is not supported for Linux on Power releases. Possible intermittent problems are Fibre Channel Expansion card NVRAM corruption symptoms. (CMVC 279060.) 14. Universal Access Luns (UTM LUNs) should not be assigned to LUN ID 0, especially with RDAC's installed. Placing an Universal Access Lun at LUN id 0, may lead to loss of LUN recognition of next sequence LUN ids or partial list of Virtual Luns reported with the RDAC driver. These UTM LUNs should be assigned LUN ID 31. 15. (For LoP Servers) HBA Hot-Swap command to remove a live, fully functioning FC HBA, will cause a system panic if the I/O is not diverted from that path first. This functionality is only supported on current 2.6 kernel versions. The work-around is to pull the Fibre Channel cable first, wait 2 - 5 minutes for fail-over to complete, then issue the "drslot_chrp_pci -r -s slot-number" command. 1.3 Enhancements - Support for RedHat EL 4 update 1 (RHEL4-u1) kernel for Linux servers other than the Linux on Power (LoP) servers (ie. Intel 32bit architecture (Pentium III, Pentium 4, Zeon ...), Intel 64bit architecture (Itanium), Intel EM64T architecture or AMD 64bit (Opteron ...) ) - Support for SuSE SLES 9 Service Pack 1 kernel for all Linux servers (LoP and non-LoP servers). Note: Linux RDAC support for SLES 9 SP1 LoP servers was available on 5/8/2005. - Support for the DS4800 storage subsystems with controller firmware version 06.15.11.xx. With this version of firmware, the DS4800 controllers utilize all of the available data cache memory installed in each controller blade for I/O caching. Previously with controller firmware version 06.14.xx.xx, the DS4800 controllers used only the first 1G bytes of the installed data cache memory per controller for I/O caching. 1.4 Level of Recommendations and Prerequisites for the Update: N/A 1.5 Dependencies: The following code levels must be used. Deviations from the listed code levels are not supported. 1.5.1 Linux on POWER (LoP) pSeries servers a. DS4000 storage subsystem Controller firmware and NVSRAM: 1. Storage Controller Firmware versions: a. DS4800: FW_06151100 b. DS4500: FW_06120300_06100400 c. DS4400: FW_06120300_06100400 d. DS4300 Standard: SNAP_288X_06120300 e. DS4300 Turbo : SNAP_288X_06120300 f. DS4300 Standard: SNAP_282X_06120300 2. Storage Controller NVSRAM versions ATTENTION: The DS4000 storage subsystem controller firmware version 06.12.xx.xx or higher uses the FC/SATA intermix premium key file to enable the FC/SATA intermix functionality. It does not rely on a certain version of the NVSRAM file like the controller firmware version 06.10.xx.xx. Do not apply this version 06.12.xx.xx or higher of the firmware until a FC/SATA intermix premium feature key file is generated and available. a. DS4800: N1815D480R914V05 b. DS4500: N1742F900R912V06 c. DS4400: N1742F700R912V05 d. DS4300 Standard: N1722F600R912V05 (for EXP700/EXP710 ONLY attachment or when FC/SATA intermix premium feature is enabled) e. DS4300 Turbo : N1722F600R912V05 (for EXP700/EXP710 ONLY attachment or when FC/SATA intermix premium feature is enabled) f. DS4300 Standard: N1724F100R912V05 g. DS4300 Standard: N1722F600R28enc2 (for EXP100 ONLY attachment) h. DS4300 Turbo : N1722F600R28enc2 (for EXP100 ONLY attachment) ATTENTION: DO NOT LOAD THIS NVSRAM FILE - N1722F600R18enc2 - INTO ANY OF THE DS4300 STORAGE SUBSYSTEMS THAT HAVE DRIVES IN THE DS4300 CHASSIS DRIVE SLOTS. THIS WILL CAUSE THE DS4300 storage subsystem NOT RECOGNIZING ANY OF THE DRIVES IN THE DS4300 CHASSIS. THIS COULD RESULT IN THE DEGRADATION OF THE DEFINED RAID ARRAY OR A LOSS OF ACCESS TO DATA. IF THIS NVSRAM FILE IS LOADED INTO A DS4300 storage subsystem WITHOUT ANY DRIVE EXPANSION ENCLOSURES ATTACHED, IT WILL PREVENT THE storage subsystem FROM COMPLETING THE BOOT PROCESS THAT IS INITIATED TO ACTIVATE THE NEW NVSRAM SETTINGS, WHICH MIGHT RESULT IN LOST OF MANAGEMENT ACCESS TO the DS4300 storage subsystem. THERE IS NO SAFETY MECHANISM TO PREVENT THE UNINTENTIONAL LOADING OF THIS NVSRAM FILE. IN ADDITION, DO NOT USE THIS NVSRAM FILE IN THE DS4300 STORAGE SUBSYSTEMS WITH FC/SATA INTERMIX PREMIUM FEATURE ENABLE. b. Supported Fibre Channel Host Bus Adapters firmware and device driver versions for IBM Feature Code 6228, 6239, or 5716(6239-CR). HBA Firmware Minimum Levels for SLES 9 ppc64 Linux (LoP): FC 5716: F-code 1.90A4 FC 6239: F-code 1.81x1 FC 6228: F-code 3.91A1 pSeries adapter code can be downloaded from: http://techsupport.services.ibm.com/server/mdownload2/download.html HBA non-rdac device drivers: (Emulex 2.10g device driver comes with the Kernel) 2.10h, lpfcapp-2.10g-1.ppc64.tgz pSeries Emulex "Application Kit" and the 2.10h device driver can be downloaded from: http://www.emulex.com/ts/docoem/framibm.htm - For JS20 Fibre Channel Expansion card, the supported device driver is 8.00.02 (non-failover version). c. Linux Kernel version - For LoP-SLES 9 SP1: 2.6.5-7.139-pseries64 Important: This Linux RDAC driver is for Linux on Power version of SLES 8 and RHEL 3 Linux operating systems. RedHat EL 4 (RHEL4) is also not supported with this Linux RDAC driver. Please contact IBM representatives and resellers for the support of RHEL4 and Linux RDAC in LoP servers in the future. d. IBM DS4000 Storage Manager Host software These IBM DS4000 Storage Manager host software packages are for LoP servers running LoP version of SLES 9 only. 1. IBM DS4000 Storage Manager Runtime version: 09.14.A5.00-1 SMruntime-LINUX-09.14.A5.00-1.ppc64.rpm 2. IBM DS4000 Storage Manager Client version: 09.15.G5.01-1 SMclient-LINUX-09.15.G5.01-1.noarch.rpm 3. IBM DS4000 Storage Manager Utilities version: 09.14.A5.00-1 SMutil-LINUX-09.14.A5.00-1.ppc64.rpm 4. IBM DS4000 Storage Manager Agent version: 09.14.A5.03-1 SMagent-LINUX-09.14.A5.03-1.ppc64.rpm OR 5. IBM DS4000 Installer wizard: 09.15.A5.03 SMIA-LINUXPPC-09.15.A5.03.bin 1.5.2 For Linux servers other than the LoP servers. (Intel 32bit architecture (Pentium III, Pentium 4, Zeon ...), Intel 64bit architecture (Itanium), Intel EM64T architecture or AMD 64bit (Opteron ...) ) a. DS4000 storage subsystem Controller firmware and NVSRAM: 1. Storage Controller Firmware versions: a. DS4800: FW_06151100 b. DS4500: FW_06120300_06100400 c. DS4400: FW_06120300_06100400 d. DS4300 Standard: SNAP_288X_06120300 e. DS4300 Turbo : SNAP_288X_06120300 f. DS4300 Standard: SNAP_282X_06120300 2. Storage Controller NVSRAM versions ATTENTION: The DS4000 storage subsystem controller firmware version 06.12.xx.xx or higher uses the FC/SATA intermix premium key file to enable the FC/SATA intermix functionality. It does not rely on a certain version of the NVSRAM file like the controller firmware version 06.10.xx.xx. Do not apply this version 06.12.xx.xx or higher of the firmware until a FC/SATA intermix premium feature key file is generated and available. a. DS4800: N1815D480R914V05 b. DS4500: N1742F900R912V06 c. DS4400: N1742F700R912V05 d. DS4300 Standard: N1722F600R912V05 (for EXP700/EXP710 ONLY attachment or when FC/SATA intermix premium feature is enabled) e. DS4300 Turbo : N1722F600R912V05 (for EXP700/EXP710 ONLY attachment or when FC/SATA intermix premium feature is enabled) f. DS4300 Standard: N1724F100R912V05 g. DS4300 Standard: N1722F600R28enc2 (for EXP100 ONLY attachment) h. DS4300 Turbo : N1722F600R28enc2 (for EXP100 ONLY attachment) ATTENTION: DO NOT LOAD THIS NVSRAM FILE - N1722F600R18enc2 - INTO ANY OF THE DS4300 STORAGE SUBSYSTEMS THAT HAVE DRIVES IN THE DS4300 CHASSIS DRIVE SLOTS. THIS WILL CAUSE THE DS4300 storage subsystem NOT RECOGNIZING ANY OF THE DRIVES IN THE DS4300 CHASSIS. THIS COULD RESULT IN THE DEGRADATION OF THE DEFINED RAID ARRAY OR A LOSS OF ACCESS TO DATA. IF THIS NVSRAM FILE IS LOADED INTO A DS4300 storage subsystem WITHOUT ANY DRIVE EXPANSION ENCLOSURES ATTACHED, IT WILL PREVENT THE storage subsystem FROM COMPLETING THE BOOT PROCESS THAT IS INITIATED TO ACTIVATE THE NEW NVSRAM SETTINGS, WHICH MIGHT RESULT IN LOST OF MANAGEMENT ACCESS TO the DS4300 storage subsystem. THERE IS NO SAFETY MECHANISM TO PREVENT THE UNINTENTIONAL LOADING OF THIS NVSRAM FILE. IN ADDITION, DO NOT USE THIS NVSRAM FILE IN THE DS4300 STORAGE SUBSYSTEMS WITH FC/SATA INTERMIX PREMIUM FEATURE ENABLE. b. IBM DS4000/FAStT, FC-2 and FC2-133 Fibre Channel Host Bus Adapters - 8.00.02 non-failover (SLES 9 SP1 and RHEL4-u1) Note: The FC HBA device driver must be non-failover version. c. Linux Kernel version - For Redhat EL 4.0-u1 AMD-64 : 2.6.9-5.0.11.EL up smp - For Redhat EL 4.0-u1 (32-Bit) : 2.6.9-5.0.11.EL up smp - For Redhat EL 4.0-u1 (IA64) : 2.6.9-5.0.11.EL up smp - For SuSe SLES 9-SP1 AMD-64 : 2.6.5-7.151 up smp - For SuSe SLES 9-SP1 (32-bit) : 2.6.5-7.151 up smp - For SuSe SLES 9-SP1 (IA64) : 2.6.5-7.151 up smp d. FAStT-MSJ 2.0.30 build 18 e. IBM DS4000 Storage Manager Host software - For 32bit Intel architecture (IA-32) servers or AMD64 and EM64T servers running 32bit Intel architecture version of the Linux operating system 1. IBM DS4000 Storage Manager Runtime version: 09.14.A5.00-1 SMruntime-LINUX-09.14.A5.00-1.i586.rpm 2. IBM DS4000 Storage Manager Client version: 09.15.G5.01-1 SMclient-LINUX-09.15.G5.01-1.noarch.rpm 3. IBM DS4000 Storage Manager Utilities version:09.14.A5.00-1 SMutil-LINUX-09.14.A5.00-1.i386.rpm 4. IBM DS4000 Storage Manager Agent version: 09.14.A5.03-1 SMagent-LINUX-09.14.A5.03-1.i386.rpm OR 5. IBM DS4000 Installer wizard: 09.15.A5.03 SMIA-LINUX-09.15.A5.03.bin - For 64bit Intel architecture (IA-64) servers only 1. IBM DS4000 Storage Manager Runtime version: 09.14.A5.00-1 SMruntime-LINUX-09.14.A5.00-1.ia64.rpm 2. IBM DS4000 Storage Manager Client version: 09.15.G5.01-1 SMclient-LINUX-09.15.G5.01-1.noarch.rpm 3. IBM DS4000 Storage Manager Utilities version:09.14.A5.03-1 SMagent-LINUX-09.14.A5.03-1.ia64.rpm 4. IBM DS4000 Storage Manager Agent version: 09.14.A5.00-1 SMagent-LINUX-09.14.A5.00-1.ia64.rpm OR 5. IBM DS4000 Installer wizard: 09.15.A5.03 SMIA-LINUX64-09.15.A5.03.bin Refer to the http://www.ibm.com/servers/storage/support/disk/ IBM TotalStorage™ Disk Storage Systems Technical Support web site for the latest update to the supported host adapters, device driver levels, Linux kernel versions, DS4000 controller firmware versions and readme. 2.0 Change History -------------------- Version 09.00.B5.04 - 6/30/2005 - Support for RedHat EL 4 update 1 (RHEL4-u1) kernel for Linux servers other than the Linux on Power (LoP) servers (ie. Intel 32bit architecture (Pentium III, Pentium 4, Zeon ...), Intel 64bit architecture (Itanium), Intel EM64T architecture or AMD 64bit (Opteron ...) ) - Support for SuSE SLES 9 Service Pack 1 kernel for all Linux servers (LoP and non-LoP servers) - Support for the DS4800 storage subsystems with controller firmware version 06.15.11.xx. With this version of firmware, the DS4800 controllers utilize all of the available data cache memory installed in each controller blade for I/O caching. Previously with controller firmware version 06.14.xx.xx, the DS4800 controllers used only the first 1G bytes of the installed data cache memory per controller for I/O caching. Version 09.01.B5.02 - 05/18/2005 - This is the initial release of the IBM TotalStorage™ DS4000 Linux RDAC multipath driver to support the Linux 2.6 kernel operating system environments. This RDAC driver is supported on SuSE SLES 9 update 1 Linux on Power servers only. 3.0 Installation and Setup Instructions ----------------------------------------- 3.1 Prerequisites 1. The Linux RDAC driver is released as a source-code package in the format of a gunzip compressed tar file. To unpack the driver source package, type the following command in the Linux console window: tar -zxvf rdac-LINUX-xx.xx.xx.xx-source.tar.gz where xx.xx.xx.xx is the release version of the RDAC driver. The source files will uncompress to the "linuxrdac" directory. 2. The Host server must have the non-failover Fibre Channel HBA device driver properly built and installed before the Linux RDAC driver installation. Refer to the FC HBA device driver README or the FC HBA User Guide for instructions on installing the non-failover version of the device driver. The driver source tree is included in the package if you need to build it from the source tree. 3. Although the Host server can have different FC HBAs from multiple vendors or different FC HBA models from the same vendors, only one model of the fibre channel HBAs can be connected to the IBM DS4000 storage subsystems in each host server. 4. Check for the following low level fibre channel host bus adapter (FC HBA) driver names entries in the appropriate file for a given Linux OS distribution. - For SuSE SLES 9 Linux OS distribution: low level driver FC HBA names should be included in the INITRD_MODULES string in /etc/sysconfig/kernel file. Examples: - For the systems that have the IBM FC2-133 adapter or JS20 fibre channel expansion card, the INITRD_MODULES string should include a qla2xxx and qla2300 ( or qla2300). - For the systems that have IBM Emulex HBAs, the INITRD_MODULES string should include lpfcdd or lpfc. - For Redhat EL 4 Linux OS distribution: There should be a scsi_hostadapter entry for the physical FC HBA driver(s) in the /etc/modules.conf file. Examples: - For the systems that have the IBM FC2-133 adapter or JS20 fibre channel expansion card, there is a scsi_hostadapter entry such as: alias scsi_hostadapterx qla2300 - For the systems that have IBM Emulex HBAs, there is a scsi_hostadapter entry such as: alias scsi_hostadapterx lpfc(or lpfcdd) 5. The kernel source tree for the Linux kernel version to be built against should already be installed before RDAC driver package installation. 3.2 Build and Installation 3.2.1. This step is for SUSE kernel distribution only. For Redhat kernel distribution, proceed to step 3.2.2. a. Install the kernel-source from the SUSE distribution. b. create a soft link to the kernel source. ln -sf /usr/src/ /usr/src/linux c. To ensure kernel version synchronization between the driver and running kernel, type the following in the Linux console window. Press Enter after each command. - cd /usr/src/linux - make mrproper (completely clean the kernel tree) - cp /boot/config-`uname -r` .config (copy the new config) - make oldconfig (update configuration using .config) - make dep (rebuild the dependencies) - make modules (build the modules-not require on newer kernel version) 3.2.2. RDAC Driver Building for SuSE and Redhat a. Change to the "linuxrdac" directory. b. To remove the old driver modules in that directory, type the following and press Enter: make clean c. To compile all driver modules and utilities in a multiple CPUs server (SMP kernel), type the following and press Enter: make 3.2.3. RDAC Driver Installation for SuSE and Redhat a. Type the following and press Enter: make install This command will do the following things: * copy the driver modules to the kernel module tree. * build the new RAMdisk image (mpp-`uname -r`.img) which includes the RDAC driver modules and all driver modules that are needed at boot. b. Follow the instructions displayed at the end of of the build process to add a new boot menu option which uses /boot/mpp-`uname -r`.img as the initial RAMdisk image. The following is an example for /boot/grub/menu.lst (Note that it may vary in accordance with different system setup configuration): title SUSE Linux with MPP support kernel (hd0,1)/boot/vmlinuz root=/dev/sda2 vga=0x317 selinux=0 splash=silent console=tty0 resume=/dev/sda3 elevator=cfq showopts initrd (hd0,1)/boot/mpp-2.6.5-7.139-smp.img The following is an example of /etc/yaboot.conf for IBM® eServer pSeries Architectures (ppc64) systems (Note entries may vary in accordance with your system setup configuration) image = /boot/vmlinux label = MPP root = /dev/sdb3 append = "selinux=0 elevator=cfq" initrd = /boot/mpp-2.6.5-7.139-pseries64.img 3.3 RDAC Driver Post-Installation a. Reboot the system using the new boot menu option. b. To verify that sd_mod, sg, mpp_Upper, qla2300, and mpp_Vhba were loaded after the reboot, type the following and press Enter: /sbin/lsmod On SuSE platforms, verify sg, mppUpper, mppVhba and low level HBA drivers (e.g., qla2xxx, qla2300) are loaded. c. To verify that the RDAC driver discovered the available physical Luns and created virtual Luns for them, type the following and press Enter: ls -lR /proc/mpp d. You can now issue I/Os to the Luns. e. If you make any changes to MPP configuration file (/etc/mpp.conf) or persistent binding file (/var/mpp/devicemapping), please run mppUpdate to re-build RAMdisk image to include the new file so that the new configuration file (or persistent binding file) can be used on the next system reboot. f. To dynamically re-load the driver stack (scsi_mod, sd_mod, sg, mpp_Upper, , mpp_Vhba) without rebooting the system, you need to first comment out all "scsi_hostadapter" entries in /etc/module.conf. Then, issue "modprobe -r mpp_Upper" to unload the driver stack and follow by "modprobe mpp_Upper" to re-load the driver stack. See Recommendation. Recommendation: Reboot the system whenever a need to unload the driver stack arises. The use of modprobe with the RDAC driver stack or the use of rmmod to remove all the drivers in the RDAC driver stack, in order, is not recommended/ supported. g. Installation of the Emulex Application Kit,lpfcapp-2.10g-1.ppc64.tgz, on SLES9 servers, automatically installs HBAnyware. HBAnyware interferes with the unloading the lpfcdfc and lpfc modules. The work around for this is to either stop HBAnyware (/usr/sbin/HBAnyware stop) or uninstall the Application kit. See the Emulex Application Kit Readme for further instructions. h. The file /etc/syslog.conf should have entries for kern.debug, kern.notice, kern.info and kern.warning in order to capture all debug and error messages for MPP driver. 3.4 Disable AVT Open the DS4000 Storage Manager Enterprise Management window, - Highlight the subsystem - Select Tools - Select Execute script. - A script editing window opens. In this window - Select File - Select Load Script - Give the full path name for the script file (eg . /usr/scripts/DisableAVT_Linux.scr) and click OK - Select Tools - Select Verify and Execute Please refer to the IBM TotalStorage DS4000 Storage Manager version 9 Installation and Support Guide for appropriate OS or the Enterprise Window Online help for more information on how to execute a script. 3.5 Persistent Naming Linux SCSI device names have the possibility of changing when the host system reboots. We recommend using a utility such as devlabel to create user-defined device names that will map devices based on a unique identifier, called a UUID. 3.6 RDAC driver unload The unload order for the MPP driver stack is as follows: 1. rmmod mppVhba 2. start "rmmod mppUpper" as a background process Note: If this command in not run before the next command in LoP server, one will gets a response of "ERROR: Module lpfcdd is in use" and the lpfcdd driver can not be removed. 3. rmmod the installed FC HBA driver Depending on the installed FC HBA in the server, this can be qla2xxx followed by qla2300 or mptscsih followed by mptbase or lpfcdd or lpfc. 3.7 RDAC Driver Package Uninstall and Reinstall/Update To un-install the RDAC driver package, type the following and press Enter: make uninstall Note: To Reinstall/Update the RDAC driver package, you need to issue the command "make uninstall" followed by the "make install" command under the /linuxrdac directory in the new RDAC driver source code bundle. 3.8 Kernel Update After applying the kernel update and booting into the new kernel, please do the following things to build MPP Initrd image for the new kernel: a. Change directory to Linuxrdac source code directory. b. do "make uninstall". c. Follow driver building and installation procedure described in Section 3.2.2 and Section 3.2.3. 3.9 Initial Ramdisk image (initrd) Initial RamDisk Image (initrd image) is automatically created when the driver is installed using "make install". Boot loader Configuration file needs to have entry for this newly created image. The initrd image is located in boot partition with file name :'mpp-`uname -r`.img. { Example : mpp-2.4.21-9.ELsmp.img } For a Driver Update, If the system already has an old entry for MPP, the system administrator has to just modify the existing MPP entry accordingly in the boot loader configuration file. In most of the cases, no change is required if the kernel version is same. To create new 'initrd image' user has to run 'mppUpdate' which will overwrite old image file with the new image file. If 3rd party drivers needed to be added to initrd image, edit the /etc/sysconfig/kernel ( SUSE ) with the 3rd party driver entries. Run 'mppUpdate' to create new ramdisk image. 3.10 Adding and Deleting mapped logical drives (LUNs) Linux RDAC supports re-scanning to recognize a newly mapped LUN without rebooting the server. The utility program is packed with the Linux RDAC driver. It can be invoked by using either "hot_add" or "mppBusRescan" command. "hot_add" is a symbolic link to mppBusRescan. There are man pages for both commands. However, the Linux RDAC driver doesn't support LUN deletion. One has to reboot the server after deleting the mapped logical drives. 3.11 Proc entries To verify that the RDAC driver discovered the available physical LUNs and created virtual LUNs for them, type the following and press Enter: ls -lR /proc/mpp The linux system provides a /proc file system that is a special memory-only, software-created filesystem used by the kernel to export driver information to the user space. The proc pseudo- filesystem is mounted to /proc. The linux SCSI subsystem's proc filesystem directory is /proc/scsi. By convention each HBA driver creates a sub directory under /proc/scsi. The linux RDAC driver's proc entries are: 1. /proc/mpp Entry for the RDAC driver itself 2. /proc/scsi/mpp/ The entry for the MPP virtual host adapter. This can differ from system to system and is assigned by the scsi middle-layer. 3. /proc/mpp/ There is an entry for each array that is visible to the host. 4. /proc/mpp//controllerA /proc/mpp//controllerB These are the entries for the 2 targets on each array seen by the host. Each storage array has 2 controllers. 5. /proc/mpp//controller/ Here the low level driver can be any one of qlogic or emulex HBAs. The HCT# is the Host#, channel#, Target#, where Host# is the Host No of the low-level driver and is assigned by the scsi mid-layer. Channel# depends on whether the HBA card is single or dual channeled. Target# is the Target # assigned to that controller on that array and is assigned by the Low-level HBA driver. 6. /proc/mpp//controller//LUN # Lastly are the Volumes or LUN # of Volumes as mapped on host partition on the storage array and seen through that path or Initiater(Host)-Target combination. 3.12 MAN pages There are 4 MAN pages that can provide more information man RDAC - This man page talks about the RDAC(MPP) driver and the RDAC(MPP) configurable parameters. man mppUtil - This man page tells you how to use the mppUtil - the utility for the RDAC(MPP) driver. man mppBusRescan - This man page describes the hot_add (a.k.a mppBusRescan) script that is available to add newly mapped luns and newly added storage arrays. man mppUpdate - This man page instructs you as to how you can use the persistant device mapping facility available with the RDAC driver and how to change the configuration values for the RDAC driver and build a new RDAC ramdisk. 4.0 Configuration Information ------------------------------- 4.1 Configuration installation N/A 4.2 Configuration Settings N/A 4.3 Hardware Status and Information N/A 5.0 Unattended Mode ------------------------------- N/A 6.0 WEB Sites and Support Phone Number ---------------- 6.1 IBM TotalStorage™ Disk Storage Systems Technical Support web site: http://www.ibm.com/servers/storage/support/disk/ 6.2 IBM TotalStorage™ Marketing Web Site: http://www.ibm.com/servers/storage/disk 6.3 If you have any questions about this update, or problem applying the update go to the following HelpCenter World Telephone Numbers URL: http://www.ibm.com/planetwide IMPORTANT: You should download the latest version of the DS4000 Storage Manager host software, the DS4000 storage subsystem controller firmware, the DS4000 drive expansion enclosure ESM firmware and the drive firmware at the time of the initial installation and when product updates become available. To be notified of important product updates, you must first register at the IBM Support and Download Web site: www-1.ibm.com/servers/storage/disk/ 7.0 Trademarks and Notices ---------------------------- The following terms are trademarks of the IBM Corporation in the United States or other countries or both: IBM FAStT TotalStorage™ the e-business logo xSeries HelpCenter Linux is a registered trademark of Linus Torvalds. Microsoft, Windows, and Windows NT are trademarks of Microsoft Corporation in the United States, other countries, or both. Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United states, other countries, or both. UNIX is a registered trademark of The Open Group in the United States and other countries. STEELEYE are TRADEMARKS and LIFEKEEPER is a registered trademark of STEELEYE TECHNOLOGY, INC. 8.0 Disclaimer ---------------------------- 8.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. 8.2 Note to Government Users Include the following note after the disclaimer paragraph. Note to U.S. Government Users -- Documentation related to restricted rights -- Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corporation.