Linux 5.3 was released on Sun, 15 Sep 2019.

Summary: This release includes support for AMD Navi GPUs; support for the umwait x86 instructions that let processes wait for short amounts of time without spinning loops; a 'utilization clamping' mechanism that is used to boost interactivity in the power-asymmetric CPUs used in phones; a new pidfd_open(2) system call that completes the work done to let users deal with the PID reuse problem; 16 millions of new IPv4 addresses in the 0.0.0.0/8 range are made available; support for Zhaoxin x86 CPUs; support Intel Speed Select for easier power selection in Xeon servers; and support for the lightweight hypervisor ACRN, built for embedded IoT devices. As always, there are many other new drivers and improvements.

1. Coolest features

1.1. New 'pidfd' functionality to help service managers to deal with PID reuse problems

To solve the issue of PID reuse in Unix systems, Linux 5.1 added the pidfd_send_signal(2), which let processes send signals to "pidfd" handles that are stable even after PID reuse. Linux 5.2 added the CLONE_PIDFD to clone(2), which let users to create PIDs that were usable with pidfd_send_signal(2). But there are many processes creates with fork() or clone() without CLONE_PIDFD , which can cause problems for the Android's low memory killer (LMK) or service managers such as systemd. To complete the functionality needed to deal with the PID reuse issue, this release adds the pidfd_open(2) syscall: It allows a caller to retrieve pollable pidfd's for a process which did not get created using the CLONE_PIDFD clone(2) flag.

Additionally, this release adds polling support for pidfds. This allows process managers to know when a (non-parent) process dies in a race-free way. The notification mechanism used follows the same logic that is currently used when the parent of a task is notified of a child's death. With this patchset it is possible to put pidfds in an {e}poll loop and get reliable notifications for process (i.e. thread-group) exit.

Recommended LWN article: New system calls: pidfd_open() and close_range()

1.2. Utilization clamping support in the task scheduler

This release adds utilization clamping support to the task scheduler. This is a refinement of the energy aware scheduling framework for power-asymmetric systems (like ARM big.LITTLE) added in Linux 5.0. Utilization clamping is a mechanism that allows to enforce a minimum and/or maximum frequency range, depending on which tasks are currently active on a CPU. The main use-cases for utilization clamping are: a) boost tasks which are directly affecting the user experience by running them at least at a minimum "requested" frequency, b) cap low priority tasks not directly affecting the user experience by running them only up to a maximum "allowed" frequency. Per-task clamping attributes can be set through sched_setattr(2). This feature intends to replace the hacks that Android had developed to achieve the same result.

Recommended LWN article: Scheduler utilization clamping

1.3. Support for AMD Navi GPUs

This release adds initial support for the AMD Navi GPUs in the amdgpu driver, these are the new AMD RX5700 GPUs that just recently became available. This released adds support for the core driver, displays (DCN2), GFX and compute (GFX10), System DMA (SDMA 5), Multimedia decode and encode (VCN2) and Power management.

1.4. Support for Zhaoxin x86 CPUs

This release adds support for Zhaoxin x86 Processors. Zhaoxin is a company created in 2013 as a joint venture between VIA Technologies and the Shanghai Municipal Government. The architecture of the ZX family of processors is a continuation of VIA's Centaur Technology x86-64 Isaiah design.

1.5. Support Intel Speed Select for easier power tuning

This release adds support for Intel Speed Select, a feature only supported on specific Xeon servers. It is a power management technology that lets users to configure their servers for throughput and per-core performance settings, allowing the prioritization of performance for certain workloads running on specific cores by sacrificing the performance of other cores.

1.6. Power efficient userspace waiting with the umwait x86 instructions

If an application needs to wait very short times they have to have a spinning loop, which consume power and hurt its thread siblings in a core with hyperthreads. This release enables userspace to use three new instructions that will be added to the upcoming Intel "Tremont" chips: umonitor, umwait and tpause; they let a userspace process wait for short amounts of time without spinning loops, thus letting applications to do those short waits spending less power and not impacting the performance of other hypertreads.

Recommended LWN article: Short waits with umwait

1.7. A few millions of new IPv4 addresses

This release contains a trivial, but impacting change: The 0.0.0.0/8 IPv4 range will be accepted by Linux (despite not being declared as such in standards) as a valid address range, allowing for 16 million new IPv4 addresses.

The IPv4 address space includes hundreds of millions of addresses reserved for obscure, or obsolete reasons, or for "future use". Instead of leaving these IP addresses unused, a IPv4 Cleanup Project has been have started to make them usable, generally. For more details, see this Potential IPv4 Unicast expansions talk.

1.8. Add the IoT ACRN supervisor

This release adds support of the ACRN hypervisor. ACRN is a flexible, lightweight reference hypervisor, built with real-time and safety-criticality in mind, optimized to streamline embedded development through an open source platform. It is built for embedded IoT with small footprint and real-time features. More details can be found in https://projectacrn.org/

2. Core (various)

(FEATURED) To solve the Unix design problem of PID reuse, Linux 5.1 added the pidfd_send_signal(2). Linux 5.2 added the CLONE_PIDFD to clone(2), which let users to create PIDs that were usable with pidfd_send_signal(2). But there are many processes creates with fork() or clone() without CLONE_PIDFD , which can cause problems for the Android's low memory killer (LMK) or service managers such as systemd. This release adds the pidfd_open(2) syscall: It allows a caller to retrieve pollable pidfd's for a process which did not get created using the CLONE_PIDFD clone(2) flag commit, commit, commit

(FEATURED) Adds polling support for pidfds. This allows process managers to know when a (non-parent) process dies in a race-free way. The notification mechanism used follows the same logic that is currently used when the parent of a task is notified of a child's death. With this patchset it is possible to put pidfds in an {e}poll loop and get reliable notifications for process (i.e. thread-group) exit commit, commit

io_uring Add support for recvmsg() commit Add support for sendmsg() commit Handle generic short reads automatically. This can happen fairly easily if parts of the buffered read is cached. Since the application needs to issue another request for the remainder, just do this internally and save kernel/user round trip while providing a nicer more robust API commit Add support for Submission Queue Entry links. This allows Submission Queue Entries to depend on each other, enabling an application to eg queue a read-from-this-file,write-to-that-file pair commit

firmware: Add support for loading compressed firmware files. Currently the files in /lib/firmware counts up to 419MB, while they can be reduced to 130MB by file compression. Currently only XZ format is supported commit

Fixes for major copy_file_range() issues: Now the system call will actually check its range parameters correctly; refuse to copy into files for which the caller does not have sufficient privileges; update mtime and strip setuid like file writes are supposed to do; and allows copying up to the EOF of the source file instead of failing the call like we used to. Also, implement permitting filesystems to copy across devices commit, commit, commit, commit, commit, commit, commit, commit, commit

The clone() syscall has no space for new flags, so a replacement with space for more flags has been added. Recommended LWN article, commit, commit, commit

Task scheduler (FEATURED) Add utilization clamping support. This is a refinement of the energy aware scheduling framework for power-asymmetric systems added in Linux 5.0 with support for boosting of interactive and capping of background workloads: to make sure critical GUI threads get maximum frequency ASAP, and to make sure background processing doesn't unnecessarily move to cpufreq governor to higher frequencies and less energy efficient CPU modes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Add new tracepoints required for energy-aware scheduling testing commit, commit, commit, commit, commit, commit

console: Automatically choose a bigger font for high resolution screens commit

Remove "rootfs" from /proc/filesystems commit

ptrace: add PTRACE_GET_SYSCALL_INFO request to lets ptracer obtain details of the syscall the tracee is blocked in. There are two reasons for a special syscall-related ptrace request. Firstly, with the current ptrace API there are cases when ptracer cannot retrieve necessary information about syscalls. Second, ptracers also have to support a lot of arch-specific code for obtaining information about the tracee. strace 4.26 has been adapted to use this API commit, commit, commit, commit, commit, commit, commit

