FILE NAME: bonding-1.0.3-12HP.src.rpm TITLE: HP Tested and Approved Linux Bonding Driver VERSION: 1.0.3-12HP LANGUAGE: English CATEGORY: Software Solutions DIVISIONS: Enterprise and Mainstream Servers PRODUCTS AFFECTED: HP NC3120 Fast Ethernet Adapter (e100) HP NC3121 Fast Ethernet Adapter (e100) HP NC3122 Fast Ethernet Adapter (e100) HP NC3123 Fast Ethernet Adapter (e100) HP NC3131 Fast Ethernet Adapter (e100) HP NC3132 Fast Ethernet Adapter (e100) HP NC3133 Fast Ethernet Adapter (e100) HP NC3134 Fast Ethernet Adapter (e100) HP NC3135 Fast Ethernet Adapter (e100) HP NC3163 Fast Ethernet Adapter (e100) HP NC6132 Gigabit Server Adapter (e1000) HP NC6133 Gigabit Server Adapter (e1000) HP NC6134 Gigabit Server Adapter (e1000) HP NC6136 Gigabit Server Adapter (e1000) HP NC6170 Gigabit Server Adapter (e1000) HP NC6770 Gigabit Server Adapter (bcm5700) HP NC7131 Gigabit Server Adapter (e1000) HP NC7132 Gigabit Server Adapter (e1000) HP NC7170 Gigabit Server Adapter (e1000) HP NC7760 Gigabit Server Adapter (bcm5700) HP NC7761 Gigabit Server Adapter (bcm5700) HP NC7770 Gigabit Server Adapter (bcm5700) HP NC7771 Gigabit Server Adapter (bcm5700) HP NC7780 Gigabit Server Adapter (bcm5700) HP NC7781 Gigabit Server Adapter (bcm5700) OPERATING SYSTEM: Red Hat Linux 7.2 Professional - Errata kernel 2.4.18-27 (SMP, UP) Red Hat Linux 7.3 Professional - Errata kernel 2.4.18-27 (SMP, UP, and BigMem) Red Hat Linux 8.0 Professional - Errata kernel 2.4.18-27 (SMP, UP, and BigMem) Red Hat Enterprise Linux 2.1 - QU2 - Errata kernel 2.4.9-e.24 (SMP, UP, and Enterprise) SuSE Linux Enterprise Server 7 (SLES-7) - Errata kernel 2.4.18-244 (SMP) - Errata kernel 2.4.18-262 (UP) Conective Linux Enterprise Edition, SCO Linux 4.0, SuSE Linux Enterprise 8, and Turbolinux 8 all powered by UnitedLinux 1.0 - Service Pack 2a (service packs must be installed in order, from service pack 1 to the above service pack) Note: Currently, this driver is not supported on the BigMem Errata Kernel 2.4.18-27 on Red Hat Linux 7.2 Professional due to driver installation issues. PREREQUISITES: Pentium based computer 128MB RAM minimum Latest HP system ROM bcm5700 driver version 6.2.11a e100 driver version 2.2.21b e1000 driver version 5.0.43a Note: Please visit the following URL to upgrade the ROM http://h18000.www1.hp.com/support/files (select ProLiant from the server column) EFFECTIVE DATE: 08/12/2003 SUPERSEDES: bonding-1.0.3-3.src.rpm DESCRIPTION: This RPM Package contains the HP Tested and Approved Linux bonding driver for use with HP Server Adapters mentioned in the PRODUCTS AFFECTED section of this document. ENHANCEMENTS/FIXES: - Ported MAC and MTU functions from latest bonding driver - Added Jumbo frames limitation to this document - Include "HP" in the version of the built binary bonding driver RPM package Table of Contents ================= Introduction Packaging Kernel Source Code Setup Installing the RPM Package Bond Configuration Module Parameters Driver Messages Uninstalling the RPM Known Issues Introduction ============ This package provides a driver module (bonding.o) and the ifenslave utility used to configure teaming. After installation, additional information can be found in the bonding.txt file located at: For Red Hat: /usr/share/doc/bonding-1.0.3/bonding.txt For SuSE and UnitedLinux: /usr/share/doc/packages/bonding/bonding.txt Packaging ========= The driver is released in the source RPM format. The file name for the package is bonding-.src.rpm and is dependent on the kernel source code. Kernel Source Code Setup ======================== The bonding driver requires the presence of the kernel source code and configuring the kernel source before building the bonding driver. The following steps need to be done once for each kernel that is booted. For example, if the current kernel is UP (uni-processor) and an SMP (symmetrical-multi-processor) kernel is booted, these steps must be performed again to configure the kernel source for SMP before building the bonding driver for the SMP kernel. Red Hat installations If the /usr/src/linux- directory does not exist install the kernel source code per Red Hat instructions. Once installed, follow the commands listed below to configure the kernel source to match the running kernel. # cd /usr/src/linux- # make mrproper # make -e KERNELRELEASE=`uname -r` oldconfig # make -e KERNELRELEASE=`uname -r` dep SLES 7 and UnitedLinux 1.0 installation If the /usr/src/linux- directory does not exist install the kernel source code per SuSE or UnitedLinux instructions. Once installed, follow the commands listed below to configure the kernel source to match the running kernel. # cd /usr/src/linux-.SuSE # cp /boot/vmlinuz.config .config # cp /boot/vmlinuz.version.h include/linux/version.h # cp /boot/vmlinuz.autoconf.h include/linux/autoconf.h # make oldconfig # make dep Installing the RPM Package ========================== 1. Check for the existence of a current version of the bonding package as follows: # rpm -q bonding If an old version of the package exists the RPM package should be removed. # rpm -e bonding Then remove the loaded bonding module. # rmmod bonding Verify that the old bonding package has been removed as follows: # rpm -q bonding 2. Install the RPM source package. # rpm -ivh bonding-.src.rpm 3. Change to the following directory and build the binary RPM for the bonding driver. For Red Hat: # cd /usr/src/redhat # rpmbuild -bb SPECS/bonding.spec For SuSE and UnitedLinux: # cd /usr/src/packages # rpm -bb SPECS/bonding.spec Note: If an error is encountered while building the driver or this directory doesn't exist, please refer to the "Kernel Source Code Setup" section of this document. 4. Install the new binary RPM package using the following command. Don't use the U (Upgrade) flag in the RPM command below - previous bonding drivers must be removed as described in step one above before installing this version. # rpm -ivh RPMS/i386/bonding-.i386.rpm 5. The bonding.o module is installed in the /lib/modules//kernel/drivers/net directory. Bond Configuration ================== Please refer to the "Bond Configuration" and "Configuring Multiple Bonds" sections in bonding.txt to get more details on configuring single and multiple teams using the bonding driver. The section on "Switch Configuration" gives details about configuring the switch to support the load balancing modes of the bonding driver. The section on "Verifying Bond Configuration" gives details on how to verify the teaming configuration. Module Parameters ================= Please refer to the "Module Parameters" section in bonding.txt to get more details on the module parameters supported by the bonding driver. Uninstalling the RPM ==================== The following command will uninstall the bonding RPM. rpm -e bonding Known Issues ============ 1) If jumbo frames are used (MTU size greater than 1500 bytes), every network driver controlling a teamed NIC must support setting of the MTU size (SIOCSIFMTU IOCTL). A method to determine if your network driver/adapter supports this IOCTL is to run the following command on the interface (eth0 used in this example): /sbin/ifconfig eth0 mtu 9000 If the command completes without error, ensure the MTU size was changed with the following command: /sbin/ifconfig eth0 | grep MTU You should see a line similar to the following if the driver/adapter supports jumbo frames: UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1 You may also monitor /var/log/messages for possible error/confirmation messages. 2) When using the arp_interval module parameter, the "Link Failure Count" reported in /proc/net/bondN/info will often show at least one link failure for each interface. This issue can safely be ignored. Copyright 2002, 2003 Hewlett-Packard Development Company, L.P. Product names mentioned herein may be trademarks and/or registered trademarks of their respective companies