In association with heise online

13 March 2009, 13:45

Kernel Log: What's new in 2.6.29 - Part 6: Storage, IDE/PATA, SCSI

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

With Linux Torvalds saying 2.6.29 could be available within a week or two, the Kernel Log continues its reporting about the new features scheduled for 2.6.29 with what's new in terms of storage drivers.

Spoilt for choice with IDE/PATA

This development cycle once again included many changes to the kernel's IDE subsystem, which mainly controls parallel ATA adapters (generally referred to as "IDE adapters", 1, 2, 3). Bartlomiej Zolnierkiewicz, who maintains this kernel area, ported a Libata driver for the CS5536 to the IDE subsystem and reintroduced the IT8172 driver for ITE's chip of the same name, which was removed in 2.6.18. Major changes were also made to several basic kernel features; see the commit links at the end of the article for more details.

These changes are unlikely to have any major effects on most users, as most current Linux distributions have predominantly used the Libata subsystem's drivers for parallel and serial ATA (SATA) adapters for quite some time. The Libata-based PATA drivers introduced with 2.6.19 are, therefore, by now likely to have undergone considerably better testing than their essentially older IDE counterparts, as the IDE subsystem has been subject to constant transformation over the past few months. How long the kernel developers intend to continue maintaining these two driver varieties is uncertain. Originally, the old IDE subsystem was expected to be removed once the Libata PATA drivers have been established; but now this doesn't seem likely any time soon.

Libata, SCSI and subsystems

The Libata developers haven't been idle themselves (1, 2). Alan Cox extended the Libata subsystem to include 32-bit PIO support; the sata-sil driver can now handle large block transfers. A new addition is the support for the VT6415 (PATA), VT8261 (SATA), and VX855 (PATA) VIA chips as well as that of a related chip with the PCI ID 0x0571.

As announced, the kernel hackers have removed the ide-scsi driver in the SCSI subsystem, because series 2.6 kernels and modern burn programs have long been able to access IDE CD/DVD burners without SCSI emulation. A new feature in the SCSI subsystem is Libfc, which was predominantly developed by Intel as part of the Open FCoE project – Libfc is a modular fibre channel library required for the support of Fibre Channel over Ethernet, another newly integrated technology. The new kernel will for the first time also include the cxgb3i iSCSI driver for Chelsio adapters with T3 chips.

The Sysfs pseudo file system can now be used to tell the underlying block layer for IDE, Libata and SCSI subsystems whether a device is a "rotating medium" if the kernel itself is unable to establish this. This allows other kernel subsystems and userspace programs to activate optimised access patterns for hard disks or SSDs and achieve maximum speeds for data read and write access. The Device Mapper (DM) now includes barrier support, allowing it to respond to requests by the file system to ensure that the data was actually written to the storage media in the DM pool, before moving on to the next task – this also benefits the integrity of journaling file systems (see also the related LWN article).

Even more changes

In addition to the changes we've already discussed, 2.6.29 also supports many other important new storage features for the Linux kernel:

Storage

DM, DMA, MD, UBI sowie Block-Layer inklusive IO-Scheduler

IDE

Libata

MMC

MDT

SCSI

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:

Older Kernel logs can be found in the archives or by using the search function at The H Open Source. (thl/c't)

(djwm)

 


  • July's Community Calendar





The H Open

The H Security

The H Developer

The H Internet Toolkit