Kernel Progress Entering New Era of Innovation



The last 12 months in Linux kernel development may have been less than exciting, but that may be just a breather before what’s coming up next, according to kernel developer and Linux Weekly News editor Jon Corbet.

Last week at LinuxCon, Corbet delivered what has become a ubiquitous fixture in many Linux gatherings: The Kernel Report, a highly detailed and informative look at the current state of the Linux kernel, and what’s on the way. Corbet’s unique position as journalist and kernel developer lends the Kernel Report a sweeping scope over many facets of kernel development.

Corbet is in strong company. 2,800 developers worked on the last five kernel releases, 16.6 percent of them volunteers. Red Hat, Intel, Novell, and IBM filled the remaining top five contributors’ slots, respectively.

In his Thursday talk, Corbet characterized the past year as one of “consolidation and completion,” adding that it “may not have been as exciting as years past.”

Indeed, Corbet’s statistics at the start of the talk seemed to indicate a general decline in the number of changes between individual kernels. Linux 2.6.31, released on September 9, 2009, registered 10,883 changes, while the latest kernel, 2.6.35, had only 9,801 changes: a 9.9 percent drop.

Don’t, however, expect that to continue. The merge window for Linux 2.6.36 (which is still open), already has approximately 7,200 changes coming in thus far, and by the time the window closes early next week, Corbet expects there to be 10,000+ changes.

Beyond quantity, quality was the real key to the past year’s worth of improvements to the kernel.

Corbet indicated that in the area of drivers, thanks to driver additions from Nouveau, and Radeon memory management improvements, it seems that the graphics problem for Linux is almost solved–though he quickly added the caveat that this was for desktop graphics. In embedded graphics, for example, history seems to be repeating itself, as less-than-helpful vendors have been making it difficult to get hardware specs and code into the mainline kernel.

Corbet singled out the embedded sector in his talk, framing the recent Android/kernel power management debate as part of a larger “embedded problem.” Corbet explained that there are many pressures on embedded developers, such as “ridiculous deadlines, short product cycles, and, because it’s consumer electronics, a lot of secrecy.”

This results in out-of-tree code that has received no community input, with no time to fix things up, because vendors can’t or won’t wait for the code to go upstream before shipping their products.

There are some victories in this arena, Corbet added. Qualcomm joining the Linux Foundation is one example he cited.

Embedded power management is the sector that will see a fix in the upcoming Linux 2.6.36, which is due in October of this year. Race-free suspend support, which forms the underpinnings of a possible solution to the Android power management issue, will be merged into 2.6.36.

Also coming to the next kernel release, is the AppArmor security module, a project that was originally started by Novell and was later picked up by Canonical, which has been a long time in coming. Anti-malware hooks will also be merged in, in the form of fanotify.

Looking down the road, Corbet sees a lot of innovation coming.

“Perhaps we’ve gotten past the years when we were trying to catch up with the kernel,” Corbet said in regards to innovation. Today, he sees a lot of changes coming as the kernel moves to a new generation of platforms and devices.

The breather, it seems, is over.