HOW TO ADD DRIVERS - Example shown for Intel Pro/1000 series gigabit adapters ------------------ => If available, get the prebuilt modules for the appropriate kernel from: ftp://www.scyld.com/pub/beowulf//updates For example, for the 2.2.19-12 kernel: ftp://www.scyld.com/pub/beowulf/27z-8/updates/e1000-3.6.8.1.tar.gz => If not available, download source code for driver. The Intel Pro/1000 series driver can be found at ftp://www.intel.com/df-support/2897/eng or http://downloadfinder.intel.com/scripts-df/Product_Filter.asp?ProductID=415 or http://support.intel.com/support/go/linux/e1000.htm NOTE: If the kernel source rpm was not installed, you'll have to do that first. It is installed by default under 27cz-9, but not under 28cz-8-beta2. The kernel source is available on the distribution CD under Scyld/RPMS/kernel-source-2.4.9-21.1.i386.rpm => Add this line to the beginning of the Makefile CFLAGS = $(KCFLAGS) => Make the beoboot, SMP, and UP modules for the version of the Scyld kernel that you are running under (27cz-9 shown here): > make KCFLAGS="-D__BOOT_KERNEL_H_ -D__module__beoboot" > mv e1000.o /lib/modules/2.2.19-14.beobeoboot/net > make KCFLAGS="-D__BOOT_KERNEL_H_ -D__BOOT_KERNEL_SMP=1" > mv e1000.o /lib/modules/2.2.19-14.beosmp/net > make KCFLAGS="-D__BOOT_KERNEL_H_ -D__BOOT_KERNEL_UP=1" > mv e1000.o /lib/modules/2.2.19-14.beo/net => Add new entries for this module to the PCI table 1. Add, if necessary, the following bootmodule entry to the configuration file (in /etc/beowulf/config.boot for 27cz-9 and /etc/beowulf/config for 28cz-4): bootmodule e1000 2. Add entries to the device list for each device supported by this driver (in /etc/beowulf/config.boot for 27cz-9 and /usr/share/kudzu/pcitable for 28cz-1): pci 0x8086 0x1000 e1000 pci 0x8086 0x1001 e1000 pci 0x8086 0x1004 e1000 pci 0x8086 0x1008 e1000 pci 0x8086 0x1009 e1000 pci 0x8086 0x100c e1000 => Build the dependency file (for each kernel) used by modprobe to load the correct module: For single processor kernel: depmod -a -e -F /boot/System.map-2.2.19-14.beo 2.2.19-14.beo For SMP (more than one processor machine) kernel: depmod -a -e -F /boot/System.map-2.2.19-14.beosmp 2.2.19-14.beosmp For beoboot kernel (Stage 1 image): depmod -a -e -F /boot/System.map-2.2.19-14.beobeoboot 2.2.19-14.beobeoboot => Rebuild the Phase 1 and Phase 2 kernel images: /usr/bin/beoboot -1 -f -o /dev/fd0 -c "apm=power-off" /usr/bin/beoboot -2 -n -k /boot/vmlinuz-`uname -r` -o /var/beowulf/boot.img -c "apm=power-off" NOTE: ---- If your master node is single processor and your compute node is SMP, and you don't have a SMP kernel installed, you'll have to get the RPM from the distribution CD and install it (using rpm -U). This happens when you install on a single processor machine because the installer selects the kernel to be installed based on the machine being installed on. You must run the same kernel on all of the machines in the cluster. The SMP kernel can run on both single processor and SMP machines.