|
|
Subscribe / Log in / New account

3.13 Merge window, part 1

By Jonathan Corbet
November 13, 2013
As was predicted, the 3.13 merge window has gotten off to a relatively slow start due to Linus having more pressing things to do — mostly things involving travel to tropical islands and jumping into the water with an air tank strapped to his back. Even so, as of this writing, almost 6500 non-merge changesets have been pulled into the mainline for the 3.13 development cycle.

Some of the more noteworthy user-visible changes pulled so far include:

  • At long last, the nftables packet filtering subsystem has been merged. Nftables replaces the current firewalling code with an in-kernel virtual machine that adds flexibility and enables the (eventual) removal of a lot of duplicated code. It will exist alongside iptables for some time until it's clear that the old code can be removed without breaking existing firewall setups.

  • The "secure element" near-field communications API is now supported; among other things, it can be used to support payments over NFC.

  • The new SO_MAX_PACING_RATE socket option can be used to cap the maximum pacing rate (as described in this article on TSO sizing) used for a connection; it only works with the FQ packet scheduler.

  • The networking layer has gained support for IPv6 virtual tunnel interfaces.

  • The network traffic control subsystem has a new packet classifier based on the Berkeley Packet Filter (BPF) virtual machine. This allows classification programs to be loaded into the kernel as bytecode which can then be compiled with the kernel's BPF JIT compiler. The only documentation for this feature appears to be in the patch changelog.

  • The High-availability seamless redundancy (HSR) protocol is now supported in the network stack. HSR provides low-latency failover in Ethernet networks.

  • The use of TCP fast open is now enabled by default.

  • The ipset firewalling subsystem now supports network namespaces. There is also a new "hash:net,port,net" module that allows two subnets and a protocol or port number to be stored together in a set.

  • The "ktap" dynamic tracing facility was briefly merged through the staging tree, but subsequently reverted; see this article for the underlying story.

  • The 64-bit ARM architecture has gained support for big-endian systems, CPU hotplug, and a 42-bit virtual address space when the 64K page size is in use.

  • Support for the unmaintained ARM "shark" and Renesas H8/300 subarchitectures has been removed.

  • The PowerPC architecture now supports little-endian systems.

  • The "perf" tool has seen a lot of enhancements; see Ingo Molnar's pull request for a detailed list.

  • An extensive set of NUMA scheduling patches has been merged, hopefully fixing a number of the kernel's longstanding performance-related problems in this area.

  • The maximum number of CPUs supported by the x86 architecture has been raised to 8192. There are evidently systems out there now that exceed the old value (4096).

  • New hardware support includes:

    • Systems and processors: Renesas r7272100 and r8a7791 systems and NVIDIA Tegra T124 systems. It's worth noting that the number of new systems with explicit board support is dropping, while the number of systems supported through device trees is growing quickly.

    • Audio: Audio interfaces based on the TC Applied Technologies DICE chip.

    • Miscellaneous: Allwinner sunxi security ID fuses (read-only), Intel "many integrated core" (MIC) coprocessor devices, Microchip Technology MCP3422/3/4 analog-to-digital converters, TAOS TSL4531 ambient light sensors, TAOS TCS3472 color light-to-digital converters, Sharp GP2AP020A00F Proximity/ALS sensors, Micron SPI NAND flash controllers, Capella CM36651 proximity and RGB sensors, Freescale MAG3110 3-Axis magnetometers, Samsung S3C24XX DMA controllers, AMS AS3722 PMIC voltage regulators and pin controllers, ST Microelectronics STW481X VMMC regulators, ADI BF54x and BF60x pin controllers, Abilis Systems TB10x pin controllers, Freescale IMX27 and IMX50 pin controllers, and Broadcom Kona GPIO controllers.

    • Networking: Qualcomm Atheros WCN3660/3680 wireless interfaces, Sony Port-100 Series USB NFC interfaces, and MOXA ART MDIO interfaces.

    • Physical layer (PHY): Samsung S5P/EXYNOS SoC series MIPI CSI-2/DSI PHYs, Samsung EXYNOS SoC series Display Port PHYs, and Renesas R-Car Gen2 USB PHYs.

    • Real-time clocks: AMS AS3722 RTCs and Samsung S5M RTCs.

Changes visible to kernel developers include:

  • There is a new "generic PHY framework" to assist with the writing of drivers for physical connection devices; network, SATA, and USB drivers should be able to make use of this framework. See Documentation/phy.txt for more information.

  • There is a new kobj_completion object which pairs a kobject with a completion, making lifecycle-matching easier. See <linux/kobj_completion.h> for the interface.

  • Directory removal in sysfs is now recursive: removing a directory will cause the removal of all subdirectories as well.

  • The new utility function rcu_is_watching() returns true if it is safe for the current processor to enter an RCU read-side critical section.

  • There is a new earlyprintk=efi command-line option that causes early printk() output to go to the EFI framebuffer. It is meant to help with the debugging of early boot problems.

  • The GPIO descriptor API has been merged, foreshadowing the eventual removal of the number-based API.

In theory, the 3.13 merge window could stay open for a week longer than usual, meaning that it could close as late as November 24. Given the amount of code merged and poised to be merged, though, it would not be surprising if Linus were to decide to close things earlier than that. So subsystem maintainers should not count on the merge window remaining open that long.

Index entries for this article
KernelReleases/3.13


to post comments


Copyright © 2013, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds