UpFront

diff -u: What's New in Kernel Development

Zack Brown

Issue #131, March 2005

The revision control wars have not cooled down, but they have gone fairly quiet. For the most part, this is because BitKeeper works much better than any free alternative, and feature requests from kernel folks are given top priority for development. In November 2004, only twice did the possibility of an alternative come up on the linux-kernel mailing list. The first time, Andrea Arcangeli once again presented tla, also known as arch, and although it did seem that various other developers also had been keeping an eye on that tool, the consensus was that tla was not yet scalable enough for the kernel.

Later on, in a completely different discussion, the darcs revision control tool came up. David Roundy, its maintainer, announced a darcs mirror of the kernel repository. This is a holy grail among revision control systems, because even a mirror of the kernel history is a very large and difficult hurdle. For now, BitKeeper is still in the far lead.

It's always great to see documentation. Alexander Viro recently wrote a HOWTO for cross-compilation. According to him, it's neither difficult nor time consuming to compile a kernel on one architecture, for use on another, and he typically tests all his changes for compile errors on builds for six different architectures: i386, x86_64, sparc32, sparc64, alpha and ppc. Geert Uytterhoeven had some patches to help extend this to the m68k architecture as well, but this may be put off for a while, because currently the m68k architecture is not so well supported by the official kernel sources. Several hard-core problems confront the developers, for which no solutions have yet been found.

The 2.6 kernel development model continues to undergo transformations and clarifications under the Linus Torvalds/Andrew Morton maintainership duo. The new Signed-off-by tag, for instance, develops new wrinkles over time. Linus recently clarified that if patches are passed back and forth between developers, it is better for developers to move their Signed-off-by tag to the top, rather than have multiple copies reflecting each contribution they made. He also suggests including a CC list within each changelog entry, although he says this is unofficial, for informational purposes only, and has no technical protocol to follow. We'll see how long that lasts.

Meanwhile, a whole bunch of developers is unhappy that, as Adrian Bunk has said, “2.6 is currently more a development kernel than a stable kernel.” These folks feel that a 2.7 development kernel should be forked off as soon as possible, and 2.6 should be allowed to stabilize. Although development is definitely more fun than maintenance, Alan Cox has made multiple offers to take over 2.6 maintainership, and he is known for giving a lot of weight to stability in his patches. His 2.6-ac patch series is currently the preferred source tree of a significant number of kernel developers. So far, neither Linus nor Andrew has shown any sign of handing 2.6 off to Alan or slowing down their pace of development. If anything, 2.6 development speed is only increasing at this time.

Meanwhile, Linus continues to refine his version numbering habits in response to recent criticism. His current thinking is that, for the 2.6 series, all pre-releases will be tagged rc, the latest being 2.6.10-rc3. This has the virtue of simplicity, which also motivated his decision in the 2.5 time frame to drop the -pre and -rc tags entirely and release full 2.5.x versions each time. Given the relaxation of the stable/development alternation, we'll have to see whether the 2.5 standard persists into 2.7. For the moment, the only point of clarity with regard to the kernel development model is that there is no clarity. The Linux development model is being explored, revised, carved up and mutilated—however it ends up, it clearly will be different from what it was before.

The 2.4 kernel continues to struggle toward stability. Marcelo Tosatti has revised his goals many times, ranging from total lock-down, to accepting certain important new features while rejecting everything else, to having a more relaxed acceptance policy in general. Ever since 2.6 came out, he has been trying to put 2.4 into deep-freeze, but with no 2.7 anywhere on the horizon, it becomes harder to reject features from 2.4. There are always folks who need 2.4's stability, with more up-to-date features; and so more and more features are backported from 2.6, and these continue to try to find their way into the official 2.4 source tree.

Recently, the Device Mapper subsystem was thoroughly rejected, as being too invasive for inclusion in 2.4 under any circumstances, and iswraid, on the other hand (with some bumps along the way), made it in under the wire. After 2.4.28, Marcelo made another valiant attempt to batten down the hatches, although, as he put it, “New drivers are okay, as long as they don't break existing setups and if a substantial amount of users will benefit from it.” In particular, new drivers should be reviewed by someone knowledgeable in a specific area, he said.

Kingdom of Loathing: www.kingdomofloathing.com

Don Marti

Issue #131, March 2005

On-line games need bleeding-edge client-side software with 3-D graphics, an enormous back-end server farm and stiff subscription charges, right?

More than 100,000 people beg to differ. For the LAMP issue, here's a surprise hit on the on-line gaming scene, Kingdom of Loathing. The Kingdom is a Web-based adventure game that combines the problem solving of classic text adventures with the emergent economics and politics of Internet gaming and stick-figure graphics. It's hosted on Linux.

