Kernel Log - Discussions at the 2009 Kernel Summit, FatELF in the firing line, new graphics drivers
by Thorsten Leemhuis
This year's Kernel Summit saw Linux developers, led by Linus Torvalds, discussing the development process and gaining an insight into how Google uses the Linux kernel in-house. Ulrich Drepper and Alan Cox think universal binaries in Linux are a step in the wrong direction. Various graphics drivers have recently been updated to add new functionality.
This year's Kernel Summit was held in mid October in Tokyo. The kernel developers invited to the event discussed a broad range of Linux kernel-related issues and kernel development. Linux Weekly News has, as usual, published a detailed summary of the topics discussed at the meeting, which is now also available to non-subscribers.
As ever, one of the main topics of discussion was the development process. According to the LWN.net report, kernel developers are broadly happy with linux-stable and linux-next, but there was criticism of the fact that a significant number of patches are not finding their way into linux-next before being merged into the main development tree. The kernel hackers are also considering in future moving occasional obsolete kernel drivers to the staging area for immature drivers which don't meet kernel development quality standards. If they do not get picked up from there, they will then be removed from the kernel source completely a few months later. Other points were also discussed, but, as the report stresses, in contrast to previous developer meetings, Linus Torvalds now appears to be broadly satisfied with the overall development process.
The article "How Google uses Linux" takes a detailed look at a Kernel Summit presentation given by a Google staff member on the search engine behemoth's use of Linux. To date, Google has been using older kernels, which it rarely updates and which have been extensively patched to optimise them for Google's purposes. Much of this work does not get submitted for integration into the main development tree, but efforts are under way to work more closely with kernel developers in future.
Not for the first time, the kernel developers discussed the best procedure for preventing regressions – problems fixed in previous versions which re-emerge in later releases. Following Linus Torvalds attention-grabbing statement that the kernel is "bloated and huge", there was also discussion of performance regressions.
The Kernel Summit also saw elections for five members of the Linux Foundation's Technical Advisory Board (TAB). Jonathan Corbet from LWN.net, Greg Kroah-Hartman from Novell, Alan Cox from Intel, Thomas Gleixner from Linutronix and Theodore Y. Ts'o, seconded to the Linux Foundation from IBM, were all elected. The kernel developers also clearly had some fun at the summit, at least it certainly looks that way in Chris Schläger's photo of Linus Torvalds posing in front of a Windows 7 sales stand. A group photo of the participants at the summit can be found on LWN.net.
Ryan Gordon's recent presentation of the FatELF concept, which makes possible universal binaries under Linux, has attracted a great deal of attention. Glibc maintainer Ulrich Drepper was less than enthusiastic in a posting to a Fedora mailing list, "It is a 'solution' which adds costs in many, many places for a problem that doesn't exist. I don't see why people even spend a second thinking about this."
Gordon has since submitted a number of FatELF kernel patches to LKML for evaluation. Alan Cox has spoken out robustly against the adoption of one of these patches in one posting on LMKL. In another, the Linux grandee has taken a closer look at the supposed benefits offered by FatELF, explaining in some detail why he sees it as an irrelevance, with package managers having solved the problem back in the '90s.
There was also a question mark over whether FatELF, in its current form, may infringe certain patents – Gordon had asked for help in clarifying this issue, but has now decided to abandon his attempt to get FatELF adopted and has archived the project.
In Brief: The Kernel
- One developer recently proposed designating the IDE subsystem, taken under the wing of David Miller several months ago, as deprecated, in order to encourage people to switch to more modern drivers in the Libata subsystem. There are strong signs that this proposal is likely to be adopted, but the issue of when is still under discussion.
- The Android drivers added to the staging area of Linux 2.6.29 may be given the boot because Google developers are no longer maintaining them. A Google employee has, however, announced that in the longer term they are hoping to increase their contribution to the main Linux development branch.
- The GRUB development team has recently released version 1.97 of the GRUB2 boot loader. It is now able to load kernels for various BSD derivatives, supports x86-64 EFI and offers enhancements for GPT. Storage devices can also now be addressed using UUID.
- The latest stable kernel versions, 18.104.22.168 and 22.214.171.124, were released on 23 October.
- Kernel developer Rusty Russell will in future be doing more work on Samba, but will also continue to maintain the Virtio drivers
- Following a lengthy lull in the process of merging the Lirc drivers (used in many remote controls) into the main Linux development tree, Jarod Wilson is taking a second shot at it.
- Neil Brown, MD kernel code maintainer, has released mdadm versions 3.0.3 and 3.1.0. While the former contains minor enhancements and bug fixes, the latter includes numerous new options for setting up and modifying software RAID arrays. It now allows RAID 1 to be converted to RAID 5 and from there to RAID 6 and back again, and can be used to shrink RAID levels 4, 5 and 6. Some of this functionality requires very new, or as yet unreleased, kernel versions. Users should therefore only use version 3.1.0 if they require the new functionality or wish to test the new version. Brown has since found the odd bug, which he plans to remedy by releasing version 3.1.1. He expects the latter to be suitable for general use.
NVIDIA late last week released version 190.42 of its proprietary graphics driver for x86-32 and x86-64 Linux. New features include support for OpenGL 3.2, X-Server 1.7.0 RC1 and many new graphics cards. There were also enhancements in the Video Decode and Presentation API for Unix (VDPAU). The driver can now also be used to control fan and energy-saving behaviour ("GPU PowerMizer Mode").
A few days earlier, AMD released a new version of its proprietary Linux graphics driver, which it has designated as version 9.10. New features include 'early look support' for Ubuntu 9.10, which uses Linux kernel 2.6.31. The release notes list various bugs which should no longer occur with the latest driver.
Intel developers have recently released version 2.9.1 of Intel's open source driver for Intel graphics chip sets, which is primarily a bug fix release. The radeonhd driver development team released version 1.3.0 shortly after the last Kernel Log. Driver developer Matthias Hopf has published a blog entry listing the major changes, including support for newer Radeon models, HDMI audio and some of the power-saving functions offered by Radeon graphics hardware. Ben Skeggs has meanwhile summarised the changes and enhancements to the Nouveau driver over the last six months on his blog.
In Brief: Graphics
- Peter Hutterer has once again summarised the major changes in the recently released X11R7.5 (Xorg 7.5) on his blog. They include version 1.7.1 of X server which fixes numerous bugs from version 1.7.0, released in early October.
- With kernel-based mode setting having already delivered a largely flicker-free boot experience, systems with a cooperative BIOS and various patches submitted by Jesse Barnes should now be able to go completely flicker-free.
- In recent days, various developers have been making big changes to the X.org Wiki's table of X driver functionality for Radeon hardware. The column for the radeonhd driver has been removed and a new column added for the Evergreen GPUs used in the Radeon HD 5000 series.
- An NVIDIA programmer working on the company's proprietary Linux graphics drivers recently gave an interview with Phoronix, in which he offers some insights into the drivers, driver development and the significance of these drivers for the company.
Further background and information about developments in the Linux kernel and its environment can also be found in previous issues of the Kernel Log at The H Open Source:
- Kernel Log - Improved USB 3. 0 support, X.org drivers to move back into X Server
- Kernel Log - Devtmpfs in 2.6.32, more discussion about DRBD, new stable kernels
- Kernel Log - Main development phase of Linux 2.6.32 completed
- The Next Round – The new features of Linux 2.6.31
- Kernel Log – Extra round for 2.6.31, X.org 7.5 on the horizon, staging area to be cleaned up
- Kernel Log - Coming in 2.6.31 - Part 5: CUSE, USB 3.0, FireWire networking and the rest