Rick Moen's Notes on Upgrading to Linux 2.2

This is a listing of the packages you may need to upgrade, in order
to successfully switch to the 2.2 series of Linux kernels. The list
is intended for users who manage their systems manually, from
source code archives. Users who depend on binary distributions
and pre-built, self-installing "packages" (such as .deb or .rpm files)
will probably prefer to wait for new versions of their Linux distributions,
built around 2.2.x kernels.

For further 2.2 installation help,
see the Documentation/Changes file (and other Documentation/* files)
in each kernel's source tree, and
Alan Cox's
"Clue Point Two" Web page. The Debian Project's Kernel 2.2
Checklist is also an outstanding resource.

Miscellaneous notes:

You will need to change /etc/printcap to use /dev/lp0
instead of /dev/lp1, because of parallel port driver changes in Linux 2.1/2.2
that now number parallel devices from zero instead of imitating obsolete
DOS driver numbering. You may wish to switch to the more-modular "parport"
driver, which supports plug-in drivers for sundry parallel devices.

It is reported (by Michael Vance) that some hardware drivers --
lp, sound, and joystick -- must be compiled into the kernel, as they
have problems when run as modules.

Be aware that /dev/cua* device files are being phased out, and their usage
is now deprecated in kernel 2.2.x. Use /dev/ttyS??, instead.

kerneld can be disabled, if you include kmod (a kernel thread). See
Documentation/kmod.txt, in your kernel source tree.

Recent kernels are said to compile now (in general) reliably with egcs
1.03 or pgcc (or FSF's gcc 2.7.2.3 or above). The last word in compatibility
remains gcc 2.7.2.3, however.

smbmount and fdutils (among probably other utilities) must be recompiled
against the 2.2.x headers, to work optimally.

Old-style /dev/ttyp* pseudo-TTY devices (major device #4) have been dropped.
You may need to make /dev/tty* (major device #3) and /dev/pty* (major device
#2) device files, if you get bogus "out of pty" errors.

The 128MB/partition limit on Intel-Linux swap partitions is gone in 2.2,
provided you replace mount and mkswap (both in util-linux).

Compiling syncookie support into the kernel doesn't suffice to enable it:
You should issue the command "echo 1 > /proc/sys/net/ipv4/tcp_syncookies"
at boot time, to do so.

Ctrl-Alt-Del now defaults to a cold reboot. For warm reboot, add a
"reboot=warm" (or sometimes "reboot=bios") to /etc/lilo.conf.

You can now provide kernel-level interpretator services for java
binaries, python, and elisp code -- and potentially others.

Here are the latest of the relevant packages I've been able to
find. No warranty, no assurances, post no bills, tra la. These
things may give you trenchfoot and terminal halitosis, for all I know.
Have fun! Fnord.

glibc-crypt:
"The GNU C library now includes Michael Glad's Ultra Fast Crypt, which
provides the Unix `crypt' function, plus some other entry points. Because
of the United States export restriction on DES implementations, we are
distributing this code separately from the rest of the C library...."Current source site:ftp://sourceware.cygnus.com/pub/glibc/Traditional source site:ftp://ftp.ifi.uio.no/pub/gnu/Latest known: glibc-crypt-2.0.111.tar.gz
Presumably, the CYGNUS site's version is required for glibc 2.1.

glibc-localedata:
Contains the data needed to build the locale data files to use the
internationalization features of the glibc.Source site:ftp://prep.ai.mit.edu/pub/gnu/glibc/Latest known: glibc-localedata-2.0.6.tar.gz

loadlin:Source site:ftp://elserv.ffm.fgan.de/pub/linux/loadlin-1.6/update-1.6a/Latest known: loadlin.exe.gz (version 1.6a)Minimum version: loadlin.exe.gz (version 1.6a)
Because of recent kernels' new method of determining memory size,
versions before 1.6a must be upgraded. (Above gzipped file appears
to be the 1.6a replacement binary, only, not the complete loadlin
package.) You do not need loadlin if you use LILO.

make:Source site:ftp://prep.ai.mit.edu/pub/gnu/Mirror site:ftp://ftp.tux.org/pub/sites/prep.ai.mit.edu/Latest known: make-3.77.tar.gzMinimum version: make-3.75.tar.gz
In the glibc FAQ, the FSF says: "We recommend GNU make version
3.75. Versions 3.76 and 3.76.1 have bugs that appear when building
big projects like GNU libc. Versions before 3.74 have bugs and/or are
missing features."