,QVWDOODWLRQ DQG &RQILJXUDWLRQ *XLGH IRU /LQX[ DQG $SDFKH :HE 6HUYHU RQ &RPSDT 3URVLJQLD DQG 3UR/LDQW 6HUYHUV
5;
ECG513/0399
In Compaq’s testing for this guide, both SMP and SMP_PROF were uncommented.
Once the Makefile is edited and saved, run make menuconfig (from a command prompt) or make
xconfig (from a xterm) from /usr/src/linux. It is necessary to make the following kernel
modifications:
x
Under the Character Devices menu, enable Real Time Clock support. According to the Linux
Kernel Configuration help, “People running SMP (= multiprocessor) versions of Linux
should enable this option to read and set the RTC clock in an SMP compatible fashion.”
x
Also under the Character Devices menu, disable Advanced Power Management BIOS
Support. According to the SMP FAQ (mirrored at
www.phy.duke.edu/brahma/smp-faq/smp-
faq-3.html
, and citing Jakob Oestergaard and Alan Cox), “APM and SMP are not
compatible”.
x
Be sure that other kernel configuration options are properly set. Some distributions install the
kernel sources with a default configuration identical to the kernel that is shipped with the
distribution, others do not. It is necessary to build a kernel with proper support for Compaq
ProLiant or Prosignia hardware in order for these guidelines to work. See section, Hardware
Overview, for documentation on which device drivers need to be built in to the kernel or
configured to be loadable as modules.
Once this is completed, type “make dep; make clean” at the command line. Then type “make
zImage”. This last command invokes the script that builds a new kernel. Making zImage will
sometimes fail, usually because the kernel to be compiled turns out to be too big. If this is the
case, then type “make bzImage” instead. Making bzImage builds a kernel with fewer constraints
than those placed on make zImage. Once the kernel finishes compiling, the kernel image (either
zImage or bzImage) will be in /usr/src/linux/arch/i386/boot. Copy this kernel image to the same
directory where other Linux kernels are located (often / or /boot – look for filenames such as
vmlinux or vmlinuz, or create a new directory off of / to hold kernels).
Again, from the /usr/src/linux directory, type make modules. When this is complete, type make
modules_install. These script commands build and install the necessary modules in an SMP
compliant fashion (provided the SMP=1 is uncommented from the Makefile). Once this is done,
all kernel and module binaries are built. At this point, you can edit the /etc/lilo.conf file to include
a pointer to the new kernel image just built. Compaq recommends you keep the old LILO entry
(and a LILO boot floppy) in case something should fail with the new SMP kernel.
After the kernel, modules, and initrd pieces (see initrd in section below) are rebuilt for SMP,
shutdown the server and reboot into the System Configuration Utility. Follow the instructions in
section, APIC Settings (SMP), to place the Compaq server into an Intel SMP-compliant mode.
Distributions Which Use an Initial Ram Disk (initrd) Entry in /etc/lilo.conf
An Initial Ram Disk is an area reserved in Ram at boot-up time into which a valid Linux file
system is copied. This area of Ram is then mounted briefly during the boot-up process in order
for the kernel to gain access to necessary device drivers – such as SCSI controller drivers – which
enable the kernel to continue its boot process. This initial Ram disk is mounted as the root of the
file system, and after appropriate drivers are loaded, the root hard disk – e.g. /dev/sda1 – is
mounted at the root of the file system instead.
Initial RAM disk.(initrd) is a LILO tag which tells LILO to unpack a gzipped file system image
for loading into a RAM disk immediately after booting. Distributions that use an initrd tag often
do so because no disk support is built directly into the kernel. In such cases, disk support must be
available in a module, but since most modules reside on disk, the disk-support module is