• Immutable Page
  • Info
  • Attachments

Linux 4.9

Linux 4.9 has been released on Sun, 11 Dec 2016.

Summary: This release adds support for shared extents (cp --reflink support) and copy-on-write support on XFS; virtually mapped kernel stacks that make the kernel more reliable and secure; a more efficient BPF profiler that brings Linux on part with Dtrace; a new optional BBR TCP congestion control algorithm based on bandwidth measurements instead of packet loss; syscalls to use the protection keys hardware feature; support for the Greybus bus from Project Ara; a hardware latency tracer to detect firmware-induced latencies, and many other improvements and new drivers.

  1. Prominent features
    1. Shared data extents + copy-on-write support on XFS
    2. Virtually mapped stacks for more secure and reliable stack handling
    3. Efficient BPF-based profiler
    4. BBR TCP congestion control algorithm
    5. Protection keys syscall support
    6. Greybus support
    7. Hardware latency tracer
  2. Core (various)
  3. File systems
  4. Memory management
  5. Block layer
  6. Tracing and perf tool
  7. Virtualization
  8. Security
  9. Networking
  10. Architectures
  11. Drivers
    1. Graphics
    2. Storage
    3. Staging
    4. Networking
    5. Audio
    6. Tablets, touch screens, keyboards, mouses
    7. TV tuners, webcams, video capturers
    8. USB
    9. Serial Peripheral Interface (SPI)
    10. Watchdog
    11. Serial
    12. ACPI, EFI, cpufreq, thermal, Power Management
    13. Real Time Clock (RTC)
    14. PCI
    15. Voltage, current regulators, power capping, power supply
    16. Pin Controllers (pinctrl)
    17. Multi Media Card
    18. Industrial I/O (iio)
    19. Multi Function Devices (MFD)
    20. Pulse-Width Modulation (PWM)
    21. Inter-Integrated Circuit (I2C)
    22. Hardware monitoring (hwmon)
    23. General Purpose I/O (gpio)
    24. Clocks
    25. Hardware Random Number Generator
    26. Various
  12. List of merges
  13. Other news sites

1. Prominent features

1.1. Shared data extents + copy-on-write support on XFS

This release adds several key features to the XFS file system, based on the reverse mapping work introduced in the past release.

This release adds the ability to share data extents between different files. That is, support for cp --reflink=always, the ability to deduplicate data, and the ability to unshared data through the FALLOC_FL_UNSHARE fallocate(2) interface.

It also adds copy-on-write support for data: instead of overwriting data, it copies data to a new location.

All these features are a huge chunk of new experimental functionality with new on-disk format features and internal infrastructure.

Code: merge

1.2. Virtually mapped stacks for more secure and reliable stack handling

The Linux kernel has always mapped the memory used by kernel stacks directly in the kernel memory, an approach that makes harder to allocate stacks under memory load and proves no protection against stack overflows. This release allows to map the kernel stacks in virtual memory, which makes easier to allocate stacks under memory pressure, provides protection against stack overflows, and other benefits.

Recommended LWN articles: Virtually mapped kernel stacks, Virtually mapped stacks 2: thread_info strikes back

Code: commit, commit

1.3. Efficient BPF-based profiler

This release includes the necessary infrastructure to allow BPF programs to be atached to hardware and software perf events, which in turn allows the kernel to profile via timed sampling and summarize stack traces. For more details, see Brendan Gregg's blog post

Code: commit, commit, commit, commit, commit, commit

1.4. BBR TCP congestion control algorithm

This release adds another TCP congestion control algorithm: BBR (Bottleneck Bandwidth and RTT). The Internet has predominantly used loss-based congestion control, relying on packet loss as the signal to slow down. While this worked well for many years, loss-based congestion control is considered -by BBR authors- to be out-dated in today's networks. On today's Internet, loss-based congestion control causes the infamous bufferbloat problem, often causing seconds of needless queuing delay, since it fills the bloated buffers in many last-mile links. On today's high-speed long-haul links using commodity switches with shallow buffers, loss-based congestion control has abysmal throughput because it over-reacts to losses caused by transient traffic bursts.

BBR creates an explicit model of the network pipe by sequentially probing the bottleneck bandwidth and RTT. On the arrival of each ACK, BBR derives the current delivery rate of the last round trip, and feeds it through a windowed max-filter to estimate the bottleneck bandwidth. Conversely it uses a windowed min-filter to estimate the round trip propagation delay. The max-filtered bandwidth and min-filtered RTT estimates form BBR's model of the network pipe. BBR has significantly increased throughput and reduced latency for connections on Google's internal backbone networks and google.com and YouTube Web servers.

ACM Queue paper: BBR: Congestion-Based Congestion Control

Recommended LWN article: BBR congestion control

Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

1.5. Protection keys syscall support

Protection keys is a memory protection hardware feature merged in Linux 4.6 (you can find more details in this LWN article). But in that release, the use of this feature was limited to the kernel automatically using it in high-level APIs, such as mmap(..., PROT_EXEC) and mprotect(ptr, sz, PROT_EXEC).

This release adds new syscalls that offer a more complete API to use protection keys. For more details, see the recommended LWN article: System calls for memory protection keys or read the documentation.

Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

1.6. Greybus support

This release adds support for Greybus, a new subsystem that brings support for the Greybus bus: a bus designed for the modular, hot-pluggable hardware of the (now dead) Ara Project. Despite the dead of the main project, the code is still being used. For more details, see the recommended LWN article.

Recommended LWN article: Greybus

Code: drivers/staging/greybus

1.7. Hardware latency tracer

