In association with heise online

13 April 2010, 08:43

Kernel Log: Coming in 2.6.34 (Part 1) - Network Support

Kernel Log Logo by Thorsten Leemhuis

Expected for release in May, Linux kernel version 2.6.34 contains several new network drivers and various advancements designed to improve network performance or increase network configuration flexibility, which will particularly impact virtualisation.

The development of 2.6.34 has been slightly less smooth than usual: First, Torvalds baffled many developers with a shorter merge window, then RC2 was released comparatively late and included more changes than usual; furthermore, both versions contained significant problems, as Torvalds had to admit when releasing RC3. RC4 has now been released after two weeks, longer than the normal weekly release cycle. Torvalds explained that this was due to "hunting a really annoying VM regression".

Despite this bumpy start, all the major changes for the next version in the main development line should have now made it into the Linux source code management system – therefore, the Kernel Log is already in a position to provide a comprehensive overview of the most important advancements of Linux 2.6.34, which is due for release in May. The Kernel Log will provide the usual multi-part series of articles which will cover the kernel's various functional areas step by step. This, the first part in the "Coming in 2.6.34" mini series discusses the changes that affect the kernel's network support; further articles in the coming weeks will deal with the improvements in terms of storage hardware, file systems, graphics support, architecture code, drivers and various other functional areas.

LAN, WLAN, Network Stack, etc.

Among the 1,300 changes in the main Git-Pull request submitted by network subsystem maintainer David Miller are various new Ethernet drivers. The ixgbevf driver (for example 1, 2/documentation), uses SR-IOV to communicate with guest systems via the virtual networking features offered by Intel's 82599 family of 10 Gigabit Ethernet controllers – for this purpose, the ixgbe driver, which supports these chips on the host system, was extended to include SR-IOV (1, 2, 3). The qlcnic driver has been added for Qlogic's QLE8240 and QLE8242 1G/10G CNA chips; other new drivers include greth for 10/100/1G Ethernet chips in the Gaisler family by Aeroflex, ksz884x for Micrel KSZ8841 and KSZ8842 Ethernet chips as well as the smsc75xx driver suitable for USB Gigabit NICs with LAN75xx chips by SMSC. After releasing RC3, the kernel developers also incorporated the cxgb4 driver (1, 2) for Chelsio T4 Gigabit Ethernet and 10 Gigabit Ethernet chips. The atl1c driver has been extended to support the AR8152 and AR8152 Ethernet chips by Atheros.

Further additions to the kernel include vhost-net, which is designed to increase performance in virtualisation solutions such as KVM or Lguest – vhost-net is a server for the Virtio framework outlined in the commit comment which operates in the kernel and is designed to reduce overheads when guest systems use virtual Virtio network hardware to exchange data with operating systems that run on different hardware. The new macvtap driver offers more flexible and faster network data exchange facilities between the guest systems on a host as well as various other options. The developers are preparing numerous other improvements for this driver and the Virtio server so that in the long term these components' performance and range of features will be further increased.

Various changes to the Wi-Fi stack were introduced to improve the utilisation of the power-saving mechanisms offered by modern Wi-Fi chips. Numerous patches modify the Wi-Fi drivers for the RT2800 generation and newer generations of Ralink chip-sets – however, these young drivers still don't run smoothly on many chips, which probably means that in the coming months the Ralink drivers from the staging area will remain the preferred option for many users.

The kernel's bridge code now supports IGMP snooping. The netfilter code now understands "conntrack zones" and offers TCP connection tracking for SIP. The network stack now includes private VLAN proxy arp support as described in RFC3069. Jan Kiszka introduced about 30 further changes which considerably update the CAPI code in the kernel's ISDN subsystem and reportedly eliminate numerous problems.

Minor gems

Many further minor, but by no means insignificant, changes can be found in the list below, which contains the commit headers referring to the respective changes. Like many of the references in the text above, the links point to the web front end of the Git branch for the kernel sources maintained by Linus Torvalds at The commit comments and the patches themselves provide extensive further information on the respective changes.



Network-Stack, Netfilter, etc.

For other articles on 2.6.34 and links to the rest of the "Coming in 2.6.34" series, see The H's Kernel Log - 2.6.34 Tracking page. Older Kernel Logs can be found in the archives or by using the search function at The H Open Source. New editions of Kernel Logs are also mentioned on and Twitter via "@kernellog2". The Kernel Log author also posts updates about various topics on and Twitter via "@kernellogauthor".


Print Version | Permalink:
  • Twitter
  • Facebook
  • submit to slashdot
  • StumbleUpon
  • submit to reddit

  • July's Community Calendar

The H Open

The H Security

The H Developer

The H Internet Toolkit