[LWN Logo]

 Main page
 Linux in the news
 Back page
All in one big page

See also: last week's Kernel page.

Kernel development

The current development kernel release is 2.4.0-test1, and will remain so for at least a couple more weeks. Meanwhile, Real Developers are running 2.4.0-test1-ac10, a large patch with over 200 listed updates. The changes are almost entirely bug fixes, but there is a new Microtek USB scanner driver in there as well. Recent "ac" releases have been more "development" than some; a lot of the problems have been ironed out, but the aic7xxx SCSI driver is still not working.

The current stable kernel release is 2.2.16. The 2.2.16 release came out just before LWN went to "press," and no release notes are yet available. What we do have, however, is a list of 2.2.16 security fixes that most people running 2.2 kernels should probably read (and then consider upgrading). Meanwhile, for a more complete list, the notes from the last prepatch release (2.2.16pre8), cover most of the patches that have been included.

Wishlist for 2.5. A common exercise somewhere around this stage of the kernel development cycle is the compilation of a wishlist for the next development stage. After all, when there is a code freeze in effect and new goodies can't be added, it's nice to at least be able to think about the things that could be done. This time around, Kenneth Arnold has been putting together a a 2.5 wishlist with input from a number of people.

This list includes some fairly high-profile things, such as merging the various journaling filesystems (see below). Some items are quite general, such as "documentation;" others are rather more specific ("Enable writes to concurrent devices in single commit_write()"). Merging of crypto code is on a lot of people's lists as well.

Of course, all this stuff will remain just a wishlist for quite some time. Linus typically doesn't start a new development series until the stable kernel has truly stabilized for a while. If 2.4.0 really comes out in August, say, then 2.5.0 isn't likely until almost the end of the year.

ReiserFS and the 2.4 kernel. ReiserFS is an alternative filesystem which has been under development by Hans Reiser and company for some time; it was covered in this space back in November. This filesystem has a number of things going for it, including better performance numbers in some situations, and the fact that it has a working journaling implementation. ReiserFS has been widely tested, and even incorporated by a few distributions (such as SuSE), but has still been considered experimental to this point.

That is, until last week, when Mr. Reiser posted a note saying that ReiserFS had stabilized and was ready for inclusion into the 2.3 development series. Unfortunately for the ReiserFS folks, Linus, who had perhaps sensed the fight that was to come, had skipped out of town for three weeks. In Linus's absence, decisions about what goes into the "ac" series are being made by Alan Cox.

Alan has declined to include ReiserFS, for reasons that we will get to shortly. But it is interesting to look at Hans Reiser's reaction to this decision; he did not, shall we say, take it well. In fact, Alan's concerns were characterized as "just a RedHat bureaucratic excuse to delay reiserfs." Those are fighting words, and, to those who have seen Alan's nonstop efforts to produce the best possible system, completely unwarranted.

This is very likely not the last time that we will see this sort of allegation raised. Quite a few kernel developers are employed by various Linux distributors; people may well see conflicts of interest even if none really exist. In the future, if Linus decides he's had enough and goes off to sell Amway products, his replacement may will find himself having to shed any ties to Linux companies before being accepted by the community as a whole.

But back to ReiserFS. What are the real reasons that ReiserFS is not going into the 2.4.0-test1 series at this time? They are:

  • Alan (and others) would like to see the development of a common journaling layer to be used by all journaling filesystems. Journaling is a complex business, with some difficult interactions with the memory management layer. A future Linux kernel with four different journaling implementations will be much larger and more difficult to maintain than one with a single, well-designed layer.

    Hans sees this issue as a way of delaying ReiserFS while the other journaling filesystems catch up. In his opinion, ReiserFS won the coding race (that the others generally didn't know was happening) and deserves to go in as it is.

    Meanwhile, it turns out that Chris Mason, who actually wrote the ReiserFS journaling code, and Stephen Tweedie, who is doing ext3, have been quietly talking for some time. Chris has no trouble with looking at a common journaling layer, and has generally shown a calmer attitude toward the whole thing. Despite the public bluster, the right people are talking to each other.

  • The other reason that Alan has not merged in ReiserFS is quite simple and nontechnical: he feels that only Linus can make that decision, and Linus is currently absent.

There is no telling what Linus will decide at this point. He has hinted in the past that ReiserFS might get in. And ReiserFS does have happy users; see, for example, this posting from Drew Streib at VA Linux Systems. It seems that ReiserFS is used for half of the SourceForge archive, and for the Mozilla CVS server as well. And it works well.

If the 2.4 kernel is going to have a journaling filesystem, it will have to be ReiserFS - none of the others are ready. Given its track record, it should be considered seriously for inclusion. The 2.5 development series is the earliest possible time to create a common journaling layer; in the meantime people could be using a journaling system that works.

Other patches and updates released this week include:

  • Jeff Garzik has released a new version of his "kcompat" driver compatibility toolkit.

  • kdb 1.2, the latest version of the interactive kernel debugger, was released by Keith Owens.

  • Bartlomiej Zolnierkiewicz announced the release of the ide-info utility, which can be used to display IDE chipset information without /proc.

  • A new DC10plus video capture card driver was released by Serguei Miridonov.

  • Eric Raymond has released version 0.2.12 of his CML system - the replacement for the kernel configuration and build code. Eric also posted a state of CML message describing the capabilities of the system at this stage in its development.

  • Undeterred by CML2, Fritz Jetzek has released a utility called "Gernel," a GNOME-based interface to the current kernel configuration scheme.

Section Editor: Jonathan Corbet

June 8, 2000

For other kernel news, see:

Other resources:


Next: Distributions

Eklektix, Inc. Linux powered! Copyright © 2000 Eklektix, Inc., all rights reserved
Linux ® is a registered trademark of Linus Torvalds