Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
Lustre can currently build against Red Hat 2.4-style kernel-source
RPMs. All other kernel-source RPMs are *unsupported* at this time.
Note that a Lustre-patched kernel is required for building Lustre; in
most cases a kernel-source RPM from your Linux vendor will not contain
the necessary patches.
1. kernel.h
Building against a kernel-source RPM requires a special header. On
Red Hat systems, this file should be automatically created at boot
time, and saved in /boot/kernel.h.
*** If you are not running Red Hat Linux, or are not booted into the
*** kernel you are trying to build against, you need to create this
*** file manually.
*** If you do not, the Lustre build may fail, or may fail to build
*** modules that work with your kernel.
Here is an example /boot/kernel.h file. If you are building on
x86_64, the first defines should be __MODULE_KERNEL_x86_64, etc. The
other defines should be simple to figure out.
/* This file is automatically generated at boot time. */
#ifndef __BOOT_KERNEL_H_
#define __BOOT_KERNEL_H_
/* Kernel type i686-smp */
#ifndef __MODULE_KERNEL_i686
#define __MODULE_KERNEL_i686 1
#endif
#ifndef __BOOT_KERNEL_ENTERPRISE
#define __BOOT_KERNEL_ENTERPRISE 0
#endif
#ifndef __BOOT_KERNEL_BIGMEM
#define __BOOT_KERNEL_BIGMEM 0
#endif
#ifndef __BOOT_KERNEL_HUGEMEM
#define __BOOT_KERNEL_HUGEMEM 0
#endif
#ifndef __BOOT_KERNEL_SMP
#define __BOOT_KERNEL_SMP 1
#endif
#ifndef __BOOT_KERNEL_UP
#define __BOOT_KERNEL_UP 0
#endif
#endif
You should save this somewhere, and pass the location of this file to
./configure using the --with-kernel-source-header option.
2. .config
You will also need to tell Lustre about the .config file for your
kernel. The two likely locations of this file are
/boot/config-$(uname -r), and /usr/src/linux-2.4/configs/. You should
pass the location of this file to Lustre using the --with-linux-config
option.
3. An Example
Here is an example for configuring Lustre:
./configure --with-linux=/usr/src/linux-2.4.20-28.9_lustre.1.0.3 \
--with-kernel-source-header=/boot/kernel.h \
--with-linux-config=/boot/config-2.4.20-28.9_lustre.1.0.3smp