Kernel 2.2.0 wishlist

Thomas Koenig (
1 Oct 1996 15:29:20 +0200

Wishlist for Linux 2.2.0

Now that Linux 2.1 is out, it's time for another round of Request For

Here's what people on linux-kernel have been suggesting, in no
particular order. Some items are rather hotly debated.

I'm also listing who's working on what, if I know about it. If you
want to drop me a line with additional info, I'll put it in. This
might be your E-Mail address, or the URL for a patch that people may
try out. It might be a good idea to talk to the people who've already
done something before you start a project :-)

First, user-visible things:
* Modularization of ide.c and ide-cd.c
* Minimalistic video code to make Linux more "aware" of the current
* Making the boot process less verbose as an option
* Colorizing the boot-up display (as an option, some people can't
stand colors :-)
* Making 80 chars the maximum line length during boot (optional)
* Shared Memory - mapping of /dev/zero or a working MAP_ANONYMOUS
* Make the system embeddable (see the [1]Linux 8086 project
* [2]Journaling file system
* Access Control Lists and other security enhancements (POSIX.6
* Full Threads support using clone()
* Queued signals and other POSIX.1b (aka POSIX.4) stuff (see [3]A
Vision for Linux 2.2 -- POSIX.1b Compatibility and Real-Time
Support by Markus Kuhn for a good summary)
* signal stacks
* Undelete command and/or versioned file system
* Turn on the ext2fs secure deletion feature
* 32-bit or 64-bit minor/major device numbers
* STREAMS support (possibly in userspace)
* IPv6 (in progress)
* General per-user resources (CPU, IP, memory quotas)
* Limiting TCP bandwidth (Alan Cox
<>) see [4]the shaper project
* per user accounting and firewalling
* System call auditing (for real paranoids)
* Making atime a configurable option (per file system?)
* Moving of all the relevent README files into the Documention
* Localtalk support for the Appletalk stack
* Allowing the video mode code at bootup to be optional
* Being able to run a parallel zip drive and a printer at the same
time (Grant Guenther,
* Ability to change the scheduler at runtime, via loading a module
* SCSI device numbers should include drive IDs, not be consecutively
* Microchannel support
* More flexible configuration through sysctl
* Integrated PCMCIA support
* hfs filesystem (Paul H. Hargrove <>,
* userfs and NTFS filesystems
* physical/logical volume manager (like AIX)
* PC speaker patch
* parallel port sound input driver
* real swapping (instead of paging) so multiple high memory usage
jobs can run concurrently
* Preemptive paging
* A union file system
* Deal with "out of VM" situations more gracefully
* revoke() system call (make sure nobody holds this device open)
* Swap files over NFS
* Opening serial lines or changing the baud rate without raising any
modem control lines (DTR, RTS)
* Setting the interrupt trigger level for 16650s from the command
* Registering/unregistering transfer functions for the loop device
* Fully debugging a running kernel on Intel
* Support for more RAID levels
* Making mandatory locking a mount option
* Add support for the KIP protocol
* NFS write clustering/coalescing/biod (Linus)
* NFS V3 (RFC 1813)
* Caching a slow block device on a fast one (loot at the [6]BCCF
project )
* Handle SAK and Ctrl-Alt-Del in raw keyboard mode (see Markus
Gutschke's <> [7]SAK patch)
* Secure RPC (for NFS, for example)
* Allow process run by normal users to lock a few pages into memory
* Get the dumpable flag of a process
* Being able to prevent other users from seeing processes (option to
* Better support for Plug'n Play cards (see [8]RedHat's web pages)
* Guaranteed stream throughput (for example, reserve 300 kB/sec for
reading a file from disk)
* Paging binaries run off CD-ROM and NFS to local swap
* Uniform pointing device support.
* Environment variables as part of symbolic links (may cause
security problems with interruptible paths)
* Generic "mount one file system on top of another" option
* Get memory size using INT 15h, see the [9]documentation about the
* Update the kernel PLL to the current xntpd specs
* support 64-bit file size, according to the [10]Large File / File
System Support suggestion
* Read-write UFS file system support (Jared Mauch,
* Serial console support
* Exclusive open mechanism for raw disks (<>,
Grant Guenther <>)
* Full support for EPP/ECP modes in the parallel port disk drivers
* Cleanup of boot parameter syntax for insmod and lilo/loadlin
* Change removable media withour mount/umount (Stephen Tweedie's
[11]supermount patch)
* Get a PPS (Pulse per second) signal from the serial port (Harald
Koenig's [12]k-dcf patch).
* Make up a standardized frame grabber interface (VFG - layer)
* File - level compression in EXT2
* Noblink patch
* PC speaker sound patch
* Being able to mount DriveSpace volumes under Linux
* Shrinkable / extensible file system and logical volume manager

Second, internal kernel stuff:
* Adaption of all CD-ROM drivers to generic interface
* Drivers being able to throw away their init. code once complete
* Global min/max functions
* Faster dep (qdep, for example)
* Being able to compile from sources mounted read-only
* Better kmalloc debugging
* Cleaner code for swap files (FAT now supports bmap())
* Cleaning up the header files so that everything not needed in
userland goes into #ifdef __KERNEL__ (Michael Chastain
* Better memory management to get large continous DMA buffers
* Remapping the kernel to a higher virtual address