LinuxDevices.com Archive Index (1999-2012) | 2013-current at LinuxGizmos.com | About  

Linux 2.6.35 arrives bearing network, multicore gifts

Aug 2, 2010 — by Eric Brown — from the LinuxDevices Archive — 2 views

Linus Torvalds released the Linux 2.6.35 mainline kernel, adding improvements to multicore support, network scalability, memory management, power management, and Btrfs file-system I/O, among other enhancements. Meanwhile, we take a look ahead at Linux 2.6.36, and note Linux Journal's brief history of the first Linux kernel and the 452 distributions that were to follow.

As noted over a week ago when the RC6 release of Linux 2.6.35 arrived, despite over 8,000 changes this is not the most dramatic new kernel ever to break cover. Still, drama is in the eye of the beholder, and if one's projects involve, say, AMD graphics chips, multicore processors, or the Btrfs file-system, Linux 2.6.35 may be big news indeed.

The following is a brief scan of major new features based on Jonathan Corbet's "Linux Weather Forecast" of RC6, as well as the usual in-depth kernel rundown offered by Thorsten Leemhuis in The H, and the Kernel Newbies page (see links at end of the story).

Key features offered in Linux 2.6.35 include:

  • Network scalability improvements with new receive packet- and receive-flow steering mechanisms added to the networking subsystem, based on Google's Receive Packet Steering (RPS) and Receive Flow Steering (RFS)
  • Network code and turbo-mode optimizations for multicore processors
  • Working memory defragmention enhancements with memory compaction patch set, improving support for large memory allocations
  • Cpuidle menu governor enhanced with idle pattern detection for improved sleep-state selection based on recent system history
  • Addition of basic direct I/O support to Btrfs file-system, plus fix for "storage space reaching capacity" glitch
  • Support for the power-saving mechanisms of AMD Radeon graphics chips
  • Improvements to H.264, VC1, and 'perf' video acceleration in Intel G45+ processors
  • Support for the future Intel Cougarpoint graphics chip
  • New experimental journal mode for XFS
  • KDB debugger UI based on KGDB
  • Tunneling Protocol version 3 (RFC 3931) support
  • Support for multiple multicast route tables
  • CAIF protocol (ST-Ericsson) support
  • ACPI Platform Error Interface support
  • Tracing interfaces for the KVM hypervisor

Torvalds (pictured at right) announced the release on LWN.net yesterday, and his comments, as usual, concerned the process of kernel development more than the changes themselves. For example, he notes that the "Linux-next" tree that is used as a basis for development of the next kernel was suffering from stability issues, as mentioned by leading kernel maintainer Andrew Morton.

"Please don't treat linux-next as a dumping ground, pleads Torvalds. "If you're nervous about the stability of your work, you should just admit that it's not ready to be merged."

VFS scaling may surface in Linux 2.6.36

Torvalds also commented upon a promising new development for Linux 2.6.36 (see farther below). The Linux creator and overseer is hopeful that "Nick Piggin's cool VFS scalability series," will make it into the next release.

On Friday, Piggins announced the posting of his VFS (virtual file-system) scalability work to a git tree. As noted in an analysis of Piggins work last November by Jon Corbet in LWN.net, VFS scalability is not only of interest to developers of virtual systems running on massive server systems.

"The past work of scalability-oriented developers is what makes our current desktop and laptop systems work as well as they do," wrote Corbet. "Their current work will enable next year's consumer-level systems."

As described by Piggins in his git tree announcement, the VFS scalability code enables "parallel name lookups to walk down common elements without any cacheline bouncing between them." Continues Piggin, "It can walk across many interesting cases such as mount points, back up '..', and negative dentries of most filesystems. It does so without requiring any atomic operations or any stores at all to shared data. This also makes it very fast in serial performance (path walking is nearly twice as fast on my Opteron)."

Torvalds, who has been using the VFS scalability code on his own computer, writes that he is "personally really excited about it." He goes on to note that, "It's seldom we see major performance improvements in core code that are quite that noticeable, and Nick's whole RCU pathname lookup in particular just tickles me pink."

BKL locking gets locked out, and AppArmor finally arrives

In his write-up of likely new additions to Linux 2.6.36 in The H, Thorsten Leemhuis does not mention the VFS enhancement, but instead highlights a major subtraction expected in the next release, noting "various patches which further reduce the use of the BKL (Big Kernel Lock).

As Corbet noted in a LWN.net post back in May 2008 when efforts began in earnest to eliminate this unwanted, 15-year-old vestigial appendage, safely disabling the well-entrenched BKL was a major chore. "The BKL can be found throughout the kernel, and doesn't appear ready to go without a fight," he wrote.

The lock, which ensures that only one processor is running kernel code at any given time, interferes with newer, increasingly fine-grained locking, as well as lock-free algorithms that have been implemented throughout the kernel, wrote Corbet.

Other likely enhancements to Linux 2.6.36 include the addition of some "zram" memory code, as well as RAID-5 mapping improvements, according to Leemhuis. In addition, the AppArmor security framework will likely make it into Linux 2.6.36, he adds.

Novell originally pushed for inclusion of AppArmor in the Linux kernel over four years ago, but the merge has been blocked for various reasons. Canonical then took up the AppArmor charge with a new version that has apparently won over the skeptics. AppArmor restricts applications to specific actions to prevent attacks such as the exploitation of a security hole in a server program from going on to gain access to the entire system.

The 2.6.35 release follows a May release of Linux 2.6.34. That released featured new "Ceph: and "LogFS" file-systems and asynchronous suspend and resume, among other features.

Paleo Linux recounted

Next year, Linux will celebrate its 20th anniversary, followed in another two years by a similar milestone for the first Linux distro (Slackware) that is still being updated. The early history of Linux is recounted by Jes Fraser in a Linux Journal story entitled "Distributions — a brief history."

Linux is generally traced to the early 1980s, when Richard Stallman's BSD-based GNU operating system appeared, but its roots of course date back to the 70s, when Unix itself made its debut, writes Fraser.

The story describes another free kernel called "Hurd," and then recounts the arrival in 1991 of a Usenet posting by a Linus Torvalds that was to go on to change the world.

One of the first Linux distributions to follow the original Linux kernel release was Soft Landing Systems' SLS Linux, but it quickly faded due to bugs and instability, as well as a shift to the ELF binary format, writes Fraser.

On July 16, 1993, Slackware Linux arrived, making this the oldest Linux distro that is still being updated. The following month, Ian Murdock announced the first Debian Linux, and released it later that year. Slackware and Debian were followed by Red Hat, SUSE Linux, and a host of imitators.

Eventually, respectability followed, as did about 450 other Linux distributions, writes Fraser. Today, Linux is a big shot in the server world, a fast growing presence in embedded markets, but still only represents less than two percent of desktop PCs, according to some reports.

Availability

The announcement of Linux 2.6.35 by Linus Torvalds may be found here, and the Kernel Newbies rundown on the new release may be found here.

Thorsten Leemhuis' report in The H on Linux 2.6.35 should be here.

The Linux Journal story on the early days of Linux may be found here.


This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.



Comments are closed.