Don't expect your standard sword-and-sorcery or space-war plot though. Start off slaying cans of tomatoes and asparagus in the Haunted Pantry and work your way up to beating down Orcish Frat Boys, hippie chefs and other monsters. Sell your extra loot in the Flea Market or the Mall. There's even an Internet radio station where you can win in-game prizes. It's free of charge, but we highly recommend that you donate $10 to get a powerful magic item.

On the Web

Check out the Linux Journal Web site this month for follow-ups on articles from this month's issue by two of our most popular regular contributors, Dave Phillips and Mick Bauer.

  • After you finish Dave Phillips' article on how to use Ardour to create your own professional-grade digital audio files, read his follow-up article on our Web site. “Further Notes on Recoding 'Talkin bout the Weather'” () offers more details about the process of creating the song Dave wrote for the Ardour article. He shares his choice of equipment for the recording process, plus the editors, sequencers and plugins he used to complete the song. If you want to hear the for-now final result, go to Dave's Web site, linux-sound.org/ardour-music.html.

  • In this issue's Paranoid Penguin column, Mick Bauer reviews Islands in the Clickstream: Reflections on Life in a Virtual World, a book by Richard Thieme that explores some of the philosophical questions and issues that have arisen as our daily lives become more and more entwined with modern technology. Mick had the opportunity to interview Richard about some of the themes in his book; the transcript of their conversation is available here. They discuss language, video games and Richard's religious background as a backdrop for considering some of the questions about the intersection of humanity and technology.

They Said It

Selling me a different brand of washing machine will not instantly fix my stupidity—even one with fewer buttons to press.

—Peter Galbavi (source: Tyler Hardison's .signature)

I think, fundamentally, open source does tend to be more stable software. It's the right way to do things. I compare it to science vs. witchcraft. In science, the whole system builds on people looking at other people's results and building on top of them. In witchcraft, somebody had a small secret and guarded it—but never allowed others to really understand it and build on it.

Traditional software is like witchcraft. In history, witchcraft just died out. The same will happen in software. When problems get serious enough, you can't have one person or one company guarding their secrets. You have to have everybody share in knowledge.

You don't build reliable bridges by refusing to let anyone see the plans.

First look: Ubuntu www.ubuntulinux.org

Don Marti

Issue #131, March 2005

If the idea of an up-to-date GNOME desktop environment on top of an administrator-friendly Debian base sounds good to you, then burn a Ubuntu install CD and give it a try.

Ubuntu's main strong point is a thundering herd of well-informed, helpful early adopters. As I write this in December 2004, the Linux Web sites and mailing lists are buzzing with Ubuntu questions and answers.

In the current Warty Warthog release, hardware autodetection is a notch behind the current champ, SuSE Linux Professional. Ubuntu didn't get the USB Wacom tablet or set up both heads of the dual-head video card on one test system. It did fine on a more generic PC.

Ubuntu won't try to wow you with a flashy install, so be patient through its text-based, competent first impression. When the desktop comes up, you'll get no surprise, just the same Mozilla Firefox/Novell Evolution/OpenOffice.org setup that's become the desktop Linux standard. Fans of KDE applications, such as the Konqueror file manager/Web browser and the k3b CD burner, will have to do some extra tweaks, though.

The Synaptic package manager, from Debian, is easier to use than other distributions' tools for updating software. You can get anybody started using the standard GUI apps on Linux, but Ubuntu's thoughtful choices make it easier to teach new users how to install new software.

The simplicity makes this a great distribution to carry around for lack-of-Linux emergencies you may encounter at other people's homes and businesses. When the local coffeehouse had a problem with spyware on a legacy OS running on the computer for customers, I put Ubuntu on there and gave the manager a quick tutorial. After the install, the one issue requiring a Web search to resolve was setting up printing to a printer connected to a Microsoft Windows machine.

Because you probably know what Firefox, Evolution and OpenOffice.org look like by now, here's Anna Goldberg, age 5, learning TuxPaint.

Web Developer Extension: www.chrispederick.com/work/firefox/webdeveloper

Don Marti

Issue #131, March 2005

Mozilla Firefox supports easy-to-install extensions, and one of the most useful is Chris Pederick's Web Developer Extension, which brings together many Webmasters' ideas for viewing and testing a site's look and functionality. For example, you can display all classes and IDs, as shown here, to make it easy to work on your stylesheet without viewing source on the HTML. You also can clear out cookies and HTTP authentication for your site to start a new session easily or run the W3C validator on the current page. You even can sanity-check tables with a temporary border without changing the HTML or the CSS.