Go to TogaWare.com Home Page.
GNU/Linux Desktop Survival Guide
by Graham Williams

Kernel Compiles to Support HIGHMEM and SMP

Eventually the standard package kernel-image-2.4.20-1-686-smp was installed, providing both SMP and HIMEM support.

Previous kernel compiles are outlined here.

  # wajig install bin86 kernel-package kernel-source-2.4.16 debconf-utils
  # cd /usr/src
  # tar jxvf kernel-source-2.2.16.tar.bz2
  # cd kernel-source-2.2.16
  # cp /boot/config-2.4.16-586 .config
  # make menuconfig
    Processor Type and Features
      CONFIG_HIGHMEM4G=y (originally off)
      CONFIG_SMP=y (already set)
  # make-kpkg clean
  # make-kpkg --append-to-version -p3hmsmp --revision dha01 
              --initrd kernel_image

The aim was to have:

  1. dpt_i2o provided by the kernel (2.4.14 on with CONFIG_SCSI_DPT_I2O=m)
  2. support for 2 CPUs (CONFIG_SMP=y)
  3. support over 1GB memory (CONFIG_HIGHMEM4G=y)

With the new kernels the initrd (initial ram disk) is the default, so it is worth moving to this. It requires changes to your /etc/lilo.conf to include initrd lines. For example:


Note also that with the dual processor card in this machine (ASUS CUV4X-DLS) the noapic option was required, otherwise there is a problem with running out of IRQs and the boot hangs after the following message:

  Setting 2 in the phys_id_present_map
  ...changing IO-APIC physical ID to 2 ... ok. 
  ..TIMER: vector=0x31 pin1=2 pin2=0

An alternative to turning APIC off is to free up the IRQs used by the PCI IDE devices. This is only useful if either the primary or secondary IDE is not being used (for IDE hard disks and IDE CD-ROM). To turn it off the secondary or both IDEs in the BIOS setup, go to Advanced$\rightarrow$Chip Configuration$\rightarrow$Onboard PCI IDE and set it to either Primary or Disabled.

Copyright © 1995-2014 Togaware Pty Ltd
Support further development through the purchase of the PDF version of the book.
Brought to you by Togaware.