What's new in Linux 2.6.37
by Thorsten Leemhuis
After about eleven weeks of development, Linus Torvalds has released the Linux kernel 2.6.37. The new version of the main development line has many improvements. Advances in the Ext4 file system mean it should be able to compete with XFS on larger systems and new discard functions can inform slow SSDs of vacant areas, without negatively affecting performance.
This kernel also sees the first parts of the support for operation as a Xen host (Dom0). LZO compression will speed the transition into and out of hibernation and after years of work, almost all areas of the kernel are now without the Big Kernel Lock (BKL). Hundreds of new and revised drivers improve hardware support. New examples are the support for fast USB 3.0 disk with USB Attached SCSI Protocol (UASP) and various drivers for wireless hardware from Atheros, Broadcom and Realtek. The new kernel also has an audio loopback driver, extensions to deal with the Apple Magic Trackpad and support for 4 KByte logical sectors on hard drives.
The following Kernel Log offers an overview of these and many further new features of Linux 2.6.37. These changes will eventually impact all Linux users as Linux distributions adopt the 2.6.37 kernel, or subsequent point releases, and make these improvements available to end users. At the end of this article, the Kernel Log will also take a peek at the advances that might make it into 2.6.38.
This article provides an overview of the most important changes of Linux version 2.6.37. More detailed information can be found in the Kernel Logs of the "Coming in 2.6.37" mini series, released over the past few weeks on The H Open, which form the basis of this article.
- Part 1: Graphics
- Part 2: File systems
- Part 3: Network and storage hardware
- Part 4: Architecture & Infrastructure
- Part 5: Drivers
In these articles, you will find the more detailed source articles that cover the important changes in each particular area. There is also the "Minor gems" section which lists the many other changes not mentioned in the main article but which, for many users, are still of great significance.
For example, in the article on Drivers, "Minor gems" lists the numerous patches to support the video hardware on different PCs, notebooks and motherboards, and lists the changes to the V4L / DVB subsystem, which includes the addition of product names for TV hardware that the Linux kernel now recognises.
Bye bye BKL
By mentioning it explicitly when releasing the first pre-release version of 2.6.37, Linus Torvalds has focused attention on one particular change – the core of the Linux kernel now no longer needs the big kernel lock (BKL). The BKL is a locking method dating back to the early days of multi-processor support in Linux and is aimed at preventing conflicts where shared data structures are accessed simultaneously.
Back then, it was considered relatively easy to implement, but operated as a system-wide lock. This adversely affects performance on systems with larger numbers of processor cores and can result in undesirably long system call latencies in real time environments. However, over the past several years, the Kernel developers have already implemented finer locking in a lot of core areas of the kernel, so the last steps of the BKL removal are not perhaps as important as they might initially seem; more details on this can be found in the Blog posts "Removing the big kernel lock. A big deal?" and "Big kernel lock semantics" from Andi Kleen.