locking Part 2 of rwsem scalability improvements, which drastically improve the performance of this locking primitive. There is a lot of changes that makes it similar to qrwlock, including owner handoff for more fair locking commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Enable elimination of Tree-RCU softirq processing with kernel boot parameter rcutree.use_softirq . If set to zero, it moves all RCU_SOFTIRQ processing to per-CPU rcuc kthreads commit

Introduce CONFIG_PREEMPT_RT as a clear sign that the RT patchset will be fully integrated into the mainline kernel in the future merge

Adds a kernel parameter, kprobe_event to add and enable new kprobe events at boot time. The syntax is similar to tracing/kprobe_events interface but using ',' ';' instead of ' ' and '

'. e.g. kprobe_event=p,func1,$arg1,$arg2;p,func2,$arg1 will add probes on func1 with the 1st and the 2nd arguments and on func2 with the 1st argument commit, commit

vmcore: add a kernel parameter novmcoredd , which disables device dump commit

Consolidation of the per-architecture vDSO code into a generic library, and conversion of x86 and ARM64 to it (others architectures will follow in the future). Besides the benefits of code reuse, the architectures arm64, compat arm64, arm and mips will gain support for CLOCK_BOOTTIME and CLOCK_TAI commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

kbuild Refactor headers_install and support compile-test of UAPI headers commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Globally enable fall-through warning commit Enable -Wuninitialized commit Raise the minimum required binutils version to 2.21 commit Add -fcf-protection=none when using retpoline flags commit

GDB scripts Add helpers to find and list devices commit Add lx-genpd-summary command commit Add an script to parse the ABI files commit

jump labels: optimize the case in which a static key has more than one entry commit, commit, commit, commit, commit

debugobjects: Try to reduce the level of contention on the global lock used by the debug objects code, which causes a lot of contention commit, commit, commit, commit, commit

binfmt_flat: make support for old format binaries optional commit

Globally enables the -Wimplicit-fallthrough commit

3. File systems

XFS Introduce new BULKSTAT and INUMBERS ioctls. They report features in the v5 file system format, such as inode birth time and the ability to do per-AG BULKSTAT and INUMBERS. The new structures fix the alignment and padding issues that plague the old ioctls. In xfsprogs, some wrapper functions will be introduced that allow new utilities to run on old kernels by emulating the new functionality commit, commit, commit, commit, commit, commit, commit, commit The beginnings of multithreaded inode walks (e.g. quotacheck) commit Implement cgroup aware writeback commit

Btrfs Detect fast implementation of crc32c on all architectures commit

ext4 Enforce the immutable flag on open files commit Allow directory holes commit

Ceph Adds a "ceph.snap.btime" vxattr to snapshot files and directories, when run alongside an MDS that provides InodeStat v3 information as implemented in https://github.com/ceph/ceph/pull/27077 commit, commit, commit, commit, commit Add selinux support commit Allow querying of STATX_BTIME in ceph_getattr commit

CIFS smbdirect no longer experimental commit Add SMB3.1.1 GCM to negotiated crypto algorigthms commit Add new mount option to retrieve mode from special ACE commit Improve performance of POSIX open by querying inode number on open via create context commit Allow query of symlinks stored as reparse points commit Optimize open to not send query file internal info commit

F2FS Add option to limit required GC for checkpoint=disable commit Add ioctl for removing a range from F2FS commit Support swap file w/ DIO commit Allow all the users to pin a file commit Allocate blocks for pinned file commit

NFS Allow NFS client to set up multiple TCP connections to the server using a new 'nconnect=X' mount option. Queue length is used to balance load commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Use sysfs in conjunction with the udev daemon to allow the client to run a configuration script to automatically set the NFSv4 client identifier on first use commit, commit, commit Expose information about NFSv4 state held by knfsd on behalf of NFSv4 clients. This especially important for opens, which are currently invisible to userspace on the server, unlike locks (/proc/locks) and local processes' opens (under /proc/<pid>/). The approach is to add a new directory /proc/fs/nfsd/clients/ with subdirectories for each active NFSv4 client. Each subdirectory has an "info" file with some basic information to help identify the client and a "states" directory that lists the open state held by that client commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

UBIFS Add support for zstd compression commit Support offline signed images commit

OCFS2 Add locking filter debugfs file commit

CODA Add hinting support for partial file caching commit

AFS Add support for the UAE error table commit



4. Memory management

dma-buf: give each buffer a full-fledged inode. By traversing /proc/*/fd and /proc/*/map_files, processes with CAP_ADMIN can get a lot of fine-grained data about how shmem buffers are shared among processes commit, commit, commit

