In association with heise online

22 October 2008, 09:29

Kernel Log: What's coming in 2.6.28 - Part 3: Dodgy drivers

  • Twitter
  • Facebook
  • submit to slashdot
  • StumbleUpon
  • submit to reddit

At the Kernel Summit a few weeks ago, kernel hackers accepted the "linux-staging" development tree into the main development tree (1, 2) (Kernel-Summit). Greg Kroah-Hartman started linux-staging a few months ago as a place to bring together open source drivers that are maintained independently of the official Linux kernel but do not satisfy the kernel developers' quality requirements. The aim of linux-staging is to offer developers a central platform on which to prepare the drivers for acceptance into the official linux kernel.

Now the kernel developers want to accelerate the improvement of these drivers, which have some serious problems in their code or in their design, within the main development tree. The idea is that the kernel hackers will have the code for these drivers easily available to them and will be able to contribute improvements over their normal channels. In order to separate mature from immature drivers, the code brought in from linux-staging has landed up in a new driver/staging/ folder.

There is a problem, though: how to make users and developers aware that there are staging drivers present. To handle this, when a staging driver is loaded, moreover, the kernel is marked as "TAINT_CRAP", so that when bug reports come in from users, it is clearly visible that a "dodgy" driver was loaded and may have been, at least partly, responsible for any problems (1, 2).

Of the approximately ten staging drivers now accepted into the main development tree, some are well-known ones that linux distributions have been delivering for years such as the prism2_usb driver developed by the WLAN NG Project and the at76_usb driver for wireless chips by Atmel. We'll have to see whether this acceptance into the staging area of the official kernel will now stimulate more kernel hackers than before to feel a call to improve the drivers. Where the old, complex wireless driver is concerned, writing a new driver starting from scratch might possibly be the better approach.

Further commits relating to the acceptance of linux-staging:

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 heise open:

Older Kernel logs can be found in the archives or by using the search function at heise open. (thl/c't)


Print Version | Send by email | Permalink:

  • July's Community Calendar

The H Open

The H Security

The H Developer

The H Internet Toolkit