Kernel

Instructions

  • For patching and details, see help for installing a new kernel (local)
  • make xconfig (load in the previous successful configuration, such as 2.4.16m5, from /boot)
  • make dep
  • make bzImage
  • make modules
  • make modules_install
  • copy bzImage and System.map to /boot (keep clearly named copies along with the functional files)
  • after installing a new kernel, run through checklist

Debian

  • Find out which kernels are available and issue:
  • Here's a user's routine:
    • make menuconfig
    • make-kpkg clean
    • make-kpkg --revision=<your label, no underscores> kernel_image
    • dpkg -i ../kernel-image-2.4.19_<your label>_i386.deb
    then when your module sources are unpacked (should decompress to directory /usr/src/modules)...
    • make-kpkg modules_image
    • dpkg -i ../<module name>-<your label>-2.4.19_i386.deb

    Then be sure the modules you want to load at boot time are in /etc/modules.

Patches

  • Always check out Alan Cox's patches -- the default is to use his latest patch to the latest stable kernel. His patches to the -preX versions of the stable kernel tend to be experimental. See kernel.org.
  • Try the latest from Con Kolivas at http://members.optusnet.com.au/ckolivas/kernel/. The results are looking pretty good now!

Gigadrive patch in 2.4.19

I finally discovered that kernel 2.4.19 pre-3 has the gigapatch, cf. Marcelo's announcement. That means any patch subsequent will also include it -- it may be worth waiting for the official 2.4.19, but that will contain the patch. (But see this long kernel discussion in mid-June).

Note that you found this announcement by searching for a line in the kernel configuration help file -- PDC202{46|62|65|67|68|69|70} support

So the idea is that you don't have to use the -ac version and should not use 2.5 and not even the 2.4.19 prepatches, but wait for the complete and tested 2.4.19. In fact, you currently have no need to upgrade the excellent 2.4.16 kernel, which you might want to just keep for a couple of years for cyberspace. You may need a new kernel for gubbio to handle USB better.

For a discussion of system bus speed, see gigadrive. Note that the most recent kernel may have solved this problem -- cf. " "The Promise Ultra133TX2 (20269) runs very happily... The Promise BIOS recognizes both attached drives as UDMA(133) and the kernel sets them up and uses them properly."

CD, CDRW, DVD, DVD-R

These are defined as SCSI devices; see separate file for details. Note that recent kernels (from 2.4.17 at least up to 2.4.20) have improved versions of the SCSI generic (sg) driver; see DVD for details.

PTY and devpts fs

On 4 June 2002, working on gubbio with kernel 2.4.16m4, I got this while booting:

Mounting /dev/ptsmount: fs type devpts not supported by kernel (failed)

Below it, I got this error:

blogd: console = dev/console, stdin = dev/console, must differ, boot logging disabled

I take it these are related, and I need the devpts file system for virtual consoles. Help on this is found here, but the best source is Documentation/Configure.help:

CONFIG_DEVPTS_FS
You should say Y here if you said Y to "Unix98 PTY support" above. You'll then get a virtual filesystem which can be mounted on /dev/pts with "mount -t devpts". This, together with the pseudo terminal master multiplexer /dev/ptmx, is used for pseudo terminal support as described in The Open Group's Unix98 standard: in order to acquire a pseudo terminal, a process opens /dev/ptmx; the number of the pseudo terminal is then made available to the process and the pseudo terminal slave can be accessed as /dev/pts/. What was traditionally /dev/ttyp2 will then be /dev/pts/2, for example.

The GNU C library glibc 2.1 contains the requisite support for this mode of operation; you also need client programs that use the Unix98 API.

Here is what needs included in the kernel:

Character Devices: Unix98 PTY support (CONFIG_UNIX98_PTYS)
Filesystems: /dev/pts filesystem for Unix98 PTYs (CONFIG_DEVPTS_FS)

I included these in the 2.4.16m5 kernel. The m stands for modules -- it's largely because of i2c, which I couldn't get to work anyway -- there's some dev problem.

Lilo settings

Current settings fro 2.4.16m5:

append = "hdb=ide-scsi hdd=ide-scsi ide2=ata66 ide3=ata66 vga=0x0317 video=vesa:ywrap"

For bus speed, see gigadrive.

Past kernels

 

 

top
Debate
Evolution
CogSci

Maintained by Francis F. Steen, Communication Studies, University of California Los Angeles


CogWeb