Provide init_on_alloc and init_on_free boot options. These are aimed at preventing possible information leaks and making the control-flow bugs that depend on uninitialized values more deterministic. Enabling either of the options guarantees that the memory returned by the page allocator and SL[AU]B is initialized with zeroes. (SLOB allocator isn't supported at the moment). Enabling init_on_free also guarantees that pages and heap objects are initialized right after they're freed, so it won't be possible to access stale data by using a dangling pointer commit, commit

Improve CONFIG_DEBUG_PAGEALLOC so that it has even smaller overhead when not enabled at boot time, and also when enabled (Patch 3), and extended it to perform the struct page checks more often when enabled. Now it can be configured in when building a distro kernel without extra overhead, and debugging page use after free or double free can be enabled simply by rebooting with debug_pagealloc=on commit, commit, commit

memory control group Introduce a new <debugfs>/memcg_slabinfo file which is somewhat similar to /proc/slabinfo in format, but lists only information about kmem caches that have child memcg kmem caches. Information available in /proc/slabinfo are not repeated in memcg_slabinfo commit The memory controller exposes a memory.events file which shows the number of times events have happened for the whole tree rooted at a given memcg. However there are users which are only interested in the events happening at a specific level of the memcg tree and not in the events in the underlying tree rooted at that memcg, and find memory.events inconvenient. This release introduces a memory.events.local file to the memcg which shows and notify for the events at the memcg level commit On cgroup removal, reparent slab memory to the parent cgroup; lack of this funcionality was preventing dying cgroups from being reclaimed commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

smaps: Report separate components (anon, file, and shmem) for PSS in smaps_rollup proc file. This helps understand and tune the memory manager behavior in consumer devices, particularly mobile devices commit

swap: use rbtree for swap_extent instead of a linked list, which greatly improves swap performance when there are lots of processes accessing the swap device concurrently and swap is very fragmented commit

Sub-section memory hotplug support: Generalise the memory hotplug code so that pmem can use it more completely. Then remove the hacks from the libnvdimm code which were there to work around the memory-hotplug code's constraints commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

KASAN: Add object validation in ksize() to avoid unconditionally unpoisoning the whole shadow memory region associated with an allocation. This can lead to various undetected bugs commit, commit, commit, commit, commit, commit

Add bitops instrumentation to KASAN commit, commit, commit,

slab: add defenses against slab cache confusion (as seen in real-world exploits) and gracefully handles type confusions when trying to look up slab caches from an arbitrary page commit, commit, commit

device-dax: "Hotremove" persistent memory that is used like normal RAM commit

Show number of vmalloc pages in /proc/meminfo commit

vmscan: scan anonymous pages on file refaults. When file refaults are detected and there are many inactive file pages, the system never reclaim anonymous pages, the file pages are droppedaggressively when there are still a lot of cold anonymous pages and system thrashes. This issue impacts the performance of applications with large executable, e.g. chrome commit

tools/memory-model: Add data-race detection commit

Extend tools/vm/slabinfo to improve the fragmentation information by enabling sorting of caches by number of partial slabs commit, commit, commit, commit

5. Block layer

dm crypt: implement eboiv, encrypted byte-offset initialization vector. This IV is used in some BitLocker devices with CBC encryption mode commit

dm kcopyd: Increase default sub-job size to 512KB to improve performance, also, add dm_mod.kcopyd_subjob_size_kb module parameter to allow users to fine tune the sub-job size of kcopyd commit

dm snapshot: Add optional discard features to DM snapshot which allow freeing space from a DM device whose free space was exhausted commit

nbd: add netlink reconfigure resize support commit

rbd: support for object-map and fast-diff commit

sed-opal: add ioctl for setting the shadow MBR done flag which can be useful for unlocking an OPAL disk on boot, and also add ioctl for writing to the shadow MBR commit, commit

6. Tracing, perf and BPF

BPF libbpf: Add BTF-to-C dumping support, allowing to output a subset of BTF types as a compilable C type definitions. This is useful by itself, as raw BTF output is not easy to inspect and comprehend. But it's also a big part of BPF CO-RE (compile once - run everywhere) initiative aimed at allowing to write relocatable BPF programs, that won't require on-the-host kernel headers (and would be able to inspect internal kernel structures, not exposed through kernel headers) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Implements initial version (as discussed at LSF/MM2019 conference) of a new way to specify BPF maps, relying on BTF type information, which allows for easy extensibility, preserving forward and backward compatibility commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Adds support for propagating congestion notifications to TCP from cgroup inet skb egress BPF programs commit, commit, commit, commit, commit, commit Add SO_DETACH_REUSEPORT_BPF to detach BPF prog from reuseport sk commit, commit Add a sock_ops callback that can be selectively enabled on a socket by socket basis and is executed for every RTT. BPF program frequency can be further controlled by calling bpf_ktime_get_ns and bailing out early commit, commit, commit, commit, commit, commit, commit, commit Allow CGROUP_SKB programs to use bpf_skb_cgroup_id() helper commit Eliminate zero extensions for sub-register writes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Export bpf_sock for BPF_PROG_TYPE_CGROUP_SOCK_ADDR prog type commit and for BPF_PROG_TYPE_SOCK_OPS prog type commit allow wide (u64) aligned stores for some fields of bpf_sock_addr commit, commit, commit Adds support for fq's Earliest Departure Time to HBM (Host Bandwidth Manager) commit Introduces verifier support for bounded loops and other improvements commit, commit, commit, commit, commit, commit, commit, commit, commit bpf: getsockopt and setsockopt hooks commit, commit, commit, commit, commit, commit, commit, commit, commit libbpf: add bpf_link and tracing attach APIs commit, commit, commit, commit, commit, commit, commit, commit, commit

perf perf intel-pt: Allow using time ranges with Intel PT, i.e. these features, already present but not optimially usable with Intel PT, should be now commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit perf intel-pt: Add support for samples to contain IPC ratio, collecting cycles information from CYC packets, showing the IPC info periodically, because Intel PT does not update the cycle count on every branch or instruction, the incremental values will often be zero. When there are values, they will be the number of instructions and number of cycles since the last update, and thus represent the average IPC since the last IPC value commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit perf stat: Introduce a new option --per-die to support per-die aggregation. The output of per-core aggregation will be changed from "S0-C0" to "S0-D0-C0". For perf stat record/report, there is no die information when processing the old perf.data. The per-die result will be the same as per-socket commit, commit perf record: Allow mixing --user-regs with --call-graph=dwarf commit perf record: Add support to collect callchains from kernel or user space only commit perf diff: perf diff currently can only diff symbols (functions). This release expands the perf diff capabilities to diff cycles of individual programs blocks as reported by timed LBR commit, commit, commit, commit, commit, commit, commit perf tools: Display eBPF code in intel_pt trace commit, commit, commit, commit, commit, commit, commit perf intel-pt: some improvements for the handling of core-to-bus ratio (CBR), including exporting it commit, commit, commit, commit, commit, commit, commit Add missing --namespaces option to 'perf top', to generate and process namespace events, just like present for 'perf record' commit perf trace: Auto bump rlimit(MEMLOCK) for eBPF maps sake commit perf: Allow non-privileged uprobe for user processes commit

probes: uaccess: Add support user-space access: The current probes are not enough to access user-space variables from kprobe events on some arch, to solve this issue uniformly this release adds a "ustring" type for fetching user-space string from kprobe events, and support user-space dereference syntax for probe event arguments to dereference the data-structure or array in user-space commit, commit, commit, commit, commit, commit

7. Virtualization

Add virtio-iommu driver. The virtio IOMMU is a para-virtualized device, allowing to send IOMMU requests such as map/unmap over virtio transport without emulating page tables. This implementation handles ATTACH, DETACH, MAP and UNMAP requests commit

virtio-pmem: Add virtio pmem driver that provides access to virtio-pmem devices, storage devices that are mapped into the physical address space - similar to NVDIMMs - with a virtio-based flushing interface commit

virtio_net: enable napi_tx by default. NAPI tx mode improves TCP behavior by enabling TCP small queues (TSQ). TSQ reduces queuing ("bufferbloat") and burstiness commit

vhost: accelerate metadata access. Test shows about 24% improvement on TX PPS commit, commit, commit, commit, commit, commit

vhost_net: disable zerocopy by default commit

veth: introduces bulk XDP_TX in veth. Improves XDP_TX performance by approximately 9% commit

vfio: mdev: Send uevents around parent device registration commit

vmw_balloon: Compaction and shrinker support commit, commit, commit, commit

xen: remove tmem driver commit

8. Cryptography

Keys Make keys and keyrings more namespace aware commit, commit, commit, commit, commit, commit, commit, commit, commit Change the permissions model used by keys and keyrings to be based on an ACL commit, commit Add a keyctl to atomically move a link to a key from one keyring to another commit Add a keyctl function that requests a set of capability bits to find out what features are supported commit

drbg: add FIPS 140-2 CTRNG for noise source commit

jitter: update implementation to upstream 2.1.2 commit

xxhash: Implement xxHash support. xxHash is a non-cryptographic hash algorithm. Extremely fast, working at speeds close to RAM limits commit

9. Security

Add support for measuring the boot command line during kexec commit, commit, commit

IMA: support per policy rule template format support, needed for a couple of new/proposed features (eg. kexec boot command line measurement, appended signatures, and VFS provided file hashes) commit

TPM: Add support for TCG2 event logs on EFI systems commit, commit, commit, commit

Add the ability to filter audit records based on network address family commit

10. Networking

(FEATURED) IPv4: Allow 0.0.0.0/8 as a valid address range, allowing for 16 million new IPv4 addresses. This is part of the IPv4 Cleanup Project, started to increase the number of available unicast IPv4 addresses commit

User API and initial implementation for nexthop objects, designed to improve the scalability of routes commit, commit, commit, commit, commit, commit,

Enable nexthop objects with IPv4 and IPv6 routes. This is the last part of a long term optimization work, thanks to it a full internet fib (743,799 routes based on a pull in January 2019) can be pushed to the kernel in 4.3 seconds commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

Multipath hashing on inner L3 commit, commit, commit

Support multipath hashing on inner IP pkts for GRE tunnel commit

IPv4: enable route flushing in network namespaces commit

IPv6: Extend flowlabel_reflect sysctl bitmask to allow conditional reflection of incoming flowlabels in echo replies commit

IPv6: more control on RST flowlabels commit, commit

TCP: add TFO backup key commit, commit, commit, commit, commit, commit

TCP: add optional per socket transmit delay. Adding delays to TCP flows is crucial for studying behavior of TCP stacks commit

Fix listing (IPv4, IPv6) and flushing (IPv6) of cached route exceptions by allowing userspace to clearly request cached routes with the RTM_F_CLONED flag used as a filter (in conjuction with strict checking) and by retrieving and dumping cached routes if requested commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

Unix Sockets: Adds the ability for netlink to report a socket's UID along with the commit

Bluetooth: Add support for LE ping feature commit Add debug setting for changing minimum encryption key size commit

batman-adv: Add routable multicast optimizations commit, commit, commit, commit, commit

Netdevice HW MPLS features are not passed from device driver's netdevice to upper netdevice, specifically VLAN and bonding netdevice which are created by the kernel when needed. This prevents enablement and usage of HW offloads. This release inherit the MPLS features from lower netdevices to allow the HW offloads commit, commit

bonding: add an option to specify a delay between peer notifications commit

devlink: To improve visibility of representor netdevice, its association with PF or VF, physical port, two new devlink port flavours are added as PCI PF and PCI VF ports commit, commit, commit, commit, commit

Decoupling PHYLINK from struct net_device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

dsa: adds support for enabling or disabling the flooding of unknown multicast traffic on the CPU ports commit

Netfilter Add support for hardware offloads commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Add native connection tracking support for the bridge. Before this patchset, only chance for people to do stateful filtering is to use the br_netfilter emulation layer, this is a step forward to deprecate it commit, commit, commit, commit, commit, commit, commit, commit, commit Support for pernet sysctl in br_netfilter commit, commit Add SYNPROXY module support in nf_tables. It preserves the behaviour of the SYNPROXY target of iptables but structured in a different way to propose improvements in the future commit Support to match IPv4 options in nf_tables commit Support to restore expiration time in set element commit nft_ct: allow to add, list and delete expectations via nft objref infrastructure and assigning these expectations via nft rule. This allows manual port triggering when no helper is defined to manage a specific protocol commit Support for bridge vlan protocol matching commit Support for bridge pvid matching commit xt_owner: Add supplementary groups option commit

ipoib: show VF broadcast address commit and correcly show a VF hardware address commit

ipvs Add checksum support for gue encapsulation commit Allow tunneling with gre encapsulation commit

mac80211 Add code to explicitly enable TWT support inside the driver. At least ath11k needs an extra FW call to enable TWT inside the HW commit, commit Add port authorized event support commit Add SAE authentication offload commit, commit

rds: add per rds connection cache statistics commit

RDMA Provides dynamic statistics infrastructure using a netlink interface to configure and retrieve those counters. It allows to users monitor various objects by binding to them counters commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Delete the ib_ucm module commit Use RDMA adaptive moderation library commit, commit, commit Add support for reporting link state for IP-over-Infiniband net devices commit Add RDMA_NLDEV_GET_CHARDEV . It allows userspace to ask the kernel for information on a specific char device implemented under the RDMA subsytem. For instance the kernel can ask for details on the uverbs0 chardev related to the mlx5_0 device commit, commit, commit Implements the iWARP RDMA transport over the Linux TCP/IP network stack. It enables a system with a standard Ethernet adapter to interoperate with a iWARP adapter or with another system running the SIW driver commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

Packet scheduler Introduce tc connection tracking. capabilities in tc sw datapath. It does so via a new tc action, called act_ct, and new tc flower classifier matching on conntrack state, mark and label commit, commit, commit Introduce act_ctinfo, a new tc filter action module. It is designed to restore DSCPs stored in conntrack marks into the ipv4/v6 diffserv field. The feature is intended for use and has been found useful for restoring ingress classifications based on egress classifications across links that bleach or otherwise change DSCP, typically home ISP Internet links. Restoring DSCP on ingress on the WAN link allows qdiscs such as CAKE to shape inbound packets according to policies that are easier to indicate on egress commit Introduces a new traffic control action module that allows the manipulation of the MPLS headers of packets. The code implements functionality including push, pop, and modify commit, commit, commit, commit, commit Add txtime-assist support for taprio commit, commit, commit, commit, commit, commit, commit, commit em_ipt: add support for addrtype commit, commit, commit, commit cls_matchall: allow to delete filter commit

team: add ethtool ops to show total speed commit

isdn: remove isdn4linux commit

11. Architectures

11.1. ARM

New SoCs MediaTek mt8183 (4x Cortex-A73 + 4x Cortex-A53) commit TI J721E (2x Cortex-A72 + 3x Cortex-R5F + 3 DSPs + MMA) commit, commit, commit Amlogic G12B (4x Cortex-A73 + 2x Cortex-A53) (includes support for board Hardkernel ODROID-N2) commit

New Boards / platforms Aspeed BMC support for a number of new server platforms: Facebook YAMP BMC commit, Inspur fp5280g2 BMC machine commit, Microsoft Olympus BMC commit, Swift BMC machine commit, YADRO VESNIN BMC commit, and Lenovo Hr630 BMC commit Kontron SMARC SoM (several i.MX6 versions) commit, commit Novtech's Meerkat96 (i.MX7) commit STMicro Avenger96 board commit Purism Librem 5 devkit (i.MX8MQ) commit Google Cheza (Qualcomm SDM845) commit Qualcomm Dragonboard 845c (Qualcomm SDM845) commit Hugsun X99 TV Box (Rockchip RK3399) commit Khadas Edge/Edge-V/Captain (Rockchip RK3399) commit Add core dtsi file for RK3399Pro SoCs commit renesas: Add HiHope RZ/G2M board support commit, commit Add support for phyBOARD-REGOR-AM335x commit Introduce the NXP LS1021A-TSN board commit meson8b: mxq: improve support for the TRONFY MXQ S805 commit The Netx platform (Netx 100/500) is removed commit

Workaround errata A12 857271 / A17 857272 commit

Workaround for I-Cache line size mismatch between CPU cores commit

KVM: Support chained PMU counters commit, commit, commit, commit, commit

perf uncore PMU event alias support for Hisi hip08 ARM64 platform commit, commit, commit, commit

ARM64 specific changes ptrace: add support for syscall emulation PTRACE_SYSEMU and PTRACE_SYSEMU_SINGLESTEP commit, commit, commit, commit Slight performance improvement by keeping softirqs enabled while touching the FPSIMD/SVE state commit, commit, commit Allow user selection of ARM64_MODULE_PLTS, currently only done via RANDOMIZE_BASE (and an erratum workaround), allowing modules to spill over into the vmalloc area commit Expose a couple of ARMv8.5 features to user (HWCAP): CondM (new XAFLAG and AXFLAG instructions for floating point comparison flags manipulation) and FRINT (rounding floating point numbers to integers) commit, commit KVM: Propagate full Spectre v2 workaround state to KVM guests commit Enable the Arm Statistical Profiling Extension (SPE) on ACPI platforms commit, commit, commit, commit crypto: arm64/aes-ce - implement 5 way interleave for ECB, CBC and CTR commit, commit Make CONFIG_ZONE_DMA32 configurable commit



11.2. x86

(FEATURED) Enable user wait instructions umonitor, umwait and tpause commit, commit, commit, commit, commit

Add /proc/<pid>/arch_status for arch-specific information about the task. In this release, the field AVX512_elapsed_ms is added to show the milliseconds elapsed since the last time AVX-512 usage was recorded. Because AVX-512 components can cause core turbo frequency drop, this information is useful as a heuristic hint for the user space job scheduler to cluster the AVX-512 using tasks together commit, commit, commit

(FEATURED) Intel Speed Select Technology: A powerful new collection of features giving more granular control over CPU performance for optimized performance. With Intel SST, one server can be configured for power and performance for variety of diverse workload requirements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

Enumerate the new AVX-512 BFLOAT16 instructions. AVX-512 BFLOAT16 support 16-bit BFLOAT16 floating-point format (BF16) for deep learning optimization commit

Implement multi-die/package topology support on Intel CPUs and expose the die topology to sysfs knobs. There should be no behavioral impact on cache, NUMA, scheduler, perf and other topologies and overall system performance commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

(FEATURED) Add support for Zhaoxin processors, based on the VIA Centaur technology commit, commit, commit

(FEATURED) Add the support of ACRN guest under x86. ACRN is a flexible, lightweight reference hypervisor, built with real-time and safety-criticality in mind, optimized to streamline embedded development through an open source platform. It is built for embedded IOT with small footprint and real-time features. More details can be found in https://projectacrn.org/. commit, commit

Add restrictions for kexec/kdump jumping between 5-level and 4-level kernel commit, commit, commit

Add a new "xonly" mode for vsyscalls and make it the default. xonly is a bit more secure -- there are exploits that rely on read access to the vsyscall page commit, commit, commit, commit, commit, commit, commit, commit

tools/power turbostat: Add Ice Lake NNPI support commit and Jacobsville support commit

Attempt to “pin” sensitive bits in CR4 and CR0 to avoid them getting disabled commit, commit

Platforms OLPC: Add XO-1.75 EC driver commit OLPC: Add a config menu category for XO 1.75 commit OLPC: Add a regulator for the DCON commit chrome: Add Chrome OS EC ISHTP driver commit chrome: wilco_ec: Add Boot on AC support commit chrome: wilco_ec: Add event handling commit chrome: wilco_ec: Add telemetry char device interface commit chrome: wilco_ec: Add version sysfs entries commit chrome: cros_ec_debugfs: Add debugfs entry to retrieve EC uptime commit asus-nb-wmi: Add microphone mute key code commit asus-wmi: Switch fan boost mode commit hp_accel: Add support for HP ProBook 450 G0 commit wmi: add Xiaomi WMI key driver commit

perf Perf uncore support for Snow Ridge server commit, commit, commit, commit, commit, commit Add new IMC PCI IDs for Kaby Lake, Amber Lake and Whiskey Lake CPUs commit Add Ice Lake desktop CPUIDs commit, commit Add Intel Ice Lake NNPI uncore support commit perf report: Support s390 diag event display on x86 commit

intel_th: Add Ice Lake NNPI support commit

Virtualization Add "nopv" parameter to disable the PV optimizations forcing the guest to run as generic guest with no PV drivers. Due to the limitation of some PV guests(XEN PV, XEN PVH and jailhouse), 'nopv' is ignored for XEN PV, jailhouse and XEN PVH if booting via Xen-PVH boot entry. For compatibility reason, "xen_nopv" is keeped and mapped to "nopv" commit, commit, commit KVM: VMX optimizations - 12% improvement on vmexit speed commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit KVM: Emulate MSR_IA32_MISC_ENABLE MWAIT bit commit KVM: When sending a call-function IPI-many to vCPUs, yield if any of the IPI target vCPUs was preempted. 17% performace increase of ebizzy benchmark can be observed in an over-subscribe environment commit, commit, commit, KVM: svm: add nrips module parameter commit KVM: Add support to expose Intel V2 Extended Topology Enumeration Leaf for some new systems with multiple software-visible die within each package commit KVM: x86: PMU Event Filter commit KVM: x86: expose AVX512_BF16 feature to guest commit



11.3. PowerPC

Add lzma commit and lzo support for uImage commit

Enable HAVE_ARCH_HUGE_VMAP commit

Adds a new procfs file /proc/powerpc/vcpudispatch_stats for providing statistics around how the LPAR processors are dispatched by the POWER Hypervisor, in a shared LPAR environment commit, commit, commit, commit, commit, commit, commit, commit, commit

11.4. S390

virtio: support protected virtualization commit, commit, commit, commit, commit, commit, commit, commit,

dasd: Add discard support for ESE volumes commit

dasd: Add dynamic formatting support for ESE volumes commit

dasd: Add new ioctl to release space commit

sclp: remove call home support commit

perf vendor events s390: Add JSON files for machine type 8561 commit

11.5. ARC

Page fault handling refactor/tidy-up commit, commit, commit, commit, commit, commit, commit, commit

Entry code refactor/optimize to use double load/stores commit, commit, commit

Support for Edge Triggered IRQs on ARC IDU intc commit, commit, commit

11.6. C-SKY

perf annotate: Add C-SKY support commit

11.7. PA-RISC

Add dynamic ftrace commit

11.8. RISC-V

Introduce huge page support commit

Add an Image header that boot loader can parse commit

11.9. UML

Support time travel mode commit

12. Drivers

12.1. Graphics

Add new driver for ST-Ericsson MCDE commit

Add driver for the Ingenic JZ47xx SoCs commit

Add HDR Metadata Parsing and handling in DRM layer and amdgpu and i915 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

amdgpu (FEATURED) Initial Navi 10 support. It adds core driver support, displays (DCN2), GFX and compute (GFX10), System DMA (SDMA 5), Multimedia decode and encode (VCN2) and Power management merge Add pmu counters commit Add MEM_LOAD to amdgpu_pm_info debugfs file commit Add connector debugfs for "output_bpc" commit Color space ycbcr709 support commit Enable ppfeaturemask module parameter support on Vega20 commit Expose SMU7 asics realtime memory utilization commit Expose Vega12 current gpu activity commit Expose Vega12 current power commit Expose Vega12 realtime memory utilization commit Expose Vega20 realtime memory utilization commit Expose current hotspot and memory temperatures V2 commit Support SMU metrics table on Vega12 commit Support hotspot/memory critical limit values commit Support hwmon temperature channel labels V2 commit Support ppfeatures sysfs interface on sw smu routine commit Support sw smu hotspot and memory temperature retrieval commit Support temperature emergency max values commit Add PCIe replay count sysfs file commit Add Unique Identifier sysfs file unique_id v2 commit Add module parameter for specifying default ABM level commit Remove module parameter vram_page_split commit Add new PSP cmd GFX_CMD_ID_PROG_REG commit, commit Report firmware versions with sysfs commit Add badpages sysfs interafce commit Add new sysfs interface for memory realtime utilization commit amdkfd Add VegaM support commit Add procfs-style information for KFD processes commit CP queue priority controls commit, commit Expose HDP registers to user space commit

intel Add i2c symlink under hdmi connector commit Ice Lake multi-segmented gamma support commit Mule Creek Canyon PCH support for EHL commit Move i915.alpha_support parameter to i915.force_probe commit Support for DP YCbCr4:2:0 outputs commit, commit, commit, commit, commit, commit New GuC firmwares (for SKL, BXT, KBL, GLK, ICL) with updated ABI interface commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Add support for asynchronous display power disabling commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Allow userspace to clone contexts on creation commit Enable render context support for Ironlake (gen5) and gen4 (Broadwater to Cantiga). This allows userspace to assume that the GPU retains their state from one batch to the next, minimising the amount of state it needs to reload and manually save across batches commit, commit Engine discovery query commit Make default value for i915.mmio_debug a compile time option commit debugfs: HDCP 2.2 capability read commit

komeda Add format support for Y0L2, P010, YUV420_8/10BIT commit Add scaler support commit, commit, commit, commit, commit, commit Add layer split support commit, commit, commit Add rotation support commit Adds slave pipeline support commit Add writeback support commit Added AFBC support for komeda driver commit Add SMMU support commit Adds z-order support commit Enable color-encoding (YUV format) support commit

msm Add A540 GPU support commit msm8998 Snapdragon 835 support commit, commit mdp5 and dpu interconnect support commit, commit

tda998x Add support for pixel repeated modes commit Add vendor-specific infoframe support commit

armada Add missing interlaced support for overlay frame commit Add support for setting gamma commit

rockchip RX3328 support commit

panfrost Expose perf counters via hidden ioctls commit, commit

rcar-du R8A774A1 Soc Support commit LVDS dual-link mode support commit Add support for missing 16-bit RGB1555 format commit, 16-bit RGB4444 formats commit, and 32-bit RGB formats commit

omapdrm DSI command mode display support commit, commit, commit, commit

stm Support runtime power management commit dsi: add regulator support commit

v3d Add support for compute shader dispatch commit Dump V3D error debug registers in debugfs, and one at reset commit

sii902x Implement HDMI audio support commit

meson Add zpos immutable property to planes commit Add support for XBGR8888 & ABGR8888 formats commit

vc4 Allow for more boot-time configuration commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

atmel-hlcdc Add sam9x60 LCD controller commit

imx Add Rec.709 and limited range encoding support commit, commit, commit, commit, commit Enable IDMAC watermark feature commit

nouveau Recognise TU116 chipset commit

vmwgfx Emulated coherent graphics memory commit, commit, commit, commit, commit, commit, commit, commit, commit

panel Add OSD101T2587-53TS driver commit Add driver for Samsung S6E63M0 panel commit Add support for Armadeus ST0700 Adapt commit Add support for EDT ETM0430G0DH6 commit simple: Add Evervision VGG804821 panel support commit simple: Add FriendlyELEC HD702E 800x1280 LCD panel commit simple: Add KOE tx14d24vm1bpa display support (320x240) commit simple: Add TFC S9700RTWV43TR-01B 800x480 panel support commit simple: Add support for EDT ET035012DM6 commit simple: Add support for OSD101T2045-53TS commit simple: Add support for VXT VL050-8048NT-C01 panel commit

fbdev mxsfb: Remove driver commit omap2: remove rfbi commit



12.2. Storage

ahci_sunxi: Increased SATA/AHCI DMA TX/RX FIFOs commit

lpfc Add events for discovery controller rescan commit, commit, commit

nvme: enable to inject errors into admin commands commit, commit

scsi fdomain: Resurrect driver commit, commit, commit, commit megaraid_sas Add module parameter for FW Async event logging commit Add support for High IOPS queues commit Add support for MPI toolbox commands commit Add support for Non-secure Aero PCI IDs commit Dump system interface regs from sysfs commit Enable coalescing for high IOPS queues commit Export RAID map id through sysfs commit Export RAID map through debugfs commit Introduce various Aero performance modes commit Offload Aero RAID5/6 division calculations to driver commit Set affinity for high IOPS reply queues commit Use high IOPS queues based on IO workload commit mpt3sas: Introduce perf_mode module parameter commit osst: kill obsolete driver commit pm80xx: Event log size through sysfs commit storvsc: Add ability to change scsi queue depth commit ufshdc-pci: Add Intel PCI IDs for EHL commit



12.3. Drivers in the Staging area

isdn: move capi drivers to staging commit

allegro: add Allegro DVT video IP core driver commit, commit

meson: add v4l2 m2m video decoder driver commit

rockchip/vpu: Add support for MPEG-2 decoding on RK3288 commit, commit and on RK3399 commit

tegra-vde: Add IOMMU support commit

erofs: erofs decompression inplace commit, commit, commit, commit, commit, commit, commit, commit

erofs: support statx commit

kpc2000: export more device attributes via sysfs commit

mt7621-dts: add support for second network interface commit

wilc1000: add passive scan support commit

wilc1000: added support to dynamically add/remove interfaces commit

12.4. Networking

Bluetooth Add new 13d3:3491 QCA_ROME device commit and 13d3:3501 QCA_ROME device commit btbcm: Add entry for BCM4359C0 UART bluetooth commit btusb: Add protocol support for MediaTek MT7663U USB devices commit and for MediaTek MT7668U USB devices commit hci_mrvl: Add serdev support commit btrtl: Add support for RTL8723DU commit btrtl: Additional Realtek 8822CE Bluetooth devices commit

Infiniband hns: add a mix multihop addressing for support the 32K specification of send wqe from UM commit, commit mlx5: Enable RDMA applications that use the DEVX interface to subscribe and read device asynchronous events commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit mlx5: vport metadata matching commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit mlx5: TLS TX HW offload support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit mlx5: provides the support for mlx5 Firmware devlink health and sw reset commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit mlx5: add the support for devlink fw query commit, commit mlx5: add support for GENEVE tunnel encap/decap flows offload: encapsulating layer 2 Ethernet frames within layer 4 UDP datagrams commit, commit, commit, commit, commit mlx5: introduce VHCA tunnel mechanism to DEVX interface needed for Bluefield SOC commit, commit mlx5: Support querying max VFs from device commit mlx5e: improvements to the AF_XDP kernel infrastructure and AF_XDP support in mlx5e commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit mlxsw: expose flash update status to user commit, commit, commit, commit, commit, commit, commit mlxsw: adds support for physical hardware clock for Spectrum-1 ASIC only commit, commit, commit, commit, commit, commit, commit, commit, commit mlxsw: Thermal and hwmon extensions commit, commit, commit mlxsw: Hardware monitoring enhancements commit, commit, commit, commit, commit, commit, commit, commit mlxsw: PTP timestamping support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit mlxsw: Add the ability to enable or disable the PTP shaper on the port in two scenarios: 1. When the user wants to enable/disable the hardware time stamping, 2. When the port is brought up or down (including port speed change) commit, commit, commit, commit, commit, commit, commit, commit mlxsw: Implement flower ingress device matching offload commit, commit, commit, commit, commit, commit, commit, commit mlxsw: Improve IPv6 route insertion rate commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

aquantia: implement vlan offloads commit, commit, commit, commit, commit, commit, commit, commit

ath10k Add WMI diag fw logging support for WCN3990 commit Added support to reset HTT stats in debugfs commit Extended the HTT stats support to retrieve Mu-MIMO related stats commit Add PN replay protection for high latency devices commit Add support for controlling tx power to a station commit Add support for firmware crash recovery on SDIO chip commit Enable QCA6174 hw3.2 SDIO hardware commit Enabling tx stats support over pktlog commit

axienet: Add optional support for Ethernet core interrupt commit

bnxt_en: Add XDP_REDIRECT support commit, commit, commit, commit

cxgb4/libcxgb/cxgb4i/cxgbit: enable eDRAM page pods for iSCSI commit

dpaa2-eth: Add support for MQPRIO offloading commit, commit, commit

Distributed Switch Architecture microchip: Support optional 125MHz SYNCLKO output commit mv88e6xxx: support for mv88e6250 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit sja1105: FDB switchdev support for the second generation of switches (P/Q/R/S), Management route support for SJA1105 P/Q/R/S, and Logic to hide private DSA VLANs from the 'bridge fdb' commands commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit sja1105: PTP support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

e1000e: PCIm function state support commit

ena Support for dynamic queue size changes commit, commit, commit, commit, commit, commit, commit Extend the driver to support new features and enhance performance commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

enetc Support hardware timestamping commit, commit, commit, commit Enable TC offloading with mqprio commit

Add ag71xx driver commit

ethermediatek Add MT7621 TRGMII mode support commit, commit Add MT7629 ethernet support commit Allow non TRGMII mode with MT7621 DDR2 devices commit

etherti: cpsw: add XDP support commit

gve: Google gve network driver for Compute Engine Virtual NIC commit, commit, commit, commit

hinic Add LRO support commit Add fw version query commit Add rss support commit, commit Add vlan offload support commit Implement the statistical interface of ethtool commit

hisilicon: Add support for HI13X1 to hip04_eth commit

hns3 Add Asym Pause support to fix autoneg problem commit Add aRFS support for PF commit Add support for dump firmware statistics by debugfs commit

hns: add support for vlan TSO commit

i40e: Add macvlan support on i40e commit

ice Add handler for ethtool selftest commit Add support for Forward Error Correction (FEC) commit Implement toggling ethtool rx-vlan-filter commit Recognize higher speeds commit

igb: Add RR2DCDELAY to ethtool registers dump commit

igc: Add flow control support commit

isdn: gigaset: remove i4l support commit, remove hisax driver commit

iwlwifi Add support for SAR South Korea limitation commit Add new cards for 22000 commit, commit Add new cards for 9000 and 20000 series commit Add support for hr1 RF ID commit pcie: add support for qu c-step devices commit dbg_ini: add consecutive trigger firing support commit dbg_ini: implement dump info collection commit dbg_ini: support debug info TLV commit mvm: add a debugfs entry to set a fixed size AMSDU for all TX packets commit mvm: remove multiple debugfs entries commit Add 3 new IDs for the 9000 series commit

ixgbe: implement support for SDP/PPS output on X550 hardware commit

ll_temac: Enable multicast support commit

macb Add support for SiFive FU540-C000 commit Use GRO commit

mscc Add hw offload of TC flower on MSCC Ocelot commit, commit ocelot: Implement port policers via tc command commit

mt76 mt7603: add debugfs knob to enable/disable edcca commit mt7615: add support for per-chain signal strength reporting commit mt7615: enable support for mesh commit

mvpp2 Support for steering to RSS contexts commit, commit, commit, commit, commit Add support for more ethtool counters commit cls: Add steering based on vlan Id and priority commit

socionext: netsec: add XDP support commit

nfp Add TLS RX offload commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Add basic TLS TX offload commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit nfp: extend flower capabilities for GRE tunnel offload commit, commit, commit, commit, commit

phy T1 support commit, commit Add more 1000BaseX support detection commit Add phy_standalone sysfs entry commit Allow Clause 45 access via mii ioctl commit aquantia: add USXGMII support and warn if XGMII mode is set commit tja11xx: Add TJA11xx PHY driver commit

qed*: Improve performance on 100G link for offload protocols commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

qed: Add support for Timestamping the unicast PTP packets commit

r8169: remove support for RTL_GIGA_MAC_VER_01 commit

rt2800: initial watchdog implementation commit

rtw88 Add fast xmit support commit Add support for random mac scan commit

stmmac Convert to phylink commit, commit, commit Introduces selftests support in stmmac driver and add 9 basic sanity checks and MAC loopback support for all cores within the driver commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit Enable dwmac4 jumbo frame more than 8KiB commit Implement RX Coalesce Frames setting commit Introducing support for Page Pool commit dwmac-mediatek: enable Ethernet power domain commit socfpga: add RMII phy mode commit sun8i: add support for Allwinner H6 EMAC commit

qmi_wwan: add D-Link DWM-222 A2 device ID commit

qmi_wwan: Add the BroadMobi BM818 card commit

wil6210 Add support for setting RBUFCAP configuration commit Add support for multiple sections in brd file commit Add support for reading multiple RFs temperature via debugfs commit Enhancements for descriptor and status ring debugfs commit

Add detection of 1000BaseX link mode support commit

12.5. Audio

hda: Add Elkhart Lake PCI ID commit

ASoC Add support for Conexant CX2072X CODEC commit Intel: Add machine driver for CX2072X on BYT/CHT platforms commit Intel: Skylake: Add Cometlake PCI IDs commit SOF: Add Comet Lake PCI IDs commit SOF: debug: add new debugfs entries for IPC flood test commit SOF: soundwire: add initial soundwire support commit cs47l35: Add codec driver for Cirrus Logic CS47L35 commit cs47l85: Add codec driver for Cirrus Logic CS47L85 commit cs47l90: Add codec driver for Cirrus Logic CS47L90 commit madera: Add common support for Cirrus Logic Madera codecs commit meson: add g12a tohdmitx control commit meson: axg-card: add basic codec-to-codec link support commit msm8916-wcd-digital: Add sidetone support commit rk3399_gru_sound: Support 32, 44.1 and 88.2 kHz sample rates commit rt1011: Add RT1011 amplifier driver commit rt1308: Add RT1308 amplifier driver commit stm32: dfsdm: add 16 bits audio record support commit sun4i-spdif: Add support for H6 SoC commit ti: davinci-mcasp: Support for auxclk-fs-ratio commit



12.6. Tablets, touch screens, keyboards, mouses

HID logitech-dj: Add usb-id for the 27MHz MX3000 receiver commit uclogic: Add support for Ugee Rainbow CV720 commit wacom: Add 2nd gen Intuos Pro Small support commit wacom: add new MobileStudio Pro support commit logitech-dj: add the Powerplay receiver commit intel-ish-hid: ipc: add EHL device id commit Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT commit

Add Apple SPI keyboard and trackpad driver commit

iforce: add the Saitek R440 Force Wheel commit

12.7. TV tuners, webcams, video capturers

coda: add decoder MPEG-2 profile and level controls commit and for MPEG-4 profile and level controls commit

Add analog mode support for Medion MD95700 commit, commit, commit, commit, commit, commit, commit, commit

cedrus: Add H264 decoding support commit, commit, commit, commit

cx231xx-cards: Add Hauppauge 955Q variant commit

fdp1: Support M3N and E3 platforms commit

Add Hauppauge HVR1955/1975 devices commit, commit, commit, commit

mt9m111: add regulator support commit

st-mipid02: Add support of RGB565, YUV and JPEG to MIPID02 bridge commit, commit, commit, add support of V4L2_CID_LINK_FREQ commit

sun6i: Support A83T variant commit

v4l2-ctrl: add MPEG-2 profile and level controls commit

venus: Add support for H265 controls commit

vicodec: add V4L2_CID_MIN_BUFFERS_FOR_OUTPUT commit

12.8. Universal Serial Bus (USB)

Add usbfs ioctl, USBDEVFS_CONNINFO_EX , to retrieve the connection parameters commit

chipidea: imx: add imx7ulp support commit

dwc3: pci: Add Support for Intel Elkhart Lake Devices commit and for TigerLake Devices commit

dwc3: qcom: Add support for booting with ACPI commit

phy: phy-mxs-usb: add imx7ulp support commit

renesas_usbhs: Add support for RZ/A2 commit

serial: ftdi_sio: add ID for isodebug v1 commit

serial: option: add support for GosunCn ME3630 RNDIS mode commit

serial: option: Add support for ZTE MF871A commit

serial: option: add D-Link DWM-222 device ID commit

serial: option: Add Motorola modem UARTs commit

serial: option: add the BroadMobi BM818 card commit

12.9. Serial Peripheral Interface (SPI)

Add spi driver for Socionext SynQuacer platform commit

bcm2835: add driver stats to debugfs commit

bcm2835: make the polling duration limits configurable commit

pxa2xx: Add support for Intel Elkhart Lake commit

Add M53Menlo CPLD compatible commit

12.10. Watchdog

watchdog: allow setting deadline for opening /dev/watchdogN. This allow one to set a maximum time for which the kernel will feed the watchdog, thus ensuring that either userspace has come up, or the board gets reset. This allows fallback logic in the bootloader to attempt some recovery (for example, if an automatic update is in progress, it could roll back to the previous version) commit, commit, commit

hpwdt: Add module parameter kdumptimeout commit

imx_sc: Add pretimeout support commit

12.11. Serial

8250: Add support for higher baud rates to Pericom chips commit

fsl_lpuart: add imx8qxp support commit

mpsc: Remove obsolete MPSC driver commit

mediatek: support Rx in-band wakeup commit

tty: serial: netx: Delete driver commit

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

Update to pm-graph 5.3 commit and 5.4 commit

cpufreq: Add imx-cpufreq-dt driver commit

cpufreq: add driver for Raspberry Pi commit

cpufreq: imx-cpufreq-dt: Add i.MX8MN support commit

powercap/intel_rapl: add support for ICX commit

powercap/intel_rapl: add support for ICX-D commit

powercap/rapl: Add Ice Lake NNPI support to RAPL driver commit

12.13. Real Time Clock (RTC)

bd70528: Initial support for ROHM bd70528 RTC commit

imx-sc: add rtc alarm support commit

pcf2123: add alarm support commit and remove sysfs register view commit

rk808: Add RK809 and RK817 support commit

tegra: Turn into regular driver commit

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

power reset: nvmem-reboot-mode: use NVMEM as reboot mode write interface commit supply: Add HWMON compatibility layer commit supply: Initial support for ROHM BD70528 PMIC charger block commit supply: add input power and voltage limit properties commit power_supply: wilco_ec: Add charging config driver commit

regulator Add support for the stm32-booster commit arizona-ldo1: Add support for Cirrus Logic Madera codecs commit arizona-micsupp: Add support for Cirrus Logic Madera codecs commit lm363x: Add support for LM36274 commit lp87565: Add 4-phase lp87561 regulator support commit max77620: Support Maxim 77663 commit qcom_spmi: Add support for PM8005 commit and add PMS405 SPMI regulator commit rk808: Add RK809 and RK817 support commit s2mps11: Adjust supported buck voltages to real values commit slg51000: add slg51000 regulator driver commit

reset: qcom-pon: Add support for gen2 pon commit

12.15. Pin Controllers (pinctrl)

Add drive strength support for BM1880 SoC commit

Add pinconf support for BM1880 SoC commit

freescale: Add i.MX8MN pinctrl driver support commit

meson: add output support in pinconf commit and add support of drive-strength-microamp commit

mvebu: Add support for MV98DX1135 commit

qcom: Add SM8150 pinctrl driver commit

tegra: Add Tegra194 pinmux driver commit

12.16. Multi Media Card (MMC)

sdhci-pci: Add support for Intel EHL commit

sdhci-sprd: Add optional gate clock support commit and add pin control support for voltage switch commit

sdhci_am654: Add Support for 4 bit IP on J721E commit and 8 bit IP on J721E commit

12.17. Memory Technology Devices (MTD)

Add Initial Hyperbus support commit, commit, commit, commit, commit

onenand: Add support for 8Gb datasize onenand commit

rawnand: Add Macronix NAND read retry support commit

rawnand: brcmnand: Add support for v7.3 controller commit

spi-nor: Add Micron MT25QL02 support commit

spi-nor: Add Winbond w25q16jv support commit

spi-nor: intel-spi: Add support for Intel Elkhart Lake SPI serial flash commit

spi-nor: stm32: remove the driver as it was replaced by spi-stm32-qspi.c commit

spinand: Add initial support for Paragon PN26G0xA commit

spinand: Add support for GigaDevice GD5F1GQ4UFxxG commit

spinand: Add support for two-byte device IDs commit

12.18. Industrial I/O (iio)

Add driver for Infineon DPS310 commit

accel: add missing sensor for some 2-in-1 based ultrabooks commit

adc: ad7124: Add buffered input support commit

adc: mediatek: mt6577-auxadc, add mt6765 support commit

adc: stm32-dfsdm: add fast mode support commit

amplifiers: ad8366: Add support for ADL5240 VGA commit and for the ADA4961 DGA commit

cros_ec: Add lid angle driver commit

cros_ec: add 'id' sysfs entry commit

dps310: Add pressure sensing capability commit

frequency: adf4371: Add support for ADF4371 PLL commit, ADF4372 PLL commit and for output stage mute commit

light: stk3310: Add support for stk3335 commit

12.19. Multi Function Devices (MFD)

ti-lmu: Add LM36274 support to the ti-lmu commit

ti-lmu: Remove support for LM3697 commit

cros_ec_debugfs: Expose resume result via debugfs commit

lp87565: Add support for 4-phase LP87561 combination commit

bd70528: Support ROHM bd70528 PMIC core commit

rk808: Add RK817 and RK809 support commit

intel-lpss: Add Intel Elkhart Lake PCH PCI IDs commit

madera: Add Madera core support for CS47L15 commit and CS47L92 commit

12.20. Pulse-Width Modulation (PWM)

Add support referencing PWMs from ACPI commit

sifive: Add a driver for SiFive SoC PWM commit

12.21. Inter-Integrated Circuit (I2C + I3C)

regmap: add i3c bus support commit

Add support for IPMB driver commit

i801: Add Block Write-Block Read Process Call support commit

i801: Add support for Intel Elkhart Lake commit and Intel Tiger Lake commit

mt7621: Add MediaTek MT7621/7628/7688 I2C driver commit

ocores: add support for i2c device on Sifive FU540-c000 SoC commit

12.22. Hardware monitoring (hwmon)

pmbus: Add Infineon PXE1610 VR driver commit

pmbus: Add Infineon IRPS5401 driver commit

12.23. General Purpose I/O (gpio)

Initial support for ROHM bd70528 GPIO block commit

mb86s7x: Enable ACPI support commit

pca953x: Add support for the TI TCA9539 commit

12.24. Leds

TI LMU: Add common code for TI LMU devices commit

lm36274: Introduce the TI LM36274 LED driver commit

lm3697: Introduce the lm3697 driver commit

spi-byte: add single byte SPI LED driver commit

12.25. DMA engines

Add Synopsys eDMA IP driver commit, commit, commit, commit, commit, commit

mediatek: Add MediaTek UART APDMA support commit

sudmac: remove unused driver commit

sun6i: Add support for H6 DMA commit

12.26. Hardware Random Number Generator (hwrng)

iproc-rng200: Add support for 7211 commit

12.27. Cryptography hardware acceleration

atmel-i2c: add support for SHA204A random number generator commit

inside-secure: add support for HMAC updates commit

inside-secure: implement IV retrieval commit

12.28. PCI

MSI: Support allocating virtual MSI interrupts commit

switchtec: Add module parameter to request more interrupts commit

Enable NVIDIA HDA controllers commit

qcom: Add QCS404 PCIe controller support commit

tegra: Add PCIe Gen2 link speed support commit

tegra: Enable Relaxed Ordering only for Tegra20 & Tegra30 commit

12.29. Clock

Add Si5341/Si5340 driver commit

Add clk_parent entry in debugfs commit

RK808: Add RK809 and RK817 support commit

add BCM63XX gated clock controller driver commit

at91: sckc: add support for SAM9X60 commit

bcm283x: add driver interfacing with Raspberry Pi's firmware commit

bd718x7: Support ROHM BD70528 clk block commit

clk-si544: Implement small frequency change support commit

kirkwood: Add support for MV98DX1135 commit

mediatek: add audsys clock driver for MT8516 commit

meson-g12a: add temperature sensor clocks commit

meson: g12a: Add support for G12B CPUB clocks commit

qoriq: add support for lx2160a commit

sysctr: Add nxp system counter timer driver support commit

12.30. PHY ("physical layer" framework)

qcom: Add Qualcomm PCIe2 PHY driver commit

Add driver for mixel mipi dphy found on NXP's i.MX8 SoCs commit

12.31. EDAC (Error Detection And Correction)

altera: Add Stratix10 OCRAM & SDMMC EDAC Support commit

i10nm: Add Intel additional Ice-Lake support commit

ie31200: Add Intel Coffee Lake CPU support commit

sifive: Add EDAC platform driver for SiFive SoCs commit

12.32. Non-Transparent Bridge (NTB)

Support using MSI interrupts in ntb_transport commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

12.33. Various

PCI: Add Synopsys endpoint EDDA Device ID commit

extcon: Add fsa9480 extcon driver commit

firmware: ti_sci: Add resource management APIs for ringacc, psi-l and udma commit

firmware: ti_sci: Add support for processor control commit

habanalabs: Add busy engines bitmask to HW idle IOCTL commit

habanalabs: Add debugfs node for engines status commit

hwspinlock/omap: Add support for TI K3 SoCs commit

iommu/vt-d: Add debugfs support to show scalable mode DMAR table internals commit

iommu: Add recoverable fault reporting commit

iommu: Introduce IOMMU_RESV_DIRECT_RELAXABLE reserved memory regions commit

irqchip/al-fic: Introduce Amazon's Annapurna Labs Fabric Interrupt Controller Driver commit

irqchip/exiu: Implement ACPI support commit

irqchip/gic-v2m: Add support for Amazon Graviton variant of GICv3+GICv2m commit

irqchip: Add Renesas RZ/A1 Interrupt Controller driver commit

mailbox: omap: Add support for TI K3 SoCs commit

mei: me: add mule creek canyon (EHL) device ids commit

memory: jz4780_nemc: Add support for the JZ4740 commit

memory: jz4780_nemc: Add support for the JZ4740 commit

misc: fsa9480: Delete this driver commit

misc: xilinx-sdfec: add core driver commit

misc: xilinx_sdfec: Add CCF support commit

nvmem: imx-ocotp: Add i.MX8MM support commit

nvmem: imx: add i.MX8 nvmem driver commit

pinctrl: generic: add new 'drive-strength-microamp' property support commit

remoteproc: stm32: add an ST stm32_rproc driver commit

soc: amlogic: canvas: add support for Meson8, Meson8b and Meson8m2 commit

soc: fsl: add DPAA2 console support commit

soc: imx: Add SCU SoC info driver support commit

soc: qcom: Add AOSS QMP driver commit

spi: pxa2xx: Add support for Intel Tiger Lake commit

13. List of merges

14. Other news sites