The 2.6.20 cycle begins
That said, the rate of patches into the kernel has been lower than in some previous cycles. It may be that the workqueue patches have created some conflicts which are slowing things down.
As of this writing, the user-visible changes merged include:
- New drivers for NetXen 1G/10G Ethernet controllers, Atmel MACB
Ethernet modules, Tsi108/9 Ethernet controllers, and Chelsio Ethernet
controllers (but without TCP offload support).
- Numerous serial and parallel ATA driver improvements.
- SCSI busses can optionally be scanned asynchronously. On large
systems with many SCSI peripherals, this can speed the bootstrap
process considerably.
- The set of TCP congestion control algorithms which can be selected by
unprivileged process has been restricted to those which are known to
be robust and fair. The system administrator can still select any
algorithm supported by Linux.
- Various improvements have been made to the DCCP code, including
SELinux support.
- Some obsolete, unsupported, and presumably unused capabilities have
been removed, including the frame diverter and the floppy tape (ftape)
driver.
- MD5 protection for TCP sessions (RFC 2385) has been added; this
capability is normally only used with the BGP routing protocol.
- The UDP-Lite protocol (RFC 3828) is now supported; see the UDP-Lite page for more information on this protocol, which is oriented toward the needs of streaming multimedia applications.
Changes visible to kernel developers include:
- The workqueue API
changes have been merged, resulting in changes throughout the
tree. David Howells has posted a detailed
set of instructions on how to fix code broken by these changes.
- Much of the sysfs-related code has been changed to use struct
device in place of struct class_device. The latter
structure will eventually go away as the class and device mechanisms
are merged.
- There is a new function:
int device_move(struct device *dev, struct device *new_parent);This function will reparent the given device to new_parent, making the requisite sysfs changes and generating a special KOBJ_MOVE event for user space.
- The networking subsystem has been heavily annotated for automated
checking using sparse.
- A number of kernel header files which included other headers no longer do so. For example, <linux/fs.h> no longer includes <linux/sched.h>. These changes should speed kernel build times by getting rid of large number of unneeded includes, but might break some out-of-tree modules which do not explicitly include all the headers they need.
The merge window should stay open for another week or so, so there's plenty
of time for more stuff to be added. Those who can't wait might want to
take a look at Andrew Morton's -mm merge plan posting for some
previews of what's coming.