Coming from the real-time patchset, the hardware latency tracer is a special purpose tracer that is used to detect large system latencies induced by the behavior of certain underlying hardware or firmware interruptions, like SMIs (System Management Interrupts) on x86 systems, that the kernel is unaware of. The kernel does not even know these interruptions are happening. SMIs are instead set up by BIOS code and are serviced by BIOS code, usually for "critical" events such as management of thermal sensors and fans.

The hardware latency detector works by simply creating a thread that spins on a single CPU polling the CPU Time Stamp Counter for a specified amount of time (width) within a periodic window (window), and trying to find gaps where the polling was interrupted. This is useful for testing if a system is reliable for Real Time tasks.

Documentation: Documentation/trace/hwlat_detector.txt

Code: commit, commit, commit

2. Core (various)

  • Add generic vmalloced stack support (FEATURED) commit

  • Add protection keys syscalls (FEATURED) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

  • Per user namespace limits on the number of cgroup, mount, net, pid, user, uts namespaces. Limits can be configured at /proc/sys/user/*. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

  • fsnotify: support overlayfs commit

  • ipc: implement lockless pipelined wakeups commit

  • kbuild: allow architectures to use thin archives instead of ld -r commit, allow archs to select link dead code/data elimination commit

  • fuse: Add posix ACL support commit

  • Remove lglock implementation commit

  • Power Management: allow hibernation with PAGE_POISONING_ZERO commit

  • irq: Provide smarter irq spreading infrastructure commit

  • irq: Expose interrupt information through sysfs commit

  • Task scheduler: Improve scalability by not accounting thread group tasks pending runtime commit

  • vfs: add a FALLOC_FL_UNSHARE mode to fallocate(2) to unshare a range of blocks commit

  • vfs: support FS_XFLAG_COWEXTSIZE and get/set of CoW extent size hint commit

  • virtual terminal: Emulate \e[100-107m (bright background colors). commit and \e[90-97m (bright foreground colors). commit

  • gcc-plugins: Add latent_entropy plugin commit

  • docs: add support for LaTeX output commit

  • driver core: add test of driver remove calls during probe commita

3. File systems

  • EXT4

    • Allow parallel DIO reads commit

    • Improve ext4lazyinit scalability commit

  • BTRFS

    • Add dynamic debug support commit

  • XFS

    • Shared data extents + copy-on-write support (FEATURED) merge

  • CIFS

    • Add ioctl to query previous versions of file. Allows listing snapshots on files on SMB3 mounts commit

    • Add way to query creation time of file via cifs xattr commit

    • Add way to query file attributes via cifs xattr commit

    • Add new mount option to set owner uid and gid from special sids in acl commit

    • Add mount parameter to allow user to override max credits commit

  • NFS

    • Implement the COPY call commit

    • Add kernel parameter to control the callback server commit

    • Add ioctl to get a parent namespace commit

    • Add ioctl to get an owning user namespace for ns file descriptor commit

  • UBIFS

    • Implement O_TMPFILE commit

    • Implement RENAME_EXCHANGE commit

    • Implement RENAME_WHITEOUT commit

  • F2FS

  • HPFS

  • ORANGEFS

    • Add readahead count and size to sysfs commit

4. Memory management

  • kasan: support use-after-scope detection commit

5. Block layer

  • fallocate for block devices commit, commit, commit

  • nvme: Add sysfs entry for NVMe CMBs when appropriate commit

  • libata: Add support for SCT Write Same (dsiabled for now) commit, commit, commit

  • libnvdimm: allow creation of multiple pmem-namespaces per region commit, commit, commit

  • lightnvm: expose device geometry through sysfs commit

  • lib/raid6: Add AVX512 optimized gen_syndrome functions commit, add AVX512 optimized recovery functions commit, add AVX512 optimized xor_syndrome functions commit

  • libceph: support for advisory locking on RADOS objects commit, support for blacklisting clients commit

  • rbd: add 'client_addr' sysfs rbd device attribute commit, add 'cluster_fsid' sysfs rbd device attribute commit, add 'config_info' sysfs rbd device attribute commit, add 'snap_id' sysfs rbd device attribute commit, add force close option commit, support for exclusive-lock feature commit

6. Tracing and perf tool

  • Support event group view with hierarchy mode in perf top and perf report commit

  • Add branch stack / basic block info to perf annotate --stdio where for each branch, it adds an asm comment after the instruction with information on how often it was taken and predicted. See example with color output here. commit

  • perf record: Add support for using symbols in address filters commit

  • Add support for interacting with Coresight PMU ETMs/PTMs, that are IP blocks to perform hardware assisted tracing on a ARM CPU core commit, commit, commit, commit, commit, commit, commit

  • Support generating cross arch probes, i.e. if you specify a vmlinux file for different arch than the one in the host machine, $ perf probe --definition function_name args, will generate the probe definition string needed to append to the target machine /sys/kernel/debug/tracing/kprobes_events file, using scripting commit, commit, commit

  • Allow configuring the default sort order from "comm,dso,symbol" to some other default, for instance "sym,dso", in ~/.perfconfig. Configuration key: report.sort_order commit

  • perf list: Add a --no-desc flag to not print the event descriptions that were earlier added for JSON events commit

  • perf pmu: Support alternative sysfs cpumask commit

  • perf: Allow attaching BPF_PROG_TYPE_PERF_EVENT programs to sw and hw perf events commit

  • perf probe: Support hexadecimal unsigned integer casting by 'x'. This allows user to explicitly specify the output format of the probe arguments as hexadecimal commit

  • ftrace: kprobe, uprobe: Add x8/x16/x32/x64 for hexadecimal types commit

  • tracing: Add hardware latency tracer (FEATURED) commit, commit, commit

7. Virtualization

  • Hyper-V: Introduce a policy for controlling channel affinity commit, utils: Support TimeSync version 4.0 protocol samples. commit

  • Add generic vCPU pinning support commit

  • xen-netback: (re-)create a debugfs node for hash information commit, add fraglist support for to-guest rx commit

  • kvm: create per-vcpu dirs in debugfs commit

8. Security

  • Introduce a new audit data type LSM_AUDIT_DATA_FILE, needed for overlayfs commit

  • Smack: Treat signal delivery as an append operation commit

  • audit: add exclude filter extension to feature bitmap commit

  • Add LSM hook checks to /proc/<tid>/timerslack_ns commit

9. Networking

  • TCP

  • sched

  • Introduce new rtnl UAPI that exposes a list of vlans per VF, giving the ability for user-space application to specify it for the VF, as an option to support 802.1ad commit

  • bridge

    • Add helper to call /sbin/bridge-stp when starting/stopping STP, fallback to the kernel STP if it does not exist commit

    • Add a per-port flag to control the unknown multicast flood, similar to the unknown unicast flood flag commit

  • rxrpc

    • Improve management and caching of client connection objects commit

    • Implement slow-start commit

    • Add IPv6 support commit

    • Add config to inject packet loss commit

  • netlink diag interface

    • Allow to filter by socket mark when dumping sockets via INET_DIAG_BY_FAMILY. This is useful on systems that use mark-based routing such as Android commit, commit

    • Add the ability to destroy a UDP socket with SOCK_DESTROY, similar to what it was done for TCP in 4.5. commit

  • IPv4: ipconfig: Support using "delayed" DHCP replies commit

  • IPv6: implement RFC7559 router solicitation backoff commit

  • strparser: Stream parser for messages. It is a utility that parses messages of an application layer protocol running over a TCP connection. The stream parser works in conjunction with an upper layer in the kernel to provide kernel support for application layer messages. For instance, Kernel Connection Multiplexor (KCM) has been ported to use the Stream Parser to parse messages using a BPF program.

commit, commit, commit

  • ipvlan: Introduce l3s mode commit

  • Netfilter

    • nf_tables: add hash expression commit

    • nf_tables: add number generator expression commit

    • nf_tables: add quota expression commit

    • nf_tables: add range expression commit

    • nft_hash: Add support to pass through an offset to the hash value. With this feature, the sysadmin is able to generate a hash with a given offset value commit

    • nft_log: complete NFTA_LOG_FLAGS attr support commit

    • nft_numgen: add number generation offset commit

    • xt_hashlimit: Create revision 2 to support higher pps rates commit

    • Remove ip_conntrack* sysctl compat code commit

    • conntrack: remove packet hotpath stats commit

  • TIPC

    • Add the ability to get UDP options via netlink commit

    • Add TIPC_NL_UDP_GET_REMOTEIP netlink command to allow UDP remoteip dump commit

    • Add TIPC_NL_PEER_REMOVE netlink command. This command can remove an offline peer node from the internal data structures commit

    • Introduce UDP replicast. A concept where we emulate multicast by sending multiple unicast messages to configured peers commit, commit

  • veth: sctp: add NETIF_F_SCTP_CRC to device features commit

  • openvswitch: 802.1AD Flow handling, actions, vlan parsing, netlink attributes commit

  • B.A.T.M.A.N

  • Berkeley Packet Filter

    • Introduce BPF_PROG_TYPE_PERF_EVENT program type that can be attached to HW and SW perf events commit

    • Direct packet write and access for helpers for clsact progs commit, commit

  • 802.11 (wireless)

    • Add support for MU-MIMO air sniffer commit

    • mesh: Add support for HW RC implementation commit

    • Add support to configure a beacon data rate commit

    • Add start / stop NAN commands commit

    • Allow the user space to change current NAN configuration commit

    • Always notify userspace of new wireless netdevs commit, always notify userspace when wireless netdev is removed commit

    • Allow GET_INTERFACE dumps to be filtered commit

  • Bluetooth

    • Add framework for Extended Controller Information commit, commit

    • Add support for sending MGMT commands and events to monitor commit

    • Add support for sending MGMT open and close to monitor commit

10. Architectures

  • ARM

    • ARMv7M cache maintanence support commit, commit, commit, commit, commit, commit, commit, commit

    • device tree sources

      • Add NextThing GR8 dtsi commit

      • NSP: Add new DT file for bcm958522er commit, for bcm958525er commit, for bcm958622hr commit, bcm958623hr commit, bcm988312hr commit

      • STi: Introduce B2260 board commit

      • TS-4900: add basic device tree commit

      • Add RealView EB rev D A9 MPCore variant commit

      • Add device tree for the RealView EB Rev D commit

      • am57xx-beagle-x15: Add support for rev B1 commit

      • bcm2835: Add Raspberry Pi Zero commit

      • gr8: Add support for the GR8 evaluation board commit

      • imx7s-warp: Add initial support commit

      • imx: add Gateworks Ventana GW553x support commit

      • mvebu: armada-395: add support for the Armada 395 SoC family commit

      • orion5x: Add description for Netgear WNR854T commit

      • qcom: Add initial DTS for LG Nexus 5 Phone commit

      • rockchip: add dts for RK3288-Fennec boards commit

      • rskrza1: initial device tree commit

      • sun5i: Add dts file for the Empire Electronix M712 tablet commit

      • sun6i: Add new dts file for tablets using the inet-q972 PCB commit

      • sun8i: Add dts file for Olimex A33-OLinuXino commit, add dts file for inet-d978_rev2 tablets commit, add dts file for the NanoPi NEO SBC commit, add dts file for the Orange Pi Lite SBC commit, add dts file for the Orange Pi PC Plus SBC commit, add dts file for the Orange Pi Plus2E SBC commit

      • wheat: initial device tree commit

      • pxa: add pxa25x device-tree support commit

      • sunxi: Support the Nextthing GR8 commit

    • coresight: etm4x: adding configurable address range filtering commit

    • coresight: etm4x: adding configurable start/stop filtering commit

    • perf: arm_pmu: expose a cpumask in sysfs commit

    • perf: xgene: Add APM X-Gene SoC Performance Monitoring Unit driver commit

  • ARM CLCD: add special panel hook for Versatiles commit, support Nomadik variant commit

    • KVM: Support vgic-v3 commit

    • ARM64

      • Introduce execute-only page access permissions commit

      • alternative: Add support for patching adrp instructions commit

      • Always enable DEBUG_RODATA commit

      • hibernate: Support DEBUG_PAGEALLOC commit

      • Add debugfs node to dump UEFI runtime page tables commit

      • device tree sources

        • Add ZTE ZX296718 SoC dts and Makefile commit

        • db820c: add basic board support commit

        • h3ulcb: initial device tree commit

        • marvell: add description for the Armada 8040 dev board commit, add description for the slave CP110 in Armada 8K commit

        • rockchip: Add basic support for orion-r68 commit

        • uniphier: add LD11 SoC/Board support commit

      • KVM: vgic-v2: Add the GICV emulation infrastructure commit

  • X86

    • Enable vmapped stacks (FEATURED) commit

    • Add API to change vdso blob type with arch_prctl commit

    • Add Knights Mill to Intel family commit

    • mce: Add support for new MCA_SYND register commit

    • KVM: Expose more Intel AVX512 feature to guest commit

    • KVM: export TSC information to user-space commit

    • perf: Add support for PTWRITE and power event tracing commit

    • perf: Add Knights Mill CPUID commit, commit, commit

    • perf: Add Skylake server uncore support commit

    • perf: Add more Intel uncore IMC PCI IDs for SkyLake commit

    • perf: Enable Apollo Lake RAPL support commit

    • perf: Add perf support for AMD family-17h processors commit

    • platform

      • intel-mid: Add Intel Penwell to ID table commit

      • mellanox: Introduce support for Mellanox systems platform commit

    • iommu/amd: Detect and enable guest vAPIC support commit, detect and initialize guest vAPIC log commit

  • MIPS

    • Enable hardened usercopy commit

    • Support generating Flattened Image Trees (.itb) commit

    • Introduce generic DT-based board support commit

    • BMIPS: Add BCM3368 support commit, add BCM6362 support commit, add device tree example for BCM3368 commit, add device tree example for BCM63268 commit, add device tree example for BCM6362 commit

    • Loongson1C: Add board support commit

    • Octeon: Add DTS for D-Link DSR-500N. commit

    • pm-cps: Add MIPSr6 CPU support commit

  • ARC

    • Support gz, lzma compressed uImage commit

    • Add support for ZeBu Emulation platform for HS cores commit

    • Implement atomic64 based on LLOCKD/SCONDD instructions commit

    • Support dynamic peripheral address space in HS38 rel 3.0 cores commit

    • perf: Enable generic "cache-references" and "cache-misses" events commit

  • S390

    • Enable UBSAN commit

    • Add SIMD implementation for raid6 gen/xor commit

  • PPC

    • Add support for XZ compression commit

    • bpf: Add support for bpf constant blinding commit, implement support for tail calls commit

    • tm: Enable transactional memory (TM) lazily for userspace commit, add TM Unavailable Exception commit

    • KVM: Book3S HV: Dump irqmap in debugfs commit, enable IRQ bypass commit, implement halt polling committunable to disable KVM IRQ bypass commit, Book3S PR: Support 64kB page size on POWER8E and POWER8NVL commit

    • KVM: PPC: Implement existing and add new halt polling vcpu stats commit

  • SPARC64

    • Add ATU (new IOMMU) support commit

    • Enable PCI IOMMU version 2 API commit

  • PARISC

    • Add hardened usercopy feature commit

  • XTENSA

    • Add alternative kernel memory layouts commit

11. Drivers

11.1. Graphics

  • dma-buf: de-stage SW_SYNC. SW_SYNC allows to run tests on the sync_file framework via debugfs commit

  • bridge: Add RGB to VGA bridge support commit

  • Add DRM_MODE_PAGE_FLIP_TARGET_ABSOLUTE/RELATIVE flags. These flags allow userspace to explicitly specify the target vertical blank period when a flip should take effect commit, commit

  • amdgpu

  • imx

    • drm bridge support for LVDS bridges commit

    • Add active plane reconfiguration support commit

    • VDIC deinterlacer support

    • Frame synchronisation unit support

    • Color space conversion support

  • mediatek: AAL + GAMMA engine support commit, commit, commit

  • analogix: PSR support commit

  • rockchip:

  • vc4

    • Interlaced vblank timing commit

    • 3D rendering CPU overhead reduction commit

  • tda998x: HDMI audio ASoC support commit

  • sunxi: Allwinner A33 support commit, commit, commit

  • msm

    • Support for in-fences commit

    • Support for out-fences commit

  • sti: remove sti415/416 support commit

  • etnaviv: GC3000 support commit

  • panel

    • Add JDI LT070ME05000 WUXGA DSI Panel commit

    • simple: Add Innolux G101ICE-L01 panel commit

  • tilcdc: Add atomic modesetting support commit, commit

  • ipu-v3

    • Add FSU channel linking support commit

    • Add Video Deinterlacer unit commit

    • Add queued image conversion support commit

  • vfb: add option for video mode commit

11.2. Storage

  • SCSI

    • be2iscsi: Add IOCTL to check UER supported commit, add TPE recovery feature commit, add V1 of EPFW cleanup IOCTL commit

    • ibmvfc: add FC Class 3 Error Recovery support commit

    • smartpqi: add kdump support commit

    • dtc: remove from tree commit

    • in2000: remove from tree commit

    • pas16: remove from tree commit

    • t128: remove from tree commit

    • u14-34f: remove from tree commit

    • ultrastor: remove from tree commit

    • wd7000: remove from tree commit

    • smartpqi: initial commit of Microsemi smartpqi driver commit

  • nvmem: amlogic: Add Amlogic Meson EFUSE driver commit

  • nvmem: rockchip-efuse: add rk3399-efuse support commit

  • nvme: admin-cmd: Added smart-log command support. commit

  • nbd: convert to blk-mq commit

11.3. Staging

  • greybus: Add support for Greybus (FEATURED) drivers/staging/greybus

  • add bcm2708 vchiq driver commit

  • android: ion: Add ioctl to query available heaps commit

  • lustre: add ability to migrate inodes. commit

  • most: hdm-usb: add USB product id commit, add support for new USB gadget commit

  • Remove rtl8723au driver commit

11.4. Networking

  • rdma qedr RoCE driver merge, merge

  • qed*: Add support for additional statistics merge

  • Bluetooth

    • Add a new 04ca:3011 QCA_ROME device commit

    • Introduce Qualcomm WCNSS SMD based HCI driver commit

    • btrtl: Add RTL8822BE Bluetooth device commit

    • btusb: Add support for 0cf3:e009 commit, add entry for Marvell 8997 chipset commit

    • hci_uart: Add Marvell support commit

  • Infiniband

    • hfi1: Add a new VL sysfs attribute for sdma engines commit

    • hfi1: Add sysfs interface for affinity setup commit

    • hfi1: Add new debugfs sdma_cpu_list file commit

    • Add driver files for hns RoCE driver commit, commit

    • mlx5: Add port counter support for raw packet QP commit, add sniffer support to steering commit, add support in TOS and protocol to flow steering commit, add support of more IPv6 fields to flow steering commit

  • liquidio: CN23XX support merge

  • qmi_wwan: add support for Telit LE922A PID 0x1040 commit

  • Add Cypress GX3 VID=04b4 PID=3610. commit

  • alx: add msi-x support commit, commit, add tso support commit

  • ath10k: Add WMI_SERVICE_PERIODIC_CHAN_STAT_SUPPORT wmi service commit, added support for extended dbglog module id for 10.4 commit, add testmode support for 10.4 firmware commit, add wmi command barrier utility commit, enable peer stats by default commit, implement NAPI support commit, implement wmi echo command commit, implement wmi echo event commit

  • bcma: support BCM53573 series of wireless SoCs commit

  • be2net: Support UE recovery in BEx/Skyhawk adapters commit

  • bnx2x: Add support for segmentation of tunnels with outer checksums commit

  • bnxt_en: Added support for Secure Firmware Update commit, support for "ethtool -r" command commit

  • brcmfmac: Add USB ID for Cisco Linksys AE1200 commit, add support for bcm4339 chip with modalias sdio:c00v02D0d4339 commit

  • cxgb4: Add set VF mac address support commit, add PCI device ID for new adapter commit, Add control net_device for configuring PCIe VF commit, add common api support for configuring filters commit, add support for drop and redirect actions commit, add support for offloading u32 filters commit, add support for per queue tx scheduling commit, add support for tx max rate limiting commit, add support for tx traffic scheduling classes commit

  • fm10k: add support for Rx offloads on one Geneve tunnel commit

  • hv_netvsc: Add query for initial physical link speed commit

  • i40e: Add support for HMC resource and profile for X722 commit

  • i40evf: enable adaptive interrupt throttling commit, support queue-specific settings for interrupt moderation commit

  • igb: add support of RX network flow classification commit, support RX flow classification by VLAN priority commit, support RX flow classification by ethertype commit

  • iwlwifi: add a new series 9460 with new PCI ID commit, add new 8265 series PCI ID commit, add new 9460 series PCI IDs commit, add the new 8275 series commit, add the new 9170 series commit, add the new 9270 series commit, add the new 9560 series commit, add two new 9560 series PCI IDs commit, mvm: Add mem debugfs entry commit, mvm: Add support for RRM by scan commit, mvm: add support for MU-MIMO air sniffer commit, mvm: support GMAC protocol commit, mvm: support packet injection commit ixgbe: Add support for new X557 device commit, allow setting multiple queues when SR-IOV is enabled commit, support 4 queue RSS on VFs with 1 or 2 queue RSS on PF commit, add device to MDIO speed setting commit, add support for geneve Rx offload commit

  • mlxsw: spectrum: Implement offload stats ndo and expose HW stats by default commit

  • mwifiex: add PCIe function level reset support commit, add cfg80211 testmode support commit, add custom regulatory domain support commit, add manufacturing mode support commit, add region code information in debugfs commit, support random MAC address for scanning commit

  • dsa: add new driver for qca8xxx family commit

  • mlx4: Add VF vlan protocol 802.1ad support commit

  • mlx5: XDP support merge, SRIOV offloads vlan push/pop merge, ConnectX-4/Connect-IB merge, merge, implement RoCE LAG feature commit, Vport LAG creation support commit

  • bgmac: support Ethernet core on BCM53573 SoCs commit

  • dsa: add MDB support commit, b53: Add JOIN_ALL_VLAN support commit, b53: Prepare to support 7445 switch commit, mv88e6xxx: add MDB support commit

  • emac: emac gigabit ethernet controller driver commit

  • ena: Add a driver for Amazon Elastic Network Adapters (ENA) commit

  • dwmac: add Ethernet glue logic for stm32 chip commit

  • mediatek: add HW LRO functions of PDMA RX rings commit, add ethtool functions to configure RX flows of HW LRO commit

  • stmmac: add support of Synopsys 3.50a MAC IP commit

  • ti: cpsw: add ethtool channels support commit, add multi queue support commit

  • phy

    • Add Edge-rate driver for Microsemi PHYs. commit

    • Add MAC-IF driver for Microsemi PHYs. commit

    • Add Wake-on-LAN driver for Microsemi PHYs. commit

    • Add gmiitorgmii converter support commit

    • dp83848: add dp83822 PHY support commit

    • Add USB Type-C PHY driver for rk3399 commit

    • Add a driver for the Rockchip SoC internal PCIe PHY commit

    • bcm-ns-usb3: new driver for USB 3.0 PHY on Northstar commit

    • rockchip-inno-usb2: add a new driver for Rockchip usb2phy commit

    • Microsemi VSC 8531/41 PHY Driver commit

  • thunderx: Add 81xx support to BGX driver commit, add QSGMII interface type support commit, add RGMII interface type support commit, add VNIC's PCI devid on future chips commit, add support for 16 LMACs of 83xx commit, add support for 81xx and 83xx chips commit, support for byte queue limits commit

  • rtl8xxxu: Add TP-Link TL-WN823N v2 to list of supported devices commit

  • sh_eth: add R8A7743/5 support commit

  • smsc95xx: Add mdix control via ethtool commit

11.5. Audio

  • hda: Add support for link audio time reporting commit

  • line6: Add high-speed USB support commit, add support for POD X3 commit

  • snd-aoa: enable sound on PowerBook G4 12" commit

  • ASoC

    • Intel: Skylake: Add module processing domain support commit

    • Intel: boards: Add bdw-rt5677 machine driver commit

    • add rt5663 codec driver commit

    • nau8810: Add driver for Nuvoton codec chip NAU88C10 commit

    • rockchip: Add machine driver for RK3399 GRU Boards commit

    • rt5660: add rt5660 codec driver commit

    • tegra: add tegra sgtl5000 machine driver commit

11.6. Tablets, touch screens, keyboards, mouses

  • ALPS: add touchstick support for SS5 hardware commit, allow touchsticks to report pressure commit

  • Add ADC resistor ladder driver commit

  • Add generic input driver to read encoded GPIO lines commit

  • Add support for Elan eKTF2127 touchscreen controller commit

  • Remove duplicate ft6236 driver commit

  • serio: add hangup support commit

  • tps65218-pwrbutton - add support for tps65217 variant commit

  • HID

    • Add a new Saitek mouse device ID (RAT 9) commit

    • hid-logitech: Add combined pedal support Logitech wheels commit, improve Wingman Formula Force GP support commit, introduce control for combined pedals feature commit

    • Add mic mute key on HP slim keyboard commit

    • intel-ish-hid: ISH HID client driver commit, ipc layer commit, ISH Transport layer commit

    • microsoft: Add Surface 4 type cover pro 4 (JP) commit

    • Support for keyboard - Corsair STRAFE commit

    • uclogic: Add support for UC-Logic TWHA60 v3 commit, add support for several more tablets commit, support UGTizer GP0610 partially commit

    • wacom: add touch_arbitration parameter to wacom module commit, handle Cintiq 24HD leds buttons commit, handle the switch of the LEDs directly in the kernel commit

11.7. TV tuners, webcams, video capturers

  • v4l2-core: Add support for touch devices commit

  • Add GS1662 driver, a video serializer commit

  • atmel_mxt_ts: add diagnostic data support for mXT1386 commit, add support for T37 diagnostic data commit, add support for reference data commit, output diagnostic debug via V4L2 device commit

  • synaptics-rmi4 - add support for F54 diagnostics commit

  • ad5820: Add driver for auto-focus coil commit

  • Add stih-cec driver commit

  • atmel-isc: add the Image Sensor Controller code commit

  • cobalt: support reduced fps commit

  • cx23885: Add support for Hauppauge WinTV quadHD ATSC version commit

  • cxd2820r: dvbv5 statistics for DVB-C commit, dvbv5 statistics for DVB-T commit, dvbv5 statistics for DVB-T2 commit

  • tw686x: Support frame sizes and frame intervals enumeration commit

  • Add tw5864 driver commit

  • s5p-tv: remove obsolete driver commit

  • st-hva: add H.264 video encoding support commit, multi-format video encoder V4L2 driver commit

  • tw686x-kh: remove obsolete driver commit

  • v4l: vsp1: Add R8A7792 VSP1V support commit

  • rcar-vin: remove obsolete driver commit

  • sh_mobile_csi2: remove unused driver commit

11.8. USB

  • core: Introduce a USB port LED trigger commit

  • dwc2: add support for Meson8b and GXBB SoCs commit

  • gadget: f_ncm: add SuperSpeed descriptors for CDC NCM commit

  • misc: Add driver for usb4604 commit

  • musb: Add PM runtime support for MUSB DSPS glue layer commit

  • bcma: support old USB 2.0 controller on Northstar devices commit

  • serial: cp210x: Add ID for a Juniper console commit, add ID for the Zone DPMX commit; ftdi_sio: add support for TI CC3200 LaunchPad commit

11.9. Serial Peripheral Interface (SPI)

  • add driver for J-Core SPI controller commit

  • bcm-qspi: Add BSPI spi-nor flash controller driver commit, add Broadcom MSPI driver commit

  • brcmstb-qspi: Broadcom settop platform driver commit

  • iproc-qspi: Add Broadcom iProc SoCs support commit

  • octeon: Add ThunderX driver commit

11.10. Watchdog

  • Add watchdog pretimeout governor framework commit, add noop pretimeout governor commit, add option to select a pretimeout governor in runtime commit, add panic pretimeout governor commit

  • hpwdt: add support for iLO5 commit

  • ziirave_wdt: Add support to upload the firmware. commit

11.11. Serial

  • 8250_dw: add ACPI support for uart on Hisilicon Hip05 SoC commit

  • 8250_mtk: support big baud rate. commit

  • stm32: adding support for stm32f7 commit, adding dma support commit

  • atmel: add fractional baud rate support commit

  • fsl_lpuart: Add support for RS-485 commit

11.12. ACPI, EFI, cpufreq, thermal, Power Management

  • ACPI

    • CPPC: add sysfs support to compute delivered performance commit

    • watchdog: Add support for WDAT hardware watchdog commit

    • I/O Remapping Table (IORT) initial support. IORT shows representation of IO topology for ARM based systems commit

    • Enable SPCR table in ARM64 commit

    • nfit: add dimm device notification support commit

    • efi: Add efi_test driver for exporting UEFI runtime service interfaces commit

  • devfreq

    • support rockchip dfi controller commit

    • rockchip: add devfreq driver for rk3399 dmc commit

11.13. Real Time Clock (RTC)

  • ac100: Add RTC driver for X-Powers AC100 commit, add clk output support commit

  • ds1307: add Intersil ISL12057 support commit

  • isl12057: remove driver commit

  • omap: Support ext_wakeup configuration commit

11.14. PCI

  • Add Precision Time Measurement (PTM) support commit

  • designware: Add iATU Unroll feature commit

  • rcar: Add multi-MSI support commit

  • rockchip: Add Rockchip PCIe controller support commit

  • AER: Remove aerdriver.forceload kernel parameter commit

  • pci/hotplug: Support surprise hotplug in powernv driver commit

11.15. Voltage, current regulators, power capping, power supply

  • Add Mediatek thermal driver for mt2701. commit

  • Add support for hardware-tracked trip points commit

  • Add Intel BXT WhiskeyCove PMIC thermal driver commit

  • max77620: Add thermal driver for reporting junction temp commit

  • qcom: tsens: Add a skeletal TSENS drivers commit, add support for 8916 family of SoCs commit, add support for 8960 family of SoCs commit, add support for 8974 family of SoCs commit, add support for 8996 family of SoCs commit

  • qoriq: Add thermal management support commit

  • tegra: add hw-throttle for Tegra132 commit

  • cpufreq: schedutil: Add iowait boosting commit

11.16. Pin Controllers (pinctrl)

11.17. Multi Media Card

  • sunxi: add support for A64 mmc controller commit

  • tmio: add eMMC support commit

  • sdhci-pci: enable SD card interface on Merrifield commit

  • sdhci-pci: enable SDIO interface on Intel Merrifield commit

11.18. Industrial I/O (iio)

  • Add IIO support for the Measurement Computing CIO-DAC family commit

  • accel: Add driver for the mCube MC3230 3-axis accelerometer commit, add support for Domintech DMARD06 accelerometer commit, add support for the Domintech DMARD09 3-axis accelerometer commit, kxsd9: Add I2C transport commit, mxc6255 add support for the mxc6225 commit

  • adc: add ADC12130/ADC12132/ADC12138 ADC driver commit, at91: Add support for Touchscreen Switches Closure Time commit, ltc2485: add support for Linear Technology LTC2485 ADC commit, mt2701: Add Mediatek auxadc driver for mt2701. commit, ti-adc161s626: add support for TI 1-channel differential ADCs commit

  • chemical: atlas-ph-sensor: add ORP feature commit, vz89x: add support for VZ89TE part commit

  • dac: AD8801: add Analog Devices AD8801/AD8803 support commit

  • light: Add driver for Silabs si1132, si1141/2/3 and si1145/6/7 ambient light, uv index and proximity sensors commit

  • magn: add a driver for AK8974 commit

  • pressure: initial zpa2326 barometer support commit

11.19. Multi Function Devices (MFD)

  • Add STMPE1600 support commit

  • Add Samsung Exynos Low Power Audio Subsystem driver commit

  • ac100: Add driver for X-Powers AC100 audio codec / RTC combo IC commit

  • axp20x: Add support for AXP806 PMIC commit

  • cros_ec: Add MKBP event support commit

  • lp873x: Add lp873x PMIC support commit

  • lpss: Add Intel Kaby Lake PCH-H PCI IDs commit

  • pm8921: Add support for pm8018 commit

  • qcom-rpm: Add support for pm8018 RPM Regulator commit

  • rk808: Add RK818 support commit

  • tps65217: Add support for IRQs commit

11.20. Pulse-Width Modulation (PWM)

11.21. Inter-Integrated Circuit (I2C)

  • designware: Enable fast mode plus commit, enable high speed mode commit

  • i801: Add support for Kaby Lake PCH-H commit

  • rcar: add support for r8a7796 (R-Car M3-W) commit

  • tegra: Add pinctrl support commit

  • thunderx: Add SMBUS alert support commit, add i2c driver for ThunderX SOC commit

11.22. Hardware monitoring (hwmon)

  • New hwmon registration API commit, commit, commit, commit, commit, commit, commit, commit

  • adt7411: add external thermal diode support commit

  • adt7470: Expose PWM frequency to sysfs commit

  • lm95241: Add support for fault attributes commit

  • nct6775: Add support for multiple virtual temperature sources commit

  • pmbus: Add explicit support for DPS-460, DPS-800, and SGD009 commit

  • ucd9000: Add support for UCD90160 Power Supply Sequencer commit

  • Add xgene hwmon driver commit

11.23. General Purpose I/O (gpio)

  • mockup: add virtual gpio device commit

  • Add AXP209 GPIO driver commit

  • Add Aspeed driver commit

  • Add GPIO support for the Diamond Systems GPIO-MM commit

  • Add Intel WhiskeyCove PMIC GPIO driver commit

  • Add Technologic I2C-FPGA gpio support commit

  • lp873x: Add support for General Purpose Outputs commit

  • rcar: Add r8a7796 (R-Car M3-W) support commit

  • stmpe: Add STMPE1600 support commit

11.24. Clocks

  • bcm: Add driver for BCM53573 ILP clock commit

  • max77686: Add support for MAX77620 clocks commit, combine Maxim max77686 and max77802 driver commit

  • mdm9615: Add support for MDM9615 Clock Controllers commit

  • meson: Add GXBB AO Clock and Reset controller driver commit

  • mvebu: Add the peripheral clock driver for Armada 3700 commit, add the xtal clock for Armada 3700 SoC commit

  • sunxi-ng: Add A23 CCU commit, add A31/A31s clocks commit, add A33 CCU support commit, add N-class clocks support commit

  • uniphier: add core support code for UniPhier clock driver commit

  • clocksource: moxart: Add Aspeed support commit

  • clocksource: Add J-Core timer/clocksource driver commit

  • Add Loongson1C clock support commit

  • st: Remove stih415-416 clock support commit

11.25. Hardware Random Number Generator

  • cavium - Add Cavium HWRNG driver for ThunderX SoC. commit

11.26. Various

  • EDAC, I3000: Orphan driver commit

  • EDAC, altera: Add Arria10 DMA support commit, add Arria10 NAND support commit, add Arria10 QSPI support commit, add Arria10 SD-MMC EDAC support commit, add Arria10 USB support commit

  • EDAC: Add Layerscape EDAC support commit

  • auxdisplay: img-ascii-lcd: driver for simple ASCII LCD displays commit

  • can: peak: Add support for PCAN-USB X6 USB interface commit

  • bus: qcom: add EBI2 driver commit

  • chcr: Support for Chelsio's Crypto Hardware commit

  • dmaengine: imx-sdma: Add i.MX7 support commit

  • dmaengine: omap-dma: Enable burst and data pack for SG commit

  • irqchip: Add STM32 external interrupts support commit

  • reset: Add STM32 reset driver commit

  • soc/fsl: Introduce DPAA 1.x BMan device driver commit

  • soc/fsl: Introduce DPAA 1.x QMan device driver commit

  • regulator: Add LTC3676 support commit

  • regulator: axp20x: Support AXP806 variant commit

  • regulator: pv88080: Update regulator for PV88080 BB silicon support commit

  • regulator: rk808: Add regulator driver for RK818 commit

  • remoteproc: Introduce auto-boot flag commit

  • remoteproc: qcom: Introduce WCNSS peripheral image loader commit

  • pcmcia: soc_common: add support for Vcc and Vpp regulators commit

  • pcmcia: soc_common: add support for reset and bus enable GPIOs commit

  • pcmcia: soc_common: add support for voltage sense GPIOs commit

  • mailbox: Add Platform Message-Handling-Unit variant driver commit

  • mailbox: pcc: Support HW-Reduced Communication Subspace type 2 commit

  • mcb: Added support for LPC or non PCI based MCB carrier commit

  • mcb: Enable PCI bus mastering by default commit

  • mei: me: add kaby point device ids commit

  • leds: add PM8058 LEDs driver commit

  • leds: add driver for Mellanox systems LEDs commit

  • leds: is31fl319x: 1/3/6/9-channel light effect led driver commit

  • ipmi: add an Aspeed BT IPMI BMC driver commit

  • irqchip/jcore-aic: Add J-Core AIC driver commit

  • irqchip/mvebu-pic: New driver for Marvell Armada 7K/8K PIC commit

  • extcon: Add EXTCON_DISP_DP and the property for USB Type-C commit

  • extcon: Add new EXTCON_CHG_WPT for Wireless Power Transfer device commit

  • extcon: Add new EXTCON_DISP_HMD for Head-mounted Display device commit

  • extcon: Add support for qcom SPMI PMIC USB id detection hardware commit

  • extcon: Add the support for the capability of each property commit

  • extcon: Introduce EXTCON_PROP_USB_SS property for SuperSpeed mode commit

  • firmware: Amlogic: Add secure monitor driver commit

  • misc: retire the old BMP085 driver commit

  • power: supply: act8945a_charger: Add capacity level property commit, add max current property commit, add status change update support commit

  • vme: Adding Fake VME driver commit

  • reset: uniphier: add reset controller driver for UniPhier SoCs commit

  • rpmsg: Introduce Qualcomm SMD backend commit

12. List of merges

13. Other news sites

Tell others about this page:

last edited 2017-03-09 19:46:40 by diegocalleja