
Building an HP SFS client kit manuallyC–6
To create a built kernel tree, perform the following steps:
a. Extract the kernel sources from the src/ directory and put them in the build/linux/
directory, as shown in the following example:
$ mkdir -p build/linux
$ cd src/linux-2.4.21/
$ tar -cpf - ./ | (cd ../../build/linux; tar -xpf -;)
$ cd ../../
b. Apply the Lustre patches, as follows.
i. Extract the Lustre source files, as follows:
$ cd build
$ tar -xzpf ../src/lustre-V1.4.tgz
$ cd ..
ii. Apply the patches listed in the appropriate series file (under the build/lustre-
V1.4/lustre/kernel_patches/series/ directory) to the kernel tree, as follows:
$ for i in $(cat build/lustre-V1.4/lustre/kernel_patches/series/client-
rh-2.4.21-40); do cat
build/lustre-V1.4/lustre/kernel_patches/patches/"$i" | (cd build/linux;
patch -p1); done
c. If any patches are needed for the interconnect, apply them now. The following is an example of
applying the qsnet patches for a Quadrics interconnect:
$ tar -xjf src/qsnetpatches-RedHat-2.4.21-40.EL.qp2.0_hp.tar.bz2
$ cd qsnetpatches-RedHat-2.4.21-40.EL.qp2.0_hp/
$ tar -xjpf qsnetpatches.tar.bz2
$ cd ../
$ cat qsnetpatches-RedHat-2.4.21-40.EL.qp2.0_hp/qsnetpatches/*.patch | (cd
build/linux; patch -p1)
d. Apply the additional required patches to the kernel sources in the same way that you applied
the Lustre patches in Step b of this procedure. See Section 3.2.6 for an example list of additional
patches.
You can find the additional patches in the src directory; you can find the series file (which
lists the patches) in the /mnt/cdrom/client_enabler/src/arch/distro/patches/
directory.
The following is an example of the command that you would use to apply the patches:
$ for i in $(cat
/common/linux/kits/lustre/jimi_clients/current/SFS_V2_2_South_ce_cd/
client_enabler/src/x86_64/RHEL3.0_U7/patches/client_RHEL3_U7_series);
do cat src/"$i" | (cd build/linux; patch -p1); done
e. Regenerate the kernel config file.
• If it is necessary for your system requirements, modify the config file.
•If the config file does not require any customizations for your requirements, enter the
following commands:
$ cd build/linux
$ make oldconfig
$ cd ../../
NOTE: Note that if you are using an x86_64 or i686 system, you must configure the following
setting:
CONFIG_STACK_SIZE_16KB=y
f. Build the kernel and modules.
Depending on your client distribution and architecture, the command line varies. For example,
for i686 (ia32), ia32e (em64t), x86_64 architectures, the command is as follows:
$ make dep clean; make bzImage modules
For ia64 architectures, the command is as follows:
$ make dep clean; make compressed modules
Comentarios a estos manuales