HP QLA 7.x Driver Kit ===================== This RPM contains the driver and associated utilities to deploy the HP supported QLogic Linux driver on 2.4 kernel based systems Supported Adapters ------------------ The following adapters are supported with this driver kit: Adapter Supported Architectures FCA2214 x86, x86_64 FCA2214DC x86, x86_64 bl20p Mezzanine Card x86 bl25p Mezzanine Card x86_64 bl30p Balcony Card x86 bl35p Balcony Card x86_64 A6826A ia64 A7538A ia64 AE311A x86, x86_64 AE312A x86, x86_64 Supported Distributions ----------------------- The following Linux distributions are supported with this driver kit: Distribution Architectures Red Hat Enterprise Linux 2.1 i386, ia64 Red Hat Enterprise Linux 3.0 i386, ia64, x86_64 SUSE Linux Enterprise Server 8 i386, ia64, x86_64 (Service Pack 3 or higher) Kit Contents ------------ The hp_qla2x00src and hp_qla2x00 RPM contains the following scripts and files in the /opt/hp/src/hp_qla2x00src or /opt/hp/hp_qla2x00 directories respectively in addition to the driver source code. condition_kernel Sets the kernel source dependencies to reflect the current running kernel or the specified kernel *build_driver Builds the QLA driver from source code edit_conf Makes the proper edits to system configuration files to imbed the qla2200 and qla2300 modules in the initrd with the proper driver load time parameters make_initrd Builds a new initrd using the correct system utilities set_parm Sets up the /etc/hp_qla2x00.conf file so that it has the correct driver settings based upon the configuration that the user wants to run and rebuilds the initrd *master.sh Runs the condition_kernel, build_driver, edit_conf and make_initrd utilities. Useful to compile a new driver when a new kernel is loaded. *compile_all_kernels Runs master.sh for all installed kernels libqlsdm-.so QLogic's implementation of the HBAAPI spec. This file is copied to /usr/lib when the RPM is installed readme.libqlsdm Contains information on the libqlsdm.so library that is included in this driver kit * Only contained in the hp_qla2x00src RPM Driver Parameters ----------------- This driver kit passes in the following parameters to the QLogic driver when it is loaded. These values can be seen in /etc/modules.conf. ql2xport_down_retry Sets the number of retries that the QLogic driver will do when a remote target port has gone down ql2xloginretrycount Sets the number of retries that the QLogic driver will do when it trying to log into a remote port ql2xfailover Turns multipath failover on or off ql2xmaxqdepth Sets the maximum queue depth per LUN ql2xlbType Sets what type of load balacing to do between paths when failover is enabled ql2xexcludemodel Sets what device models are to be exported as single path devices when failover is enabled ql2xautorestore Sets what device models will attempt to failback to its primary path when failover is enabled The following table lists the driver parameter values for each mode that the driver kit can be in: Parameter Single Path Secure Path QLogic Failover ql2xport_down_retry 64 3 30 ql2xloginretrycount 16 16 16 ql2xfailover 0 0 1 ql2xmaxqdepth 16 16 16 ql2xlbType 0 0 1 ql2xexcludemodel 0x0 0x0 0x06 ql2xautorestore 0x0 0x0 0x80 You can change the parameters of the driver using the set_parm script in either the /opt/hp/src/hp_qla2x00src directory or the /opt/hp/hp_qla2x00 directory (depending upon which RPM you have installed). There are three settings: 1. Single Path (-s) you are connected through one path to the storage without any redudany 2. Secure Path (-m) you are using the Secure Path software for multipathing and failover 3. QLogic Failover (-x) you are using the multipathing and failover functionality built into the qla2x00 adapter driver You can also manually set the driver parameters if you invoke set_parm with no arguments and select the manual option from the menu. Note that if you change the driver parameters, a new initrd has to be build. This is done by the set_parm script by calling the edit_conf and make_initrd scripts. Notes on Upgrading Kernels -------------------------- 1. After you upgrade your kernel and kernel sources, you can compile new qla2200.o and qla2300.o modules for the new kernel without rebooting. You may need to do this as the new kernel that you just installed may not contain the latest supported HP driver. To do this you should: a. Go to /opt/hp/src/hp_qla2x00src b. Execute the command "./master.sh -l" to get a list of valid module and source directories c. Choose the set of directories that match your new kernel and enter them with the -s and -m switches of the master.sh script For example: # master.sh -s linux-2.4.21-9.EL -m linux-2.4.21-9.ELsmp The script should take care of the rest of the compilation automatically. 2. When you upgrade from an old kernel to a new kernel, you may need to manually remove the entry for qla2300_conf from /etc/modules.conf. Having these entries present in /etc/modules.conf may cause the initrd build to fail because those modules may not come with the new kernel. The entries will be replaced and new qla2200_conf and qla2300_conf modules built when you compile a new driver for the new kernel.