Linux 4.10 was released on 19 Feb 2017.

Summary: This release adds support for virtualized GPUs, a new 'perf c2c' tool for cacheline contention analysis in NUMA systems, a new 'perf sched timehist' command for a detailed history of task scheduling, improved writeback management that should make the system more responsive under heavy writing load, a new hybrid block polling method that uses less CPU than pure polling, support for ARM devices such as the Nexus 5 & 6 or Allwinner A64, a feature that allows to attach eBPF programs to cgroups, an experimental MD RAID5 writeback cache, support for Intel Cache Allocation Technology, and many other improvements and new drivers.

1. Prominent features

1.1. Virtual GPU support

This release adds support for Intel GVT-g for KVM (a.k.a. KVMGT), a full GPU virtualization solution with mediated pass-through, starting from 4th generation Intel Core (Haswell) processors with Intel Graphics. This feature is based on a new VFIO Mediated Device framework. Unlike direct pass-through alternatives, the mediated device framework allows KVMGT to offer a complete virtualized GPU with full GPU features to each one of the virtualized guests, with part of performance critical resources directly assigned, while still having performance close to native. The capability of running native graphics driver inside a VM, without hypervisor intervention in performance critical paths, achieves a good balance among performance, feature, and sharing capability.

For more details, see these papers:

A Full GPU Virtualization Solution with Mediated Pass-Through

KVMGT: a Full GPU Virtualization Solution

vGPU on KVM (video)

Intel GVT main site

Code: VFIO Mediated device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit; KVMGT (merge); Intel GVT-g (merge)

1.2. New 'perf c2c' tool, for cacheline contention analysis

In modern systems with multiple processors, different memory modules are physically connected to different CPUs. In these NUMA systems, memory accesses to the local memory are faster than accesses to the memory connected to other processors. When a task is multi-threaded, different threads can run in different CPUs at the same time; if these threads try to access and modify the same memory, they can have performance issues due to the costs of synchronizing the CPU caches.

perf c2c (for "cache to cache") is a new tool designed to analyse and track down performance problems caused by false sharing on NUMA systems. The tool is based on x86's load latency and precise store facility events provided by Intel CPUs. At a high level, perf c2c will show you:

The cachelines where false sharing was detected.

The readers and writers to those cachelines, and the offsets where those accesses occurred.

The pid, tid, instruction addr, function name, binary object name for those readers and writers.

The source file and line number for each reader and writer.

The average load latency for the loads to those cachelines.

Which numa nodes the samples a cacheline came from and which CPUs were involved.

and more. For more details on perf c2c and how to use it, see https://joemario.github.io/blog/2016/09/01/c2c-blog/

Code: (merge)

1.3. Detailed history of scheduling events with perf sched timehist

'perf sched timehist' provides an analysis of scheduling events. Example usage: $ perf sched record -- sleep 1; perf sched timehist . By default it shows the individual schedule events, including the wait time (time between sched-out and next sched-in events for the task), the task scheduling delay (time between wakeup and actually running) and run time for the task:

{{{ time cpu task name wait time sch delay run time

[tid/pid] (msec) (msec) (msec)

1.874569 [0011] gcc[31949] 0.014 0.000 1.148 1.874591 [0010] gcc[31951] 0.000 0.000 0.024 1.874603 [0010] migration/10[59] 3.350 0.004 0.011 1.874604 [0011] <idle> 1.148 0.000 0.035 1.874723 [0005] <idle> 0.016 0.000 1.383 1.874746 [0005] gcc[31949] 0.153 0.078 0.022

}}}

For more details, see this article from Brendan Gregg: perf sched for Linux CPU scheduler analysis

Code: (merge)

1.4. Improved writeback management

Since the dawn of time, the way Linux synchronizes to disk the data written to memory by processes (aka. background writeback) has sucked. When Linux writes all that data in the background, it should have little impact on foreground activity. That's the definition of background activity...But for a long as it can be remembered, heavy buffered writers have not behaved like that. For instance, if you do something like $ dd if=/dev/zero of=foo bs=1M count=10k , or try to copy files to USB storage, and then try and start a browser or any other large app, it basically won't start before the buffered writeback is done, and your desktop, or command shell, feels unreponsive. These problems happen because heavy writes -the kind of write activity caused by the background writeback- fill up the block layer, and other IO requests have to wait a lot to be attended (for more details, see the LWN article).

This release adds a mechanism that throttles back buffered writeback, which makes more difficult for heavy writers to monopolize the IO requests queue, and thus provides a smoother experience in Linux desktops and shells than what people was used to. The algorithm for when to throttle can monitor the latencies of requests, and shrinks or grows the request queue depth accordingly, which means that it's auto-tunable, and generally, a user would not have to touch the settings. This feature needs to be enabled explicitly in the configuration (and, as it should be expected, there can be regressions)

Recommended LWN article: Toward less-annoying background writeback

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

1.5. Hybrid block polling

Linux 4.4 added support for polling requests in the block layer, a similar approach to what NAPI does for networking, which can improve performance for high-throughput devices (e.g. NVM). Continuously polling a device, however, can cause excessive CPU consumption and some times even worse throughput. This release includes a new hybrid, adaptative type of polling. Instead of polling after IO submission, the kernel induces an artificial delay, and then polls after that. For example, if the IO is presumed to complete in 8 μsecs from now, the kernel sleep for 4 μsecs, wake up, and then does the polling. This still puts a sleep/wakeup cycle in the IO path, but instead of the wakeup happening after the IO has completed, it'll happen before. With this hybrid scheme, Linux can achieve big latency reductions while still using the same (or less) amount of CPU. Thanks to improved statistics gathering included in this release, the kernel can measure the completion time of requests and calculate how much it should sleep.

The hybrid block polling is disabled by default. A new sysfs file, /sys/block/<dev>/queue/io_poll_delay has been added, which makes the polling behave as follows: -1 : never enter hybrid sleep, always poll (default); 0 : Use half of the completion mean for this request type for the sleep delay (aka: hybrid poll); >0 : disregard the mean value calculated by the kernel, and always use this specific value as the sleep delay.

Code: commit, commit, commit

1.6. Better support for ARM devices such as Nexus 5 & 6 or Allwinner A64

As an evidence of the work being done to bring Android and mainline kernels together, this release includes support for ARM socs such as:

Huawei Nexus 6P (Angler)

LG Nexus 5X (Bullhead)

Nexbox A1 and A95X Android TV boxes

Pine64 development board based on Allwinner A64

Globalscale Marvell ESPRESSOBin community board based on Armada 3700

Renesas "R-Car Starter Kit Pro" (M3ULCB) low-cost automotive board

Code: (merge)

1.7. Allow attaching eBPF programs to cgroups

This release adds eBPF hooks for cgroups, to allow eBPF programs for network filtering and accounting to be attached to cgroups, so that they apply to all sockets of all tasks placed in that cgroup. A new BPF program type is added, BPF_PROG_TYPE_CGROUP_SKB . The bpf(2) syscall is extended with by two new commands, BPF_PROG_ATTACH and BPF_PROG_DETACH , which allow attaching and detaching eBPF programs to a target. This feature is configurable ( CONFIG_CGROUP_BPF ).

Recommended LWN article: Network filtering for control groups

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

This release also adds a new cgroup-based program type, BPF_PROG_TYPE_CGROUP_SOCK . Similar to BPF_PROG_TYPE_CGROUP_SKB programs can be attached to a cgroup and run any time a process in the cgroup opens an AF_INET or AF_INET6 socket. Currently only sk_bound_dev_if is exported to userspace for modification by a bpf program.

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

1.8. Experimental MD raid5 writeback cache and FAILFAST support

This release implements a raid5 writeback cache in the MD subsystem (Multiple Devices). Its goal is to aggregate writes to make full stripe write and reduce read-modify-write. It's helpful for workload which does sequential write and follows fsync for example.

This feature is experimental and off by default.

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

This release also adds "failfast" support. RAID disk with failed IOs are marked as broken quickly, and avoided in the future, which can improve latency.

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

1.9. Support for Intel Cache Allocation Technology

A Intel feature that allows to set policies on the L2/L3 CPU caches; e.g. real-time tasks could be assigned dedicated cache space. For more details, read the recommended LWN article: Controlling access to the memory cache.

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

2. Core (various)

Kernel configuration system: Introduce the "imply" keyword. The "imply" keyword is a weak version of "select" where the target config symbol can still be turned off, avoiding those pitfalls that come with the "select" keyword. This is useful e.g. with multiple drivers that want to indicate their ability to hook into a secondary subsystem while allowing the user to configure that subsystem out without also having to unset these drivers commit

To cover the needs of some systems where suspend-to-idle is the preferred suspend method, rework the system sleep state selection interface (but preserve backwards compatibiliby). A new sysfs file, /sys/power/mem_sleep is added, that will control the system suspend mode triggered when writing mem to /sys/power/state (in analogy with what /sys/power/disk does for hibernation). It selects suspend-to-RAM ( deep sleep) by default (if supported) and fall back to suspend-to-idle ( s2idle ) otherwise and add a new command line argument, mem_sleep_default , allowing that default to be overridden if need be commit

Task scheduler: Add support for tasks that inject idle, used by some idle injection drivers such as Intel powerclamp and ACPI PAD drivers commit

initramfs: allow again choice of the embedded initram compression algorithm commit

posix-timers: Make them configurable, removing about 25 KB from the kernel binary size when configured out. Corresponding syscalls are routed to a stub logging the attempt to use them commit

printk: add Kconfig option to set default console loglevel commit

Documentation: create an user's manual book commit

driver core: Functional dependencies tracking support documentation, commit

driver-core: add test module for asynchronous probing commit

iomap: implement direct I/O path commit

Extend rodata=off boot cmdline parameter to module mappings commit

swiotlb: Add swiotlb=noforce debug option to aid debugging and catch devices not supporting DMA to memory outside the 32-bit address space commit

3. File systems

OverlayFS When copying up within the same fs, try to use clone copies commit Allow renaming a directory with backwards incompatible feature "redirect_dir" commit, commit, commit, commit

ext4 Forbid data journaling when data is encrypted commit DAX iomap support commit

F2FS Support multiple devices commit

NFS Add support for a new NFSv4.2 mode_umask attribute that makes ACL inheritance a little more useful in environments that default to restrictive umasks commit, commit

UBIFS Add support for file encryption using the fscrypt framework (merge)

XFS Faster buffer cache lookups commit Use iomap for Direct I/O (much simpler, faster, and has lower IO latency than the existing direct IO infrastructure) commit Deprecate barrier/nobarrier mount option commit

CIFS New mount option snapshot=<time> to allow mounting an earlier version of the remote volume commit Fix default behaviour for empty domains and add domainauto option in case the user wants a mechanism for guessing commit

BEFS Add NFS export support commit

LogFS Remove from tree, as it seems to be broken and unmaintained commit



4. Memory management

Memory compaction: Allow compaction for GFP_NOFS requests commit

slab: faster active and free stats. Reading /proc/slabinfo or monitoring slabtop(1) can become very expensive if there are many slab caches and if there are very lengthy per-node partial and/or free lists, this release makes it faster commit

Enable CONFIG_MOVABLE_NODE (movable memory nodes) on non-x86 arches commit, commit, commit, commit, commit

Make transparent hugepage size public in /sys/kernel/mm/transparent_hugepage/hpage_pmd_size commit

5. Block layer

Hybrid block polling (FEATURED) commit, commit, commit

Zoned block device support (SMR storage). It enables support for ZAC/ZBC host-managed and host-aware zoned block devices commit, commit, commit, commit, commit, commit, commit

Improved support for O_DIRECT on block devices commit, commit

Device Manager / MD RAID5 write back cache (FEATURED) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit failfast support (FEATURED). This fails IOs to broken raid disks quickly, so can improve latency. It's mainly for DASD storage, but some patches help normal raid array too commit, commit, commit, commit, commit, commit dm-crypt: add ability to use keys from the kernel key retention service. Instead of key userspace may pass a key description with preceding ':' commit dm-flakey: introduce "error_writes" feature commit dm block manager: make block locking optional, as it's usually only useful for developers commit md: add bad block support for external metadata commit

nvmet: add support for the Write Zeroes command commit

bcache: partition support: add 16 minors per bcacheN device commit

nbd: add multi-connection support commit

brd: remove support for BLKFLSBUF ioctl commit

6. Tracing and perf tool

New perf c2c tool (FEATURED) (merge)

Cross-architecture annotation support: AArch64 support commit, initial PowerPC support commit

perf sched timehist (FEATURED) (merge)

Allow considering just events in a given time interval, via the --time start.s.ms,end.s.ms command line, added to perf kmem , perf report , perf sched timehist and perf script commit, commit, commit, commit

perf script: Add option ( --stop-bt to stop printing callchain at one of a given group of symbol names commit

perf kmem stat: track freed memory as well as allocations and show the net in the summary commit

Allow querying and setting .perfconfig variables through command perf config commit, commit

perf report: Show branch information in callchains (predicted, TSX aborts, loop iterations, etc) commit, commit

Dynamicly change verbosity level by pressing 'V' in the perf top/report hists TUI browser, so that info that is present in perf top -v can be obtained without having to restart the tool commit

Implement perf trace --delay in the same fashion as in perf record --delay , to skip sampling workload initialization events commit

Add unwinding support for jitdump commit, commit

perf list: Support matching by topic commit

Add initial support for tooling hooks, they allow hooking user code at perf events and can be used for manipulation of BPF maps, taking snapshot and reporting results. In this release two perf hook points are introduced: record_start and record_end commit

Add JSON files with vendor event naming for Intel and POWER8 processors, allowing users of tools like oprofile to keep using the event names they are used to, as well as people reading vendor documentation, where such naming is used. Code: Add Bonnell event file commit, add Broadwell commit, add BroadwellDE commit, add BroadwellX commit, add Goldmont commit, add Haswell commit, add HaswellX commit, add IvyBridge commit, add IvyTown commit, add Jaketown commit, add KnightsLanding commit, add NehalemEP commit, add NehalemEX commit, add SandyBridge commit, add Silvermont commit, add Skylake commit, add WestmereEP-DP commit, add WestmereEP-SP commit, add WestmereEX commit, add POWER8 PMU commit, add more POWER8 PVRs commit

ftrace Support flexible glob wildcards (*,?) and character classes ( [ ). E.g. # echo '[Ss]y[Ss]_*' > set_ftrace_filter commit Add new file /sys/kernel/debug/tracing/trace_marker_raw . It allows for appications to create data structures and write the binary data directly into it, and then read the trace data out from trace_pipe_raw into the same type of data structure. This saves on converting numbers into ASCII that would be required by trace_marker commit STM can hook into the function tracer with the help of a new ftrace-export-over-stm driver commit



7. Virtualization

vCPU preemption support: add an interface to query the preemption status of vCPUs and use it in locking primitives - this optimizes paravirt performance commit, commit, commit, commit, commit, commit, commit

Add virtio-crypto driver. For more information about virtio-crypto device, please see: http://qemu-project.org/Features/VirtioCrypto commit

virtio-net: enable multiqueue by default commit support XDP commit, commit, commit, commit, commit, commit,

Add loopback to virtio-vsock commit

Add a paravirtual RDMA device commit

um: UBD Improvements commit

VFIO: new Mediated Device interface (FEATURED) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

Hyper-V: new userspace i/o driver for VMBus commit, vmbus: add support for dynamic device id's commit

8. Security

audit: add support for session ID user filter commit

crypto layer: Add asynchronous compression API. The Asynchronous Compression API is used with the algorithms of type CRYPTO_ALG_TYPE_ACOMPRESS (listed as type "acomp" in /proc/crypto) commit, commit, commit, commit, commit, commit, commit, commit, commit

9. Graphics

Explicit fencing support. Explicit fencing allows userspace to control the buffer synchronization between devices. A fence or a group of fences are transferred to/from userspace using Sync File fds and there are two DRM properties for that. IN_FENCE_FD on each DRM plane to send fences to the kernel and OUT_FENCE_PTR on each DRM CRTC to receive fences from the kernel documentation, commit, commit, commit

Add API for capturing frame CRCs commit

Add support for optional per-plane rotation property commit

atomic: add debugfs file to dump out atomic state commit

10. Networking

Add eBPF hooks for cgroups (FEATURED) commit, commit, commit, commit, commit, commit

Enables the running of programs that do not support SO_BINDTODEVICE in a specific VRF context / L3 domain with the help of ebpf cgroup support (FEATURED) commit, commit, commit, commit, commit, commit

BPF for lightweight tunnel encapsulation commit, https://git.kernel.org/torvalds/c/f74599f7c5309b21151233b98139e9b723fd1110

Add support for per-UID routing. It allows the administrator to configure rules such as: # ip rule add uidrange 100-200 lookup 123 . This functionality has been in use by all Android devices since 5.0. It is primarily used to impose per-app routing policies (on Android, every app has its own UID) without having to resort to rerouting packets in iptables, which breaks getsockname() and MTU/MSS calculation, and generally disrupts end-to-end connectivity commit, commit, commit

IPv4/v6: Add IP_RECVFRAGSIZE and IPV6_RECVFRAGSIZE cmsg to expose the maximum fragment size if recorded so that applications can estimate the receive path MTU commit, commit

IPv4: Enable support for Virtual Routing and Forwarding with ipv4 multicast commit

IPv6: Implemented enhanced Duplicate Address Detection (RFC 7527) commit

IPv6: Add support for IPv6 Segment Routing. Segment Routing is a source routing paradigm, architecturally defined in draft-ietf-spring-segment-routing-09. The IPv6 flavor of SR is defined in draft-ietf-6man-segment-routing-header-02. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

TCP: sender chronographs instrumentation. This feature exports the sender chronograph stats via the socket SO_TIMESTAMPING channel. Currently it can instrument how long a particular application unit of data was queued in TCP by tracking SOF_TIMESTAMPING_TX_SOFTWARE and SOF_TIMESTAMPING_TX_SCHED . Having these sender chronograph stats exported simultaneously along with these timestamps allow further breaking down the various sender limitation. For example, a video server can tell if a particular chunk of video on a connection takes a long time to deliver because TCP was experiencing small receive window commit, commit, commit, commit, commit, commit

TCP: randomize TCP timestamp offsets for each connection. It changes the meaning of the tcp_timestamps sysctl commit, commit

UDP: use it's own memory accounting schema (improves performance) commit

Add an ioctl to get a socket network namespace. It introduces a new socket ioctl, which is called SIOCGSKNS and used to get a file descriptor for a socket network namespace commit

Add diag interface for raw sockets, to be able to collect sockets present in the system, just as it can be done for unix, tcp, udp[lite], packet, netlink commit

openvswitch: support for layer 3 encapsulated packets commit, commit, commit, commit, commit, commit, commit, commit

Netfilter Add support for stateful objects, providing a nf_tables native alternative to nfacct, the extended accounting infrastructure. Two initial stateful objects are supported: counters and quotas. Stateful objects are uniquely identified by a user-defined name and you have to attach them to tables, you can fetch and reset them anytime. You can also use a maps to allow fast lookups using any arbitrary key combination More info. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Introduce an nftables rt expression for routing related data with support for nexthop (i.e. the directly connected IP address that an outgoing packet is sent to), which can be used either for matching or accounting, e.g. # nft add rule filter postrouting ip daddr 192.168.1.0/24 rt nexthop != 192.168.0.1 drop , this will drop any traffic to 192.168.1.0/24 that is not routed via 192.168.0.1 commit Allow disabling conntrack-on-by-default. When net namespaces are added, netfilter hooks that where already registered are inherited. This means that once nf_conntrack_ipv4/6.ko is loaded, all existing and future net namespaces do connection tracking. This series adds a new sysctl, nf_conntrack_default_on , that can be set to 0 to disable this behaviour. Connection tracking is enabled via packet filter ruleset, regardless of the sysctl setting, once a rule that needs conntrack functionality is added (e.g. iptables -m conntrack ) commit, commit, commit, commit, commit, commit, commit Add the FIB expression to query fib for oif and route/address type commit Add support to flush sets in nf_tables commit, commit, commit Add notrack expression commit xt_bpf: Add support for attaching an eBPF object by file descriptor. The iptables binary can be called with a path to an elf object or a pinned bpf object commit

sched/act_mirred: Implement the corresponding ingress actions TCA_INGRESS_REDIR and TCA_INGRESS_MIRROR (Up until now, action mirred supported only egress actions (either TCA_EGRESS_REDIR or TCA_EGRESS_MIRROR ). This allows attaching filters whose target is to hand matching skbs into the rx processing of a specified device commit, commit, commit, commit

sched/cls_flower: offloading tc rules using underline Hardware device. This adds flower classifier support in offloading tc rules when the Software ingress device is different from the Hardware ingress device, such as when dealing with IP tunnels commit, commit, commit, commit, commit

sched/cls_flower: Add the user API to provide set of flags for matching, where the flags provided from user-space are mapped to flow-dissector flags commit

sched/cls_flower: Add support for matching on ICMP type commit, commit

Enables proper isolation between traffic classes when using XPS while DCB is enabled. Previously enabling XPS would cause the traffic to be potentially pulled from one traffic class into another on egress commit, commit, commit, commit

Add support for IGMPv3 and MLDv2 querier in the bridge. Two new options which can be toggled via netlink and sysfs are added that control the version per-bridge: multicast_igmp_version - default 2, can be set to 3; and multicast_mld_version - default 1, can be set to 2 commit, commit

BPF Add the LRU versions of the existing BPF_MAP_TYPE_HASH and BPF_MAP_TYPE_PERCPU_HASH maps: BPF_MAP_TYPE_LRU_HASH and BPF_MAP_TYPE_LRU_PERCPU_HASH sample, commit, commit, commit, commit, commit Add support for symlinks and fix mtime/ctime commit Allow for mount options to specify permissions commit Allow head adjustment in XDP prog commit

802.11 (WiFI) Add support for using drivers with Fast Initial Link Setup as defined in IEEE 802.11ai (to be published). It is a function that would enable a wireless LAN client to achieve a secure link setup within 100 ms. This release covers only the FILS authentication/association functionality from IEEE 802.11ai, i.e., the other changes like scanning optimizations are not included commit, commit, commit, commit, commit, commit, commit, commit, commit Deprecate legacy WDS and disable by default commit

B.A.T.M.A.N.: Simple (re)broadcast avoidance commit

ethtool: Implements ETHTOOL_PHY_GTUNABLE and ETHTOOL_PHY_STUNABLE to get and set PHY tunables commit

Bluetooth: Add support for H7 crypto that's used when both sides set the CT2 auth flag. It is necessary for Bluetooth 5.0 support commit

11. Architectures

ARM Add sysfs /sys/devices/system/cpu/cpu*/cpu_capacity attribute commit Device trees: BCM5301X: Add DT for Luxul XAP-1510 commit, for Luxul XWR-3100 commit, for Netgear R8500 commit, for TP-LINK Archer C9 V1 commit, for BCM53573 based Tenda AC9 commit AM571x-IDK Initial Support commit Add MDM9615 dtsi commit Add STM32F746 MCU and STM32746g-EVAL board commit Add Sierra Wireless WP8548 dtsi commit Add WP8548 based MangOH Green board DTS commit Add minimal support for Motorola Droid 4 xt894 commit Add support for OX820 and Pogoplug V3 commit Add support for dra718-evm commit add support for Turris Omnia commit exynos: Add TOPEET itop elite based board commit imx6: Add support for Toradex Colibri iMX6 module commit imx6q: Add Engicam i.CoreM6 DualLite/Solo initial support commit imx6q: Add Engicam i.CoreM6 Quad/Dual initial support commit imx6sx: Add UDOO Neo support commit imx6ul: Add DTS for liteBoard commit imx6ul: Add DTS for liteSOM module commit imx6ull: add imx6ull support commit imx: add Boundary Devices Nitrogen6_SOM2 support commit pxa: add pxa25x .dtsi file commit r8a7743: initial SoC device tree commit r8a7745: initial SoC device tree commit rockchip: Add rk3066 MK808 board commit, add basic support for RK1108 SOC commit, add Rockchip PX3 Evaluation board commit, add Rockchip RK1108 Evaluation board commit sk-rzg1e: initial device tree commit sk-rzg1m: initial device tree commit socfpga: Add Macnica sodia board commit sun8i: Add dts file for NanoPi M1 SBC commit OMAP2+: board-generic: add support for DRA71x family commit shmobile: r8a7743: basic SoC support commit shmobile: r8a7745: basic SoC support commit coresight: Add support for ARM Coresight STM-500 commit, etm3x: Adding missing features of Coresight PTM components commit ARM64 Add uprobe support commit dump: Make ptdump debugfs a separate option commit Add sysfs /sys/devices/system/cpu/cpu*/cpu_capacity attribute commit Device Tree Sources amlogic: Add basic support for Amlogic S905D commit and for Amlogic S905X commit meson-gxbb: Add support for the Nexbox A95X Board commit meson-gxl: Add support for Nexbox A95X commit meson-gxm: Add support for the Nexbox A1 commit Add Allwinner A64 SoC .dtsi commit Add LS1046A-QDS board support commit Add LS1046A-RDB board support commit Add Pine64 support commit Add QorIQ LS1046A SoC support commit exynos: Add dts file for Exynos5433-based TM2 board commit, add dts file for Exynos5433-based TM2E board commit, add dtsi files for Samsung Exynos5433 64bit SoC commit hisilicon: Add initial dts for Hip07 D05 board commit m3ulcb: initial device tree commit marvell: Add definition for the Globalscale Marvell ESPRESSOBin Board commit msm8992 SoC and LG Bullhead (Nexus 5X) support commit msm8994 SoC and Huawei Angler (Nexus 6P) support commit rockchip: Add PX5 Evaluation board commit tegra: Add NVIDIA P2771 board support commit zynq: Add MicroZed board support commit mach-stm32: Add a new SOC - STM32F746 commit imx: Added perf functionality to mmdc driver commit oxnas: Add OX820 SMP support commit socfpga: FPGA bridge driver support commit ACPI APEI initial support for ARM64 commit

x86 Intel Resource Director Technology Allocation support (FEATURED) commit, commit, commit, commit, commit, commit, commit, commit, commit Expose cache id in /sys/devices/system/cpu/cpu*/cache/index*/ commit Enable new AVX512 cpu features commit vDSO getcpu() performance improvement for future Intel CPUs with the RDPID instruction commit Remove kernel text addresses from stack dump commit, remove raw stack dump commit Hard-disable lazy FPU mode commit Support Intel Turbo Boost Max Technology 3.0 that allows some cores to be boosted to higher turbo frequency than others, and add /proc/sys/kernel/sched_itmt_enabled file to enable it commit, commit vmware: paravirt improvements commit, commit KVM: add APIC Timer periodic/oneshot mode VMX preemption timer support commit KVM: Expose Intel AVX512IFMA/AVX512VBMI/SHA features to guest. commit KVM: emulate FXSAVE and FXRSTOR commit KVM: Add AVX512_4VNNIW and AVX512_4FMAPS support commit EDAC: add AMD Zen support to amd64_edac commit, commit, commit, commit EDAC: sb_edac: Add Intel Knights Mill support commit intel_th: Support Host Debugger mode of operation commit raid6: Add AVX2 optimized xor_syndrome functions commit Platforms Add Whiskey Cove PMIC TMU support commit Surface 3: Add custom surface3 platform device for controlling LID commit, introduce button support for the Surface 3 commit Introduce support for Mellanox hotplug driver commit intel_pmc_core: Add KBL CPUID support commit, add LTR IGNORE debug feature commit, add MPHY PLL clock gating status commit, add PCH IP Power Gating Status commit, modPhy core lanes pg status commit thinkpad_acpi: Add support for X1 Yoga (2016) Tablet Mode commit, adding new hotkey ID for Lenovo Thinkpad commit amd_nb: Add SMN and Indirect Data Fabric access for AMD Fam17h commit Get rid of the show_msr= boot option commit intel_idle: Add CPU model 0x4a (Atom Z34xx series) commit, Add Knights Mill CPUID commit

PPC Add kexec support commit KVM: Book3S HV: Add new POWER9 guest-accessible SPRs commit 8xx: Implement support of hugepages commit debugging: Dump hash table commit, dump Linux pagetables commit xmon: Add 'dt' command to dump trace buffers commit Add option to use thin archives commit THP page cache support for ppc64 commit

S390 zcrypt: Introduce new zcrypt device status API commit, add multi domain support commit

M68K Add Sysam AMCORE open board support commit

SPARC Support User Probes for sparc commit

OpenRISC Add thread-local storage (TLS) support commit

PARISC Enable KASLR commit



12. Drivers

12.1. Graphics

Add initial ZTE VOU display driver commit

Add driver for Amlogic Meson Graphic Controller on GXBB/GXL/GXM socs commit

Add driver for MXSFB controller commit

Intel Add GVT-g device model, which allows the virtualization of GPU resources (merge), (merge) GPU scheduler and priority boosting commit, commit Add a relay backed debugfs interface for capturing GuC logs commit Add stats for GuC log buffer flush interrupts commit Debugfs support for GuC logging control commit Show RING registers through debugfs commit

amdgpu Support for virtual devices New VM manager for non-contig VRAM buffers commit Add Polaris 12 support commit, commit, commit UVD powergating Export VBIOS information commit Expose fan rpm though hwmon commit Add info ioctl query for vce clock info commit Add one more Fiji device id commit Add debugfs support for reading GPRs (v2) commit

nouveau Atomic modesetting support (merge) Displayport Multistream (MST) support (merge) Support for GP102 commit and GP106 chipset commit Add a LED driver for the Nvidia logo commit

hisilicon hibmc support (BMC chip for AArch64 servers) commit, commit, commit, commit, commit, commit

rcar-du Add R8A7792 support commit Add R8A7796 support commit

sunxi A31 SoC display engine support commit, commit, commit

imx-drm YUV format support commit

vc4 Fragment shader threading commit ETC1 support commit VEC (TV-out) support commit

msm A5XX GPU support commit add debugfs to show smp block status commit module param to dump state on error irq commit

etnaviv DRAW_INSTANCED support commit

bridge add Silicon Image SiI8620 driver commit Add ti-tfp410 DVI transmitter driver commit adv7511: Add audio support commit dw_hdmi: add dw HDMI i2c bus adapter support commit Add DesignWare HDMI I2S audio support commit

panel Add support for Chunghwa CLAA070WP03XG panel commit simple: Add NVD9128 as a simple panel commit, add support for AUO G133HAN01 commit, add support for AUO G185HAN01 commit, add support for AUO T215HVN01 commit, add support for Sharp LQ150X1LG11 panels commit

fsl-dcu: introduce kernel parameter to specify fbdev depth commit

sun4i: Add a few formats commit

mali-dp: Add support for setting plane's rotation property from userspace. commit

gpu: ipu-v3: add YUV 4:4:4 support commit

12.2. Storage

ata: Support ATA Command Priorities, they are disabled by default commit, commit

ahci: qoriq: added ls1046a platform support commit

SCSI hisi_sas: add PHY set linkrate support for v1 and v2 hw commit, add v2 hw support for ECC and AXI bus fatal error commit hpsa: add 'ctlr_num' sysfs attribute commit mpt3sas: Added Device ID's for SAS35 devices and updated MPI header. commit,increased/Additional MSIX support for SAS35 devices. commit, use the new MPI 2.6 32-bit Atomic Request Descriptors for SAS35 devices. commit qedi: Add QLogic FastLinQ offload iSCSI driver framework. commit qla2xxx: Add Block Multi Queue functionality. commit, add multiple queue pair functionality. commit ufs: add support for UFS HCI 2.1 commit

lightnvm: remove sysfs configuration interface commit

nvme Support for FC for the nvme-over-fabrics code commit, commit, commit Add the Broadcom OTP controller driver commit Add NXP LPC18xx OTP driver commit



12.3. Drivers in the Staging area

iio: ad7192: add DVdd regulator commit

iio: ad9832: add DVDD regulator commit

lustre: remove Size on MDS support commit

slicoss: remove the staging driver commit

12.4. Networking

alx: enable multiple tx queues commit, enable msi-x interrupts by default commit

amd-xgbe: Add ECC status support for the device memory commit, add I2C support for sideband communication commit, add PCI device support commit, add support for MDIO attached PHYs commit, add support for SFP+ modules commit, add support for a KR redriver commit, add support for clause 37 auto-negotiation commit, perform priority-based hardware FIFO allocation commit

ath9k: Switch to using mac80211 intermediate software queues (removes bufferbloat-induced latency) commit

ath10k: add per peer htt tx stats support for 10.4 commit, add platform regulatory domain support commit, add spectral scan support to wmi-tlv commit, add support for per sta tx bitrate commit

bnxt_en: Add PFC statistics. commit, Add UDP RSS support for 57X1X chips. commit, add ethtool -n|-N rx-flow-hash support. commit, enhance autoneg support. commit, implement DCBNL to support host-based DCBX. commit

brcmfmac: add PCIe host dongle interface rev6 support commit, add support for 43341 chip commit

cpsw: ethtool: add support for getting/setting EEE registers commit, add support for nway reset commit

dpaa_eth: add ethtool functionality commit, add ethtool statistics commit, add support for DPAA Ethernet commit, add sysfs exports commit

xgene: Add support for Jumbo frame commit

fjes: Add debugfs entry for EP status information in fjes driver commit, enhance ethtool -S for fjes driver commit, ethtool -d support for fjes driver commit, ethtool -w and -W support for fjes driver commit

i40e: Add support for 25G devices commit, blink LED on 1G BaseT boards commit

i40iw: Add 2MB page support commit, add Quality of Service support commit, enable message packing commit

iwlwifi: mvm: enable dynamic queue allocation mode commit

ixgbe: Add X553 FW ALEF support commit, remove SFP ixfi support commit

lan78xx: add LAN7801 MAC only support commit

mlxsw: Introduce support for I2C bus commit, implement thermal zone commit, switchib: Introduce SwitchIB and SwitchIB silicon driver commit, switchx2: Add IB port support commit, switchx2: Add Infiniband switch partition commit, switchx2: Add support for physical port names commit

mlx4_en: Add ethtool statistics for XDP cases commit

mlx5: Add ConnectX-5 PCIe 4.0 VF device ID commit, add DCBX firmware commands support commit, add SRIOV VF max rate configuration support commit, add multi dest support commit, introduce E-switch QoS management commit, introduce TSAR manipulation firmware commands commit, Mellanox 100G mlx5 SRIOV switchdev update commit, commit, commit, commit, commit, commit, commit

mlx5e: Add support to offload rules using the new "egress_device" flag commit, commit, commit, add CQE compression user control commit, add DCBX control interface commit, add TC tunnel release action for SRIOV offloads commit, add basic TC tunnel set action for SRIOV offloads commit, add support for ethtool self diagnostics test commit, add support for loopback self-test commit, connectX-4 firmware support for DCBX commit, implement Fragmented Work Queue (WQ) commit, offload TC matching on packets being IP fragments commit, support DCBX CEE API commit

liquidio: VF support merge, merge, merge, merge

dsa: mv88e6xxx: add MV88E6097 switch commit, add port 802.1Q mode setter commit, add port duplex setter commit, add port link setter commit, add port's MAC speed setter commit, add port's RGMII delay setter commit, add interrupt support commit

altera_tse: add support for SGMII PCS commit

bgmac: add NS2 support commit

slicoss: add slicoss gigabit Ethernet driver commit

ti: cpsw: add .ndo to set per-queue rate commit, netcp: add support of CPTS commit

macb: Add ethtool get_ringparam and set_ringparam functionality commit, added PCI wrapper for Platform Driver. commit

mvneta: Add network support for Armada 3700 SoC commit

qcom/emac: add support for the Qualcomm QDF2400 commit

stmmac: Add OXNAS Glue Driver commit

thunderx: Add ethtool support for supported ports and link modes. commit, pause frame support commit

nfp: Add XDP support in the driver commit, add support for ethtool .get_channels commit, add support for ethtool .set_channels commit, add support for offload of XDP programs commit, remove support for nfp3200 commit

qed/qede: add support for WoL commit, handle-based L2-queues. commit, management firmware - notifications and defaults commit

qed: Add support for hardware offloaded iSCSI. commit, use VF-queue feature commit

qede: Add basic XDP support commit, add support for XDP_TX commit, GSO support for tunnels with outer csum commit

qmi_wwan/cdc_ether: add device ID for HP lt2523 (Novatel E371) WWAN card commit

r8152: add new products of Lenovo commit

r8169: add support for RTL8168 series add-on card. commit

rsi: Add support for 802.11d commit, add support for antenna selection commit, add support for configuring tx power commit, add support to filter rx frames commit

sfc: Firmware-assisted TSO version 2 commit, enable 4-tuple RSS hashing for UDP commit, remove software TSO commit

wil6210: add debugfs blobs for UCODE code and data commit, add support for abort scan commit, add support for power save enable / disable commit

cadence: Add LSO support. commit

Net PHY Add Meson GXL Internal PHY driver commit Add mdi(x) support in Microsemi PHYs driver commit Add support for Microsemi VSC 8530/40 Fast Ethernet PHY commit Add an option to disable EEE advertisement commit aquantia: add PHY ID of AQR106 and AQR107 commit bcm7xxx: Add support for downshift/Wirespeed commit broadcom: Add support for BCM54612E commit, allow enabling or disabling of EEE commit leds: add support for LED triggers on PHY link state change commit micrel: add support for KSZ8795 commit vitesse: add support for VSC8572 commit

Infiniband hfi1: Add active channel and backplane support for integrated devices commit hfi1: Read new EPROM format commit mlx5: Add support for CQE compressing commit mlx5: Make create/destroy_ah available to userspace commit mlx5: Support VXLAN tunneling specification commit rxe: Increase max number of completions to 32k commit



12.5. Audio

hda/realtek - Add support for headset MIC for ALC622 commit

usb-audio: Add native DSD support for TEAC 501/503 DAC commit

ALSA on a chip Add support for CS42L42 codec commit Intel: Add missing 10EC5672 ACPI ID matching for Cherry Trail commit Intel: Skylake: Add D0iX IPCs commit Intel: atom: Add sysfs entry in order to store FW version commit add rt5665 codec driver commit atmel: tse850: add ASoC driver for the Axentia TSE-850 commit codecs: Add msm8916-wcd analog codec commit codecs: Add msm8916-wcd digital codec commit cs35l34: Initial commit of the cs35l34 CODEC driver. commit dapm: Implement stereo mixer control support commit rt5670: Add missing 10EC5072 ACPI ID commit samsung: Add machine driver for Exynos5433 based TM2 board commit samsung: Drop AC'97 drivers commit sun4i-codec: Add support for A23 codec commit, add support for A31 ADC capture path commit, add support for A31 Line In playback commit, add support for A31 Line Out playback commit, add support for A31 analog microphone inputs commit, add support for A31 board level audio routing commit, add support for A31 playback through headphone output commit, add support for H3 codec commit, add support for optional reset control to quirks commit sun4i-i2s: Implement capture support commit sunxi: Add support for A23/A33/H3 codec's analog path controls commit tlv320aic31xx: Add support for tlv320dac3101 commit wm8580: Add the wm8581 codec to the driver commit



12.6. Tablets, touch screens, keyboards, mouses

Input: synaptics-rmi4 - add support for F34 V7 bootloader commit

HID Add support for the new Wacom "MobileStudio Pro" class of tablets, a third iteration of the Cintiq Companion line of mobile PCs which can double as external pen displays commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Microsoft Surface 3 support commit Microsoft Surface 4 support commit Add support for the uDraw tablet for PS3 commit Add new force feedback driver for Mayflash game controller adapters commit asus: Add i2c touchpad support commit Handle external buttons for Precision Touchpads commit sony: Support DS4 dongle commit, update device ids commit



12.7. TV tuners, webcams, video capturers

Add Cinergy S2 rev.4 support commit

Add support for EVOLVEO XtraTV stick commit

VPU: mediatek: Add decode support commit, add mdp support commit

cobalt: add cropcap support commit

dvb-usb-dvbsky: Add support for TechnoTrend S2-4650 CI commit

exynos-gsc: Add support for Exynos5433 specific version commit

Add Mediatek MDP driver commit

ti-vpe: vpdma: Add multi-instance and multi-client support commit, vpe: Add RGB565 and RGB5551 support commit, Add proper support single and multi-plane buffer commit

mn88473: add DVBv5 statistics support commit

pulse8-cec: move out of staging commit

s5p-mfc: Add support for MFC v8 available in Exynos 5433 SoCs commit

usbtv: add video controls commit

uvcvideo: add support for Oculus Rift Sensor commit

v4l: Add 16-bit raw bayer pixel formats commit

v4l: Add Renesas R-Car FDP1 Driver commit

v4l: add Mediatek compressed video block format commit

v4l: ctrls: Add deinterlacing mode control commit

v4l: vsp1: Add support for capture and output in HSV formats commit

mediatek: Add Mediatek H264 Video Decoder Drive commit, add Mediatek V4L2 Video Decoder Driver commit, add Mediatek VP8 Video Decoder Driver commit, add Mediatek VP9 Video Decoder Driver commit

vivid: Add support for HSV encoding commit, add support for HSV formats commit

12.8. Universal Serial Bus

Added devspec sysfs entry for devices behind the usb hub commit

Add MediaTek USB3 DRD driver commit

dwc2: gadget: Add IOT device IDs, configure core accordingly commit

dwc3: pci: add Intel Gemini Lake PCI ID commit

gadget: f_hid add super speed support commit

host: xhci: plat: add support for Renesas r8a7796 SoC commit

mtu3: Super-Speed Peripheral mode support commit, dual-role mode support commit, host only mode support commit

cdc-acm: add device id for GW Instek AFG-125 commit

serial: add Fintek F81532/534 driver commit

serial: cp210x: Adding GPIO support for CP2105 commit

serial: option: add dlink dwm-158 commit

serial: option: add support for Telit LE922A PIDs 0x1040, 0x1041 commit

serial: option: add device ID for HP lt2523 (Novatel E371) commit

serial: pl2303: add ATEN device ID commit

serial: qcserial: add Dell DW5570 QDL commit

12.9. Serial Peripheral Interface (SPI)

Add support for Armada 3700 SPI Controller commit

fsl-espi: add support for ESPI RXSKIP mode commit, add support for dual output read mode commit

imx: add lpspi bus driver commit

sh-msiof: Add support for R-Car M3-W commit

sun6i: Support Allwinner H3 SPI controller commit

12.10. Watchdog

da9062/61: watchdog driver commit

loongson1: Add Loongson1 SoC watchdog driver commit

it87_wdt: add IT8620E ID commit

12.11. Serial

8250: pxa: add devicetree earlyconsole commit

8250_dw: Add support for IrDA SIR mode commit

8250_fintek: Add F81216 Support commit, add F81865 Support commit, add F81866 Support commit

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

acpi: Enable HWP CPPC objects. The primary reason to enable CPPC support is to get the maximum performance of each CPU to check and enable Intel Turbo Boost Max Technology 3.0 (ITMT) commit

acpi: Set _OSC to enable diverse core support. This is required to enable the BIOS support of the Intel Turbo Boost Max Technology 3.0 feature commit

EFI: Add support for seeding the RNG from a UEFI config table commit

EFI: Apple device properties commit, commit, commit, commit

powercap: Add Knights Mill CPUID commit

i7300_idle: Remove this driver commit

tools/power/x86/turbostat: Make extensible via the --add parameter commit, support Knights Mill (KNM) commit, remove obsolete -M, -m, -C, -c options commit, add Denverton RAPL support commit, add Denverton support commit

12.13. Real Time Clock (RTC)

Add support for Epson Toyocom RTC-7301SF/DG commit

jz4740: Add support for acting as the system power controller commit, add support for the RTC in the jz4780 SoC commit

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

cpufreq intel_pstate Generic governors support. There may be reasons to use generic cpufreq governors instead of the intel_pstate driver's internal governor. However, that currently can only be done by disabling intel_pstate altogether and using the acpi-cpufreq driver instead. This release makes possible to use the intel_pstate driver with generic cpufreq governors as a "normal" cpufreq driver. That mode is enforced by adding intel_pstate=passive to the kernel command line and cannot be disabled at run time. In that mode, intel_pstate provides a cpufreq driver interface and is listed in scaling_driver as "intel_cpufreq" commit Support for per-logical-CPU P-state limits and the Energy Performance Preference/Energy Performance Bias knobs in the intel_pstate driver. Intel P-State offered two interface to set performance limits: Intel P-State sysfs interface, and the cpufreq interface. In the current implementation both of the above methods, change limits to every CPU in the system. To make possible to have limits placed on individual CPU cores. This change brings in capability to set P-States limits for each CPU, with some limitations commit Use CPPC to get max performance commit intel_pstate: Add Knights Mill CPUID commit Support for energy performance hints with HWP commit retire the Integrator cpufreq driver commit New sysfs attribute for clearing statistics commit brcmstb-avs-cpufreq: AVS CPUfreq driver for Broadcom STB SoCs commit, add debugfs support commit cpufreq-dt: add Socionext UniPhier SoCs support commit



12.15. Pin Controllers (pinctrl)

Add SX150X GPIO Extender Pinctrl Driver commit

New driver for TI DA850/OMAP-L138/AM18XX pinconf commit

oxnas: Add support for OX820 commit

qcom: Add msm8994 pinctrl driver commit

rockchip: add support for rk1108 commit

sx150x: add support for sx1501, sx1504, sx1505 and sx1507 commit

12.16. Multi Media Card (MMC)

sdhci-acpi: support 80860F14 UID 2 SDIO bus commit

sdhci-cadence: add Cadence SD4HC support commit

sdhci-msm: Add HS400 platform support commit

sdhci-pci: Add PCI ID for Intel NI byt sdio commit, add support for Intel GLK commit

tmio: Add hw reset support commit, add tuning support commit

meson: initial support for GX platforms commit

12.17. Industrial I/O (iio)

tools: add -A to force-enable all channels commit

104-quad-8: Add IIO support for the ACCES 104-QUAD-8 commit

accel: Add driver for dmard10 3-axis Accelerometer commit, add driver for the MiraMEMS DA280 3-axis 14-bit digital accelerometer commit, add driver for the MiraMEMS DA311 3-axis 12-bit digital accelerometer commit, st_accel: add support to lng2dm commit

adc: Add support for STM32 ADC commit, commit, ti-adc161s626: add regulator support commit, add support for AD7766/AD7767 commit

cros_ec_sensors: add ChromeOS EC Contiguous Sensors driver commit, commit

dpot-dac: DAC driver based on a digital potentiometer commit

envelope-detector: ADC driver based on a DAC and a comparator commit

gyro: Add driver for the MPU-3050 gyroscope commit

humidity: add support to hts221 rh/temp combo device commit

potentiostat: add LMP91000 support commit

pressure: Add driver for Honeywell ABP family commit

isl29018: move out of staging commit

tsl2583: move out of staging commit

sca3000 Move out of staging. commit

12.18. Multi Function Devices (MFD)

Add support for Allwinner SoCs ADC commit

pm8xxx: add support to pm8821 commit

rn5t618: Add Ricoh RC5T619 PMIC support commit

12.19. Pulse-Width Modulation (PWM)

Add PWM driver for HiSilicon BVT SOCs commit

12.20. Inter-Integrated Circuit (I2C)

bcm2835: Add support for Repeated Start Condition commit, add support for dynamic clock commit, support i2c-dev ioctl I2C_TIMEOUT commit

designware: Implement support for SMBus block read and write commit

imx-lpi2c: add low power i2c bus driver commit

mlxcpld: add master driver for mellanox systems commit

mux: mellanox: add driver commit

12.21. Hardware monitoring (hwmon)

lm87: Use hwmon to create the sysfs groups commit

Add Texas Instruments TMP108 temperature sensor driver. commit

Add tc654 driver commit

12.22. General Purpose I/O (gpio)

altera-a10sr: Add A10 System Resource Chip GPIO support. commit

merrifield: Add support for hardware debouncer commit

pca953x: Add MAX7318 compatible commit

12.23. Leds

tools: Add uledmon program for monitoring userspace LEDs commit

Add user LED driver for NIC78bx device commit

12.24. DMA engines

DW DMAC: enable memory-to-memory transfers support commit

ioatdma: Add Skylake PCI Dev ID commit

mv_xor: Add support for scatter-gather DMA mode commit

qcom_hidma: add MSI support for interrupts commit

st_fdma: Add STMicroelectronics FDMA engine driver support commit

12.25. Clocks

hisilicon: add CRG driver for Hi3516CV300 SoC commit, and for Hi3798CV200 SoC commit

imx: clk-imx6ul: add clk support for imx6ull commit

mediatek: Add MT2701 clock support commit

oxnas: Add OX820 Gate clocks commit

qcom: Add support for RPM Clocks commit, add support for SMD-RPM Clocks commit, add support for msm8994 global clock controller commit

qoriq: add ls1046a support commit

renesas: cpg-mssr: Add R8A7743 support commit, add R8A7745 support commit, add common R-Car Gen2 support commit

renesas: r8a7796: Add CSI2 clocks commit, add VIN clocks commit

rockchip: add clock controller for rk1108 commit

stm32f469: Add QSPI clock commit

stm32f4: Add LSI & LSE clocks commit, add RTC clock commit

sunxi-ng: Add A64 clocks commit

uniphier: add CPU-gear change (cpufreq) support commit, add cpufreq data for LD11, LD20 SoCs commit

Add clockevent support to NPS400 driver commit

import ARC timer driver commit

== Hardware Random Number Generator (hwrng)==

omap: Add device variant for SafeXcel IP-76 found in Armada 8K commit, add support for 128-bit output of data commit

== Cryptography hardware acceleration ==

arm64: integrate OpenSSL implementations of SHA256/SHA512 commit

arm64: crc32 accelerated support commit

arm64: crct10dif acceleration commit

arm: crc32 accelerated support commit

arm: crct10dif accelerated support commit

atmel-aes: add support to the XTS mode commit

caam: add support for iMX6UL commit

chcr: Add AEAD algos. commit

12.26. PCI

Create revision file in sysfs to expose the revision field of the PCI device commit

Add Mellanox device IDs commit

iproc: Add PAXC v2 support commit

iproc: Add support for the next-gen PAXB controller commit

layerscape: Add LS1046a support commit

qcom: Add support for MSM8996 PCIe controller commit

tegra: Add Tegra210 support commit

12.27. Various

NTB: add support for hotplug feature commit

auxdisplay: ht16k33: Driver for LED controller commit

bcma: add Dell Inspiron 3148 commit

bus: Add support for Tegra Generic Memory Interface commit

bus: davinci: add support for da8xx bus master priority control commit

pcmcia: add scr24x_cs chip card interface driver commit

extcon: usb-gpio: Add VBUS detection support commit

firmware: arm_scpi: add support for pre-v1.0 SCPI compatible commit

firmware: tegra: Add BPMP support commit, add IVC library commit

firmware: ti_sci: Add basic support for TI System Control Interface (TI-SCI) protocol commit, add support for Clock control commit, add support for Device control commit, add support for reboot core service commit

fpga-manager: Add Socfpga Arria10 support commit

fpga: add altera freeze bridge support commit

fpga: add fpga bridge framework commit

fpga: fpga-region: device tree control for FPGA commit

iommu/arm-smmu-v3: Add IORT configuration commit

iommu/arm-smmu: Add IORT configuration commit

ipmi_ssif: Remove an unused module parameter commit

mailbox: Add Tegra HSP driver commit

mei: me: add lewisburg device ids commit

mei: show the HBM protocol versions in the device attributes commit

memory: davinci: add support for da8xx DDR2/mDDR controller commit

misc: sram: add Atmel securam support commit

ntb: Adding Skylake Xeon NTB support commit

phy: meson: add USB2 PHY support for Meson8b and GXBB commit

phy: phy-miphy365x: Remove miphy365 driver and dt binding commit

phy: rcar-gen3-usb2: add sysfs for usb role swap commit

phy: rockchip-inno-usb2: support otg-port for rk3399 commit

phy: stih41x-usb: Remove usb phy driver and dt binding commit

power: reset: Add Intel PIIX4 poweroff driver commit

regulator: max77620: add support to configure MPOK commit

remoteproc/ste: Delete unused driver commit

remoteproc: Add a sysfs interface for firmware and state commit

remoteproc: Add support for xo clock commit

remoteproc: Introduce Qualcomm ADSP PIL commit

remoteproc: st_slim_rproc: add a slimcore rproc driver commit

reset: Add Tegra BPMP reset driver commit

reset: mediatek: Add MT2701 reset driver commit

reset: oxnas: Add OX820 support commit

reset: sti: Remove STiH415/6 reset support commit

soc: Add Tegra186 support commit

soc: tegra: pmc: Add I/O pad voltage support commit

soc: fsl: add GUTS driver for QorIQ platforms commit

soc: mediatek: Add MT2701 scpsys driver commit

soc: renesas: Add R-Car RST driver commit, rcar-sysc: add R8A7743 support commit,rcar-sysc: add R8A7745 support commit

tty: amba-pl011: Add earlycon support for SBSA UART commit

13. List of merges

14. Other news sites