29544
Comment:
|
1055
Linux 5.13 changelog (very late)
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
Comprehensible changelog of the linux kernel, inspired by [http://wiki.dragonflybsd.org/index.php/DragonFly_Status Dragonfly's status]. Other places to get news about the linux kernel are [http://www.kernel-traffic.org Kernel traffic], [http://lwn.net/Kernel/ LWN kernel status], [http://lwn.net/Articles/driver-porting/ LWN driver porting guide] and [http://lwn.net/Articles/2.6-kernel-api/ LWN list of API changes in 2.6] - many articles here link to LWN and much of the 2.6.x changelog was restored from them (you may be be interested in subscribing so Jonathan can keep up the good work ;) ). Before adding things here look at the RULES section at the end of the page!! | #pragma keywords Linux, Kernel, Operating System, Linus Torvalds, Open Source, drivers, filesystems, network, memory management, scheduler, preemption, locking #pragma description Summary of the changes and new features merged in the Linux Kernel during the 2.6.x and 3.x development Changes done in each Linux kernel release. Other places to get news about the Linux kernel are [[http://lwn.net/Kernel/|LWN kernel status]] or the Linux Kernel mailing list (there is a web interface in [[http://www.lkml.org|www.lkml.org]] or [[https://lore.kernel.org/lkml/|lore.kernel.org/lkml]]). The lore.kernel.org/lkml/ archive is also available via NTTP if you prefer to use a newsreader: use `nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel` for that. List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules! |
Line 3: | Line 5: |
This page tracks the current stable and development releases. Changes made to older 2.6.x releases can be found in the Linux26Changes page | You can discuss the latest Linux kernel changes on the [[http://forum.kernelnewbies.org/list.php?4|New Linux Kernel Features Forum]]. |
Line 5: | Line 7: |
===== 2.6.15 ===== * '''STILL NOT RELEASED!''' * VFS changes: The "shared subtree" patches have been merged. Consider the following situation: a process wants to clone its own namespace, but still wants to access the CD that got mounted recently. Shared subtree semantics provide the necessary mechanism to accomplish the above. It provides the necessary building blocks for features like per-user-namespace and versioned filesystem. [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/sharedsubtree.txt Documentation], original [http://marc.theaimsgroup.com/?l=linux-fsdevel&m=110565591630267&w=2 Alexander Viro's RFC]. Patches: * [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=07b20889e3052c7e77d6a6a54e7e83446eb1ba8 beginning of the shared-subtree proper]: A private mount does not forward or receive propagation. This patch provides user the ability to convert any mount to private * [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=03e06e68ff76294e53ffa898cb844d2a997b043e introduce shared mounts]: This creates shared mounts. A shared mount when bind-mounted to some mountpoint, propagates mount/umount events to each other. All the shared mounts that propagate events to each other belong to the same peer-group. * [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a58b0eb8e64b78d9315a5491955e78b1391d42e5 introduce slave mounts]: A slave mount always has a master mount from which it receives mount/umount events. Unlike shared mount the event propagation does not flow from the slave mount to the master. * [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5afe00221389998a25d611dc7941c06580c29eb6 handling of shared mounts]: This makes bind, rbind, move, clone namespace and umount operations aware of the semantics of slave mount * [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b90fa9ae8f51f098ee480bbaabd6867992e9fc58 shared mount handling: bind and rbind]: Implement handling of MS_BIND in presense of shared mounts * [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9676f0c6389b62bd6b24d77d4b3abdbcfa32d0f2 unbindable mounts]: An unbindable mount does not forward or receive propagation. Bind semantics: It is invalid to bind mount an unbindable mount. Move semantics: It is invalid to move an unbindable mount under shared mount. Clone-namespace semantics: If a mount is unbindable in the parent namespace, the corresponding cloned mount in the child namespace becomes unbindable too. Note: there is subtle difference, unbindable mounts cannot be bind mounted but can be cloned during clone-namespace. * [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2144440327fa01b2f3f65e355120a78211685702 shared mount handling: move]: Implement handling of mount --move in presense of shared mounts * [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a05964f3917c7c55368c229d7985f8e7c9977e97 shared mount handling: umount]: An unmount of a mount creates a umount event on the parent. If the parent is a shared mount, it gets propagated to all mounts in the peer group * Page table scalability improvements: Currently, a single page table lock is used to protect all operations on an address space's page tables. This has been detected to cause scalability problems in largue multiprocessor systems ej: 512-cpu SGI altix, specially in heavily multithreaded workloads (threads of a same process share the same address space and hence the same page table lock). With this patch, a separate spinlock per page-table page is used, to guard the page table entries in that page. Splitting the lock is not quite for free: another cacheline access. So for now enable it by config for machines with 4 or more CPUs. While this (and many other scalability changes) may look high-end oriented now, remember that cheap multi-core desktops CPUs are there. [http://lwn.net/Articles/157151/ (LWN article)] [http://marc.theaimsgroup.com/?l=linux-kernel&m=112603203327134&w=2 (benchmark vs SGI's "reduced locking by using atomic page table operations" non-merged approach)] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c21e2f2441dc5fbb957b030333f5a3f2d02dea7 (commit)] * .text page fault SMP scalability optimization: This fixes a case where large systems wouldn't scale well while faulting in the .text. The reason was a useless overwrite of the same pte from all cpu [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1a44e149084d772a1bcf4cdbdde8a013a8a1cfde (commit)] * Swaptoken tuning: It turns out that the original swap token implementation, by Song Jiang, only enforced the swap token while the task holding the token is handling a page fault, this patch approximates that, like the page fault code does. It has the effect of automatically, and gradually, disabling the enforcement of the swap token when there is little or no paging going on, and "turning up" the intensity of the swap token code the more the task holding the token is thrashing [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fcdae29aa7a5c79f245110f6680afdc1858d3626 (commit)] * Demand faulting for huge pages [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c887265977213985091476be40ab11dfdcb4caf (commit)] * Add generic memory add/remove and supporting functions for memory hotplug [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3947be1969a9ce455ec30f60ef51efb10e4323d1 (commit)] * "Cooperating processes" for the anticipatory I/O scheduler: Introduce the notion of cooperating processes (those that submit requests close to one another), and use these statistics to make better choices about whether or not to do anticipatory waiting [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f5b3db0017f8415301f3427b30263186e8478c3f (commit)] * Generic dispatch queue: Implements generic dispatch queue which can replace all dispatch queues implemented by each iosched [http://marc.theaimsgroup.com/?l=linux-kernel&m=112238633622498&w=2 (mailing list)] [http://lwn.net/Articles/157208/ (LWN article)] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8922e16cf6269e668123acb1ae1fdc62b7a3a4fc (commit)] * Reimplement elevator online switching code [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cb98fc8bb9c141009e2bda99c0db39d387e142cf (commit)] * IPv4/IPv6: UFO (UDP Fragmentation Offload) Scatter-gather approach: UFO is a feature wherein the Linux kernel network stack will offload the IP fragmentation functionality of large UDP datagram to hardware. This will reduce the overhead of stack in fragmenting the large UDP datagram to MTU sized packets [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e89e9cf539a28df7d0eb1d0a545368e9920b34ac (commit)] * PPP MPPE encryption module, it implements the Microsoft Point-to-Point Encryption method as a PPP compressor/decompressor. This is necessary for Linux clients and servers to interoperate with Microsoft Point-to-Point Tunneling Protocol (PPTP) servers (either Microsoft PPTP servers or the poptop project) which use MPPE to encrypt data when creating a VPN [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b3f9b92a6ec1a9a5e4b4b36e484f2f62cc73277c (commit)] * IPV6: RFC3484 compliant source address selection [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=072047e4de3800905e09d0f8ef0e1cc4e91a601e (commit)] * make /proc/mounts pollable [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5addc5dd8836aa061f6efc4a0d9ba6323726297a (commit)] * ppc64: support 64k pages. Adds a new CONFIG_PPC_64K_PAGES which, when enabled, changes the kernel base page size to 64K. The resulting kernel still boots on any hardware. On current machines with 4K pages support only, the kernel will maintain 16 "subpages" for each 64K page transparently [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3c726f8dee6f55e96475574e9f645327e461884c (commit)] * ppc64: CPU freq support using 970FX powertune facility for iMac G5 and SMU based single CPU desktop [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4350147a816b9c5b40fa59e4fa23f17490630b79 (commit)] * ppc64: Adds the ability to the SMU driver to recover missing calibration partitions from the SMU chip itself. It also adds some dynamic mecanism to /proc/device-tree so that new properties are visible to userland [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=183d020258dfd08178a05c6793dae10409db8abb (commit)] * ppc64: This adds a new thermal control framework for Powermac, along with the implementation for Powermac8,1, Powermac8,2 (iMac G5 rev 1 and 2), and Powermac9,1 (latest single CPU desktop) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=75722d3992f57375c0cc029dcceb2334a45ceff1 (commit)] * Add the infrastructure to support hotplug CPU on ARM [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a054a811597a17ffbe92bc4db04a4dc2f1b1ea55 (commit)], support for local timers [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=37ee16ae93a3e4ae7dd51beb81d249f5f12a55c2 (commit)] and optimized SHA1 implementation [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c09f98271f685af349d3f0199360f1c0e85550e0 (commit)] * x86 hot plug CPU support of physical add of new processors (hotplug add/remove of already existing CPUs was already supported) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f40a72a7e819789f66910c8cd60aab005cdb413 (commit)] * Support for shared HPET interrupts: The driver previously acknowledged interrupts for both edge and level interrupts, but didn't actually allow a shared interrupt in the latter case [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0d29086177aaa1e7d14e6ebb7fc067b3ca6d5c11 (commit)] * Add LSM hooks for key management facilities (see link) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=29db9190634067c5a328ee5fcc2890251b836b4b (commit)] * RCU torture-testing kernel module: This adds a tristate CONFIG_RCU_TORTURE_TEST, which enables an intense torture test of the RCU infratructure. This is needed for testing due to the continued changes to the RCU infrastructure [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a241ec65aeac3d69a08a7b153cccbdb7ea35063f (commit)] * Driver Core: add the ability for class_device structures to be nested: Allows struct class_device to be nested, so that another struct class_device can be the parent of a new one, instead of only having the struct class be the parent [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=51d172d5f3a193e4b8f76179b2e55d7a36b94117 (commit)] * Add vmalloc_node(size, node) (allocate necessary memory on the specified node) and get_vm_area_node(size, flags, node) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=930fc45a49ddebe7555cc5c837d82b9c27e65ff4 (commit)] * Process Events Connector: It reports fork, exec, id change, and exit events for all processes to userspace. Applications that may find these events useful include accounting/auditing (e.g. ELSA), system activity monitoring (e.g. top), security, and resource management (e.g. CKRM) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f46080c41d5f3f7c00b4e169ba4b0b2865258bf (commit)] * Add sysfs support for ide tape [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d5dee80ad69439ad8dccf8fa4d7fed0068aec9cf (commit)] * Add "revision" support for having multiple revisions for each match/target in arp_tables and ip6_tables [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6b7d31fcdda5938e5d3f1f8b0922cc25aa200dfc (commit)] * Support for the Artemis and ATIK astronomical based USB CCD cameras [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c9c7746dd333c12f482af2f1e63ea7eafc7cd529 (commit)] * USB: delete the bluetty driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6c82600d4058346ea6fd801bc21d7abcc1350d8 (commit)] * Nokia 7600/6230(i)/6170/66x0 DKU2 USB driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=50260b69bbec383058875de26dbde28b1a6f8d00 (commit)] * Nvidia Geforce 7800 series (7800, 7800 GTX, 7800 GO and 7800 GTX GO cards) framebuffer support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7015faa7df829876a0f931cd18aa6d7c24a1b581 (commit)], Mystique AGP support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=63921fbfbd87ec745e65d2e9aecdfdc9a4ce73f2 (commit)], add partial support for GMA900 within the i915GM chipset [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3a59026ba111d85b1a86af0f1c4e5a8ef1242d82 (commit)] * MPC8xx PCMCIA support (PowerPC 8xx series PCMCIA controller) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=de957c89b7dadb3147e885d7b6eb9db73d0eea57 (commit)] * Adds a RapidIO subsystem to the kernel. RIO is a switched fabric interconnect used in higher-end embedded applications [http://www.rapidio.org http://www.rapidio.org] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=394b701ce4fbfde919a9bcbf84cb4820a7c6d47c (commit)] * Support for SA1100 Jornada flash device support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=183e1a349466a1b90430a58f3efad25a3e555cb2 (commit)] * MIPS updates: resurrect Cobalt support for 2.6 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c4ed38a0c6e2e5c4906296758f816ee71373792f (commit)], Base Au1200 support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e3ad1c23ba72214669b364c6fa304531dc768c3e (commit)], support for BCM1480 family of chips [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f137e463b50aadba91bd116f99c59ccb9c15a12f (commit)] * Add support for the Sharp SL-6000x (Tosa) series of PDAs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8459c159f7de832eaf888398d2abf466c388dfa6 (commit)] and support MMC, IRDA and UDC, also add a platform device for the keyboard driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a93876c16275376c4f9f1630ce24036d329fa7a0 (commit)] and add support for sharp zaurus SL-5500 touchscreen [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1753298947afe5eb56da755bc057f1868f345ec1 (commit)] and its PCMCIA slot [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=77bb86a1b9f8b872d8efc33c4f4359f809220252 (commit)] * Superhyway support for SH4-202 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d5cb9783536a41df9f9cba5b0a1d78047ed787f7 (commit)] * Add support for the AMCC PowerPC 440SPe SoC, including PCI Express in root port mode [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b0f7b8bc57ee90138a7c429951457027a90c326f (commit)] * SHM_NORESERVE flags for shmget(): Similar to MAP_NORESERVE for shared memory segments. This is mainly to avoid abuse of OVERCOMMIT_ALWAYS and this flag is ignored for OVERCOMMIT_NEVER [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bf8f972d3a1daf969cf44f64cc36d53bfd76441f (commit)] ===== 2.6.14 ===== * Released October 27, 2005 [http://kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.14 changelog] * Numa-aware slab allocator: It creates slabs on multiple nodes and manages slabs in such a way that locality of allocations is optimized. Each node has its own list of partial, free and full slabs. All object allocations for a node occur from node specific slab lists [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e498be7dafd72fd68848c1eef1575aa7c5d658df (commit - benchmarks)] * Lazy page table copies in fork() for VMAs without anonymous pages (the ones with anonymous pages are still copied): Defer copying of ptes until fault time when it is possible to reconstruct the pte from backing store, speeding up fork() greatly specially for processes using lots of shared memory [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d992895ba2b27cf5adf1ba0ad6d27662adc54c5e (commit)] * Add /proc/$PID/smaps: This file will shows how much memory is resident in each mapping. Useful for people who want to perform memory consumption analysis [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e070ad49f31155d872d8e96cab2142840993e3c0 (commit)] * Add /proc/$PID/numa_maps: This file will show on which nodes pages reside [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6e21c8f145f5052c1c2fb4a4b41bee01c848159b (commit)] * Lock-free file descriptor look-up [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ab2af1f5005069321c5d130f09cce577b03f43ef (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b835996f628eadb55c5fb222ba46fe9395bf73c7 (commit)] * Four-level page table support for the ppc64 architecture: extends the usable user address range to 44 bits (16T). [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e28f7faf05159f1cfd564596f5e6178edba6bd49 (commit)] * Support hotplug cpu on 32-bit SMP powermacs: When a cpu is off-lined, it is put into sleep mode with interrupts disabled. It can be on-lined again by asserting its soft-reset pin, which is connected to a GPIO pin [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=31139971b3dc9fbb2e8a8572fb81e6e8470f363a (commit)] * Add TASK_NONINTERACTIVE task state bit to the cpu scheduler: It can be used by blocking points to mark the task's wait as "non-interactive". This does not mean the task will be considered a CPU-hog - the wait will simply not have an effect on the waiting task's priority - positive or negative alike [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d79fc0fc6645b0cf5cd980da76942ca6d6300fa4 (commit)] * [http://www.ietf.org/rfc/rfc2637.txt PPTP] (Point-to-Point Tunneling Protocol) conntrack support and NAT helper added to allow proper management of multiple NAT'd PPTP connections. PPTP, a Microsoft-designed protocol, is used in many places to provide VPN access due to the native support in Microsoft Windows. [http://en.wikipedia.org/wiki/PPTP Wikipedia article] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=926b50f92a30090da2c1a8675de954c2d9b09732 (commit)] * DCCP: "Datagram Congestion Control Protocol". Datagram protocol (like UDP), but with a congestion control mechanism. [http://lwn.net/Articles/149756/ (LWN article)] Currently a [http://www.icir.org/kohler/dcp/draft-ietf-dccp-spec-11.txt RFC draft] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c657876b63cb1d8a2ec06f8fc6c37bb8412e66c (commit)] * Implement SKB fast cloning: Protocols that make extensive use of SKB cloning, for example TCP, eat at least 2 allocations per packet sent as a result. To cut the kmalloc() count in half, we implement a pre-allocation scheme wherein we allocate 2 sk_buff objects in advance, then use a simple reference count to free up the memory at the correct time [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d179cd12928443f3ec29cfbc3567439644bd0afc (commit)] * Add netlink connector: userspace <-> kernel space easy to use communication module which implements easy to use bidirectional message bus using netlink as its backend [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7672d0b54411371e0b6a831c1cb2f0ce615de6dc (commit)], also a "async connector mode" [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=acd042bb2de50d4e6fb969281a00cc8b8b71e46d (commit)] * IPV6: Support several new sockopt / ancillary data in Advanced API (RFC3542): IPV6_RECVPKTINFO, IPV6_PKTINFO, IPV6_RECVHOPOPTS, IPV6_HOPOPTS, IPV6_RECVDSTOPTS, IPV6_DSTOPTS, IPV6_RTHDRDSTOPTS, IPV6_RECVRTHDR, IPV6_RTHDR, IPV6_RECVHOPOPTS, IPV6_HOPOPTS, IPV6_{RECV,}TCLASS [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=333fad5364d6b457c8d837f7d05802d2aaf8a961 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=41a1f8ea4fbfcdc4232f023732584aae2220de31 (commit)] * [http://fuse.sourceforge.net/ FUSE]: Allows to implement a fully functional filesystem in a userspace program [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d8a5ba45457e4a22aa39c939121efd7bb6c76672 (commit)] * [http://v9fs.sourceforge.net/ 9P support]: Linux port of the [http://www.cs.bell-labs.com/sys/doc/9.html Plan9]'s [http://plan9.bell-labs.com/sys/man/5/INDEX.html 9P protocol] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=93fa58cb831337fdf5d36b3b913441100a484dae (commit)] * [http://relayfs.sourceforge.net/ RelayFS]: Relayfs is just a bunch of per-cpu kernel buffers that can be efficiently written into from kernel code. These buffers are represented as files which can be mmap'ed and directly read from in user space. The purpose of this setup is to provide the simplest possible mechanism allowing potentially large amounts of data to be logged in the kernel and 'relayed' to user space." [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e82894f84dbba130ab46c97748c03647f8204f92 (commit)] * securityfs filesystem [http://lwn.net/Articles/153366/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b67dbf9d4c1987c370fd18fdc4cf9d8aaea604c2 (commit)] * Suspend support for CIFS filesystem [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ede1327ea4ca8019ec6df24b3e837def091c26b8 (commit)] * Enable atomic inode security labeling on ext3 and ext2: it enables atomic security labeling of newly created inodes by altering the fs code to invoke a new LSM hook to obtain the security attribute to apply to a newly created inode and to set up the incore inode security state during the inode creation transaction. This parallels the existing processing for setting ACLs on newly created inodes [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5e41ff9e0650f327a6c819841fa412da95d57319 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=10f47e6a1b8b276323b652053945c87a63a5812d (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ac50960afa31877493add6d941d8402fa879c452 (commit)] * SELinux memory improvements: Reduce access rules memory usage by 20x [http://www.livejournal.com/users/james_morris/6197.html James Morris explanation] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=782ebb992ec20b5afdd5786ee8c2f1b58b631f24 (commit)] * NTFS: Support journals ($Logfile) which have been modified by chkdsk. This means users can boot into Windows after we marked the volume dirty. The Windows boot will run chkdsk and then reboot. The user can then immediately boot into Linux rather than having to do a full Windows boot first before rebooting into Linux [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e7a1033b946f4f2622f2b338ab107f559aad542c (commit)] * SAS transport class [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c7ebbbce366c02e5657ac6b6059933fe0353b175 (commit)] * Remove ACPI S4 BIOS support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b01d8684e9e5b04270970c97df856d47668267e3 (commit)] * [http://ipw2100.sourceforge.net/ ipw2100] and [http://ipw2200.sourceforge.net/ ipw2200] wireless drivers (intel centrino) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2c86c275015c880e810830304a3a4ab94803b38b (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=43f66a6ce8da299344cf1bc2ac2311889cc88555 (commit)] * [http://hostap.epitest.fi/ HostAP]: Adds support to work as "Wireless Access Point" [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ff1d2767d5a43c85f944e86a45284b721f66196c (commit)] * [http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Extensions.html Wireless extensions] API update to version 19 [http://marc.theaimsgroup.com/?l=linux-netdev&m=112568599006559&w=2 (mail)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6582c164f2b3b6e58d1f13c1c031b19ee691eb14 (commit)] * ISA DMA suspend for x86/x86-64 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=795312e763569ce4df67e7a0ca726a9901358fa2 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7dc24db1757f950f8bd21b7191106d4bf5134be7 (commit)] * PCI: Support PCI PM CAP version 3 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3fe9d19f9e86a55679f5f2b38ec0a43a1a510cee (commit)] * Keys: Add possessor permissions to keys. It adds extra permission grants to keys for the possessor of a key in addition to the owner, group and other permissions bits. This makes SUID binaries easier to support without going as far as labelling keys and key targets using the LSM facilities [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=664cceb0093b755739e56572b836a99104ee8a75 (commit)] * Driver for the IBM Hard Drive Active Protection System (HDAPS), an accelerometer found in most modern Thinkpads [http://lwn.net/Articles/155440/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=860e1d6b46bd4cbc67d8d065f0f682143513382f (commit)] * Add Apple USB touchpad driver for the USB touchpad which can be found on post-February 2005 Apple Powerbooks [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f7214ff4e8248513ec626212b2c1a3ca0b2a0888 (commit)] * Spinlock consolidation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fb1c8f93d869b34cacb8b8932e2b83d96a19d720 (commit)] * Largefile support for accounting: The accounting subsystem in the kernel can not correctly handle files larger than 2GB. This fixes it by adding the O_LARGEFILE flag [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6c9c0b52b8c6b68b05bb06efd7079a8fc5e9ba60 (commit)] * Detect soft lockups, new debug feature (CONFIG_DETECT_SOFTLOCKUP). When enabled then per-CPU watchdog threads are started, which try to run once per second. If they get delayed for more than 10 seconds then a callback from the timer interrupt detects this condition and prints out a warning message and a stack dump [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8446f1d391f3d27e6bf9c43d4cbcdac0ca720417 (commit)] * Add kzalloc(): new function, it allows to obtain pre-zeroed memory [http://lwn.net/Articles/147014/ (LWN article)] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dd3927105b6f65afb7dac17682172cdfb86d3f00 (commit)] * Add schedule_timeout_{,un}interruptible() [http://lwn.net/Articles/149019 (LWN article)] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=64ed93a268bc18fa6f72f61420d0e0022c5e38d1 (commit)] TODO: * Import relevant data from [http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14-rc5/2.6.14-rc5-mm1/broken-out/post-halloween-doc.patch davej's post halloween document] or remaining stuff from [http://kernelnewbies.org/status/latest.html Kernelnewbies status] * Find links to corresponding changesets (!!) * Keep track of what gets changed |
<<Include(Linux_5.13)>> |
Changes done in each Linux kernel release. Other places to get news about the Linux kernel are LWN kernel status or the Linux Kernel mailing list (there is a web interface in www.lkml.org or lore.kernel.org/lkml). The lore.kernel.org/lkml/ archive is also available via NTTP if you prefer to use a newsreader: use nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel for that. List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules!
You can discuss the latest Linux kernel changes on the New Linux Kernel Features Forum.
Linux 5.13 has been released on Sun, 27 June 2021
Summary: This release includes the Landlock security module, which aims to make easier to sandbox applications; support for the Clang Control Flow Integrity, which aims to abort the program upon detecting certain forms of undefined behavior; support for randomising the stack address offset in each syscall; support for concurrent TBL flushing; preparatory Apple M1 support; support for incoming AMD and Intel graphics chips; BPF support for calling kernel functions directly; a virtio sound driver for improved sound experience on virtualized guests; io_uring support for multi shot mode and a misc cgroup for miscellaneous resources. As always, there are many other features, new drivers, improvements and fixes.
Contents
-
Prominent features
- Landlock security module
- Support for Clang Control Flow Integrity
- Support for randomising the stack address offset in each syscall
- Support for concurrent TBL flushing
- Preparatory Apple M1 support
- Support for incoming AMD and Intel graphics chips
- BPF support for calling kernel functions directly
- A virtio sound driver for improved sound experience on virtualized guests
- io_uring support for multi shot mode
- Add misc cgroup
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing, perf and BPF
- Virtualization
- Security
- Networking
- Architectures
-
Drivers
- Graphics
- Power Management
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Watchdog
- Serial
- CPU Frequency scaling
- Voltage, current regulators, power capping, power supply
- Real Time Clock (RTC)
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Multi Function Devices (MFD)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C + I3C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Cryptography hardware acceleration
- PCI
- Remote Processors
- Clock
- PHY ("physical layer" framework)
- Various
- List of Pull Requests
- Other news sites
1. Prominent features
1.1. Landlock security module
Landlock is a new Linux security module that allows to sandbox applications. The goal of Landlock is to enable to restrict ambient rights (e.g. global filesystem access) for a set of processes. Because Landlock is a stackable LSM, it makes possible to create safe security sandboxes as new security layers in addition to the existing system-wide access-controls. This kind of sandbox is expected to help mitigate the security impact of bugs or unexpected/malicious behaviors in user-space applications. Landlock empowers any process, including unprivileged ones, to securely restrict themselves.
Landlock is inspired by seccomp-bpf but instead of filtering syscalls and their raw arguments, a Landlock rule can restrict the use of kernel objects like file hierarchies, according to the kernel semantic. Landlock also takes inspiration from other OS sandbox mechanisms: XNU Sandbox, FreeBSD Capsicum or OpenBSD Pledge/Unveil.
In this current form, Landlock misses some access-control features. This enables to minimize this patch series and ease review. This series still addresses multiple use cases, especially with the combined use of seccomp-bpf: applications with built-in sandboxing, init systems, security sandbox tools and security-oriented APIs
Recommended LWN article: Sandboxing with the Landlock security module
1.2. Support for Clang Control Flow Integrity
This release builds on last cycle's LTO work, and allows the arm64 kernels to be built with Clang's Control Flow Integrity feature, which is designed to abort the program upon detecting certain forms of undefined behavior that can potentially allow attackers to subvert the program’s control flow. This feature has happily lived in Android kernels for almost 3 years. CFI support for x86 is still under development, but is pretty close.
Recommended LWN article: Control-flow integrity for the kernel
1.3. Support for randomising the stack address offset in each syscall
This release supports randomized stack offsets per syscall to make stack-based attacks harder which rely on the deterministic stack layout. The feature is based on the original idea of PaX's RANDSTACK feature, but uses a significantly different implementation.
The feature is guarded with a static branch which avoids the overhead when disabled. As of this release this is supported for X86 and ARM64.
1.4. Support for concurrent TBL flushing
Currently, local and remote TLB flushes are not performed concurrently, which introduces unnecessary overhead - each INVLPG can take 100s of cycles. This patch-set allows TLB flushes to be run concurrently: first request the remote CPUs to initiate the flush, then run it locally, and finally wait for the remote CPUs to finish their work. In testing this improved sysbench performance measurably by a couple of percentage points, especially if TLB-heavy security mitigations are active.
1.5. Preparatory Apple M1 support
This kernel includes initial support for the Apple M1 platform. The Apple M1 is the processor used it all current generation Apple Macintosh computers. Support for this platform so far is rudimentary, but it boots and can use framebuffer and serial console over a special USB cable.
Support for several essential on-chip devices (USB, PCIe, IOMMU, NVMe) is work in progress but was not ready in time for this release.
A very detailed description of what works is in the commit messages and on the AsahiLinux wiki
1.6. Support for incoming AMD and Intel graphics chips
This release includes initial support for future Intel and AMD chips, such as Intel Alderlake S or AMD Adebaran support
1.7. BPF support for calling kernel functions directly
This release allows bpf programs calling kernel functions (initially to reuse TCP congestion control implementations)
Recommended LWN article: Calling kernel functions from BPF
1.8. A virtio sound driver for improved sound experience on virtualized guests
This release implements a driver part of the virtio sound device specification.
The driver supports PCM playback and capture substreams, jack and channel map controls. A message-based transport is used to write/read PCM frames to/from a device.
As a device part was used OpenSynergy proprietary implementation.
1.9. io_uring support for multi shot mode
Support for multi-shot poll. This allows arming a poll request for a given event mask, and then have it trigger multiple times. The default behavior for io_uring POLL_ADD has been one-shot, where one SQE issued will result in one CQE filled (when the event triggers) and termination of the poll request after that. With multi-shot, one POLL_ADD will generate a CQE every time the event triggers.
1.10. Add misc cgroup
This implements generic support for misc resources which can be controlled by simply counting and limiting the number of resource instances - ie there's X number of these on the system and this cgroup subtree can have upto Y of those.
The first user is the address space IDs used for virtual machine memory encryption and expected future usages are similar - niche hardware features with concrete resource limits and simple usage models
2. Core (various)
(FEATURED) cgroup: New misc cgroup controller commit, commit, commit
(FEATURED) Optionally randomize kernel stack offset each syscall commit, commit, commit, commit, commit, commit
(FEATURED) Concurrent TLB flushing commit, commit, commit, commit, commit, commit, commit, commit
softirq: Real Time awareness commit, commit, commit, commit, commit, commit
- fanotify
- io_uring
(FEATURED) 1) Support for multi-shot poll. This allows arming a poll request for a given event mask, and then have it trigger multiple times, 2) support for POLL_ADD updates. This allows updating the event mask (only) of an existing poll request, both one-shot and multi-shot commit, commit, commit, commit, commit, commit, commit, commit
1) support dynamic managment for registered buffers, including update. Add new IORING_REGISTER* for rsrc register and rsrc update, which are just dispatch files/buffers to right callbacks 3) add rsrc tagging, with tag=0 ignoring CQE posting commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Add support for Clang's Control-Flow Integrity (CFI) checking commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
binder: Enable App Freezing Capability commit, commit, commit
psi: allow unprivileged users with CAP_SYS_RESOURCE to write psi files commit
- Locking
- Task scheduler
Add 'scheduler latency debugging': warn after long periods of pending need_resched. This is an opt-in feature that requires the enabling of the LATENCY_WARN scheduler feature, or the use of the resched_latency_warn_ms=xx boot parameter commit
fair: misfit task load-balance tweaks commit, commit, commit
fair: Bring back select_idle_smt(), but differently commit
Allow caching one sigqueue object per task (reduces latency) [https://git.kernel.org/linus/69995ebbb9d3717306a165db88a1292b63f77a37|commit]], commit
Move SCHED_DEBUG sysctl to debugfs commit, commit, commit, commit, commit, commit, commit, commit, commit
Network fs helper library & fscache kiocb API 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
- kbuild
- kconfig
modules: add CONFIG_MODPROBE_PATH to allow configuring the "/sbin/modprobe" path commit
Adds a special-case when waiting on a pid (via waitpid, waitid, wait4, etc) to avoid doing an O(n) scan of children and tracees, and instead do an O(1) lookup. This can make a substantial performance improvement for applications with a thread that has many children or tracees and frequently needs to wait on them. Tools that use ptrace to intercept syscalls for a large number of processes are likely to fall into this category commit
kbuild: add CONFIG_VMLINUX_MAP expert option. It can be quite useful to have ld emit a link map file, in order to debug or verify that special sections end up where they are supposed to commit
kunit: fail tests on UBSAN errors commit
3. File systems
- BTRFS
zoned file system: automatic background reclaim of zones that have 75%+ of unusable space, the threshold is tunable in sysfs commit, commit, commit
Improve send readahead run time of full send by 10% and for incremental by 25% commit, commit, commit
Make reflinks respect O_SYNC, O_DSYNC and S_SYNC flags commit
Support read-write for subpage metadata (more preparation for subpage block size) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- EXT4
- CEPH
- CIFS
Export supported mount options via new mount_params /proc file commit
Add rasize mount parameter to improve readahead performance commit
Add FALLOC_FL_INSERT_RANGE support commit
Add support for FALLOC_FL_COLLAPSE_RANGE commit
Add shutdown support commit
smb 3.1.1: allow dumping keys for multiuser mounts commit
smb 3.1.1: allow dumping GCM256 keys to improve debugging of encrypted shares commit
- EXFAT
- EROFS
- F2FS
- FUSE
- GFS2
Add new sysfs file for gfs2 status commit
- NFS
Attribute revalidation updates to optimise the way we use the GETATTR call 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
Honor timeo and retrans option when mounting NFSv3 commit
- ORANGEFS
Implement readahead commit
- OVERLAYFS
- QUOTA
- UBIFS
Default to zstd compression commit
4. Memory management
Allocate memmap from hotadded memory (per device) commit, commit, commit, commit, commit, commit, commit, commit
Support huge vmalloc mappings. Recommended LWN article A pair of memory-allocation improvements in 5.13. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce a bulk order-0 page allocator. Recommended LWN article A pair of memory-allocation improvements in 5.13. commit, commit, commit, commit, commit, commit, commit, commit, commit
Debugfs for file-backed THP split commit
Allowing dump migrate-failed pages for debugging purposes commit
vmalloc: use rb_tree instead of list for vread() lookups commit
Allow shmem mappings with MREMAP_DONTUNMAP. Currently MREMAP_DONTUNMAP only accepts private anonymous mappings. The primary use case is to support MREMAP_DONTUNMAP on mappings which may have been created from a memfd commit, commit, commit
NUMA balancing: reduce TLB flush via delaying mapping on hint page fault commit
Converts memcg stats tracking to the streamlined rstat infrastructure provided by the cgroup core code commit, commit, commit, commit, commit, commit, commit, commit
memcg: enable memcg oom-kill for __GFP_NOFAIL commit
gup: page unpining improvements. unpin_user_pages() for hugetlbfs and THP improves ~3x (through gup_test) and RDMA MR dereg improves ~4.5x with the new API commit, commit, commit
slab: provide "slab_merge" option to enable enable merging of slabs with similar size when the kernel is built without CONFIG_SLAB_MERGE_DEFAULT commit
Prohibit pinning pages in ZONE_MOVABLE commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Make shrinker's nr_deferred memcg aware commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
cma: support sysfs commit
vmstat: add cma statistics commit
userfaultfd: add minor fault handling commit, commit, commit, commit, commit, commit
Make alloc_contig_range handle Hugetlb pages commit, commit, commit, commit, commit, commit, commit
kfence: zero guard page after out-of-bounds access commit
dma-fence: allow signaling drivers to set fence timestamp commit
Remove /dev/kmem for good commit
5. Block layer
multiqueue: set default elevator as deadline in case of hctx shared tagset commit
Add sysfs entry for virt boundary mask commit
bio: limit bio max size commit
rnbd-clt: Support polling mode for IO latency optimization commit
rnbd-clt: Generate kobject_uevent when the rnbd device state changes commit
null_blk: add option for managing virtual boundary commit
md/raid10: Improve handling raid10 discard request commit, commit
dm integrity: add the "reset_recalculate" feature flag that will restart recalculating from the beginning of the device commit
6. Tracing, perf and BPF
- BPF
(FEATURED) Support calling kernel function commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Tracing and lsm programs re-attach commit, commit, commit, commit, commit, commit
PROG_TEST_RUN support for sk_lookup programs commit, commit, commit, commit, commit
Add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_ENCAP_L2_ETH commit
Add getter and setter for SO_REUSEPORT through bpf_{g, s}etsockopt commit
Add kconfig knob for disabling unpriv bpf by default commit
Add kernel/modules BTF presence checks to bpftool feature command commit
Improve BPF syscall command documentation commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce support for such types by representing them using the new BTF_KIND_FLOAT commit, commit, commit, commit, commit, commit, commit, commit, commit
Add new libbpf APIs and their bpftool integration that allows to perform static linking of BPF object files commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add a snprintf eBPF helper commit, commit, commit, commit, commit, commit
BPF static linker: support externs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
bpf: add bpf_for_each_map_elem() helper commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- perf
libperf userspace counter access commit, commit, commit, commit
perf annotate: Add --demangle and --demangle-kernel commit
perf data: Add JSON export commit
perf report: Create option to disable raw event ordering commit
perf report: Make --stat output more compact commit, commit, commit, commit, commit, commit
perf: Allow TIME_CONV to be backwards-compatible and dump it commit, commit, commit, commit
perf stat: Align CSV output for summary mode commit
perf stat: Introduce iostat mode to provide I/O performance metrics commit, commit, commit
perf stat: Introduce 'bperf' to share hardware PMCs with BPF commit
Improve perf-stat --bpf-counter by 1) exposing key definitions to a libperf header; 2) adding compatibility check for perf_attr_map; 3) introducing config stat.bpf-counter-events. 4) introducing 'b' modify to event parser commit, commit, commit, commit
perf tools: Enable libtraceevent dynamic linking commit
perf: Add support for synchronous signals on perf events commit, commit, commit, commit, commit, commit, commit, commit
Add "func_no_repete" tracing option. Records only the first call, followed by an event showing the number of repeats commit, commit, commit, commit, commit
7. Virtualization
vdpa: add vdpa simulator for block device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
pvpanic: add PCI driver for pvpanic PCI device added in qemu commit
A vDPA driver for virtio-pci device which will bridge between vDPA bus and virtio-pci device commit
- vfio
- KVM
xen: Remove support for PV ACPI cpu/memory hotplug commit
hv: vmbus: Introduce CHANNELMSG_MODIFYCHANNEL_RESPONSE commit, commit, commit
x86/Hyper-V: Support for free page reporting commit
8. Security
(FEATURED) Add Landlock LSM commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ima: kernel build support for loading the kernel module signing key commit, commit, commit
Introduce TEE based Trusted Keys support commit, commit, commit, commit
Add support for x509 certs with NIST P384/256/192 keys commit, commit, commit, commit, commit, commit, commit, commit, commit
keys: Add EFI_CERT_X509_GUID support for dbx/mokx entries commit, commit, commit, commit
TPM 2.0 trusted key rework commit, commit, commit, commit, commit
LSM: add new hook to compare new mount to an existing mount commit
- selinux
audit: log nftables configuration change events once per table commit
9. Networking
nexthop: Resilient next-hop groups commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
sockmap: introduce BPF_SK_SKB_VERDICT and support UDP commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
veth: allow GRO even without XDP commit, commit, commit, commit
virtio-net: support XDP when not more queues commit
Introduces XSK generic zerocopy xmit commit, commit, commit, commit, commit
UDP: improve UDP L4 - either 'forward' or 'frag_list' - co-existence with UDP tunnel GRO, allowing the first to take place correctly even for encapsulated UDP traffic commit, commit, commit, commit, commit, commit, commit, commit
Devices: Allow to specify ifindex when device is moved to another namespace commit
- Bluetooth
Better support for sandwiched LAGs with bridge and DSA commit, commit, commit, commit, commit, commit
dsa: tag_brcm: add support for legacy tags commit
ICMP: Add support for RFC 8335 PROBE messages, a specialized ICMP message that makes use of the ICMP Extension Structure outlined in RFC 4884. It allows querying specific interfaces on a node and requiring bidirectional connectivity between the probing and probed interfaces commit, commit, commit, commit, commit, commit
macvlan: Add nodst option to macvlan type source to skip destination MACVLAN processing if any matching source MACVLAN device has the option set commit
Make unregister netdev warning timeout configurable with netdev_unregister_timeout_secs sysctl commit, commit
- Multi-path TCP
Compatibility with common msg flags commit, commit, commit, commit, commit
Add SOL_SOCKET support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Drops extra header options from IPv4 address echo packets commit
Miscellaneous changes commit, commit, commit, commit, commit, commit, commit
- Netfilter
Augment the Netfilter flowtable fastpath to support for network topologies that combine IP forwarding, bridge, classic VLAN devices, bridge VLAN filtering, DSA and PPPoE. This includes support for the flowtable software and hardware datapaths commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Netfilter: flowtable enhancements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit * Allow to turn off xtables compat layer commit
flowtable: add vlan match offload support commit
flowtable: add vlan pop action offload support commit
nft_socket: add support for cgroupsv2 commit
nftables: add catch-all set element support commit
nftables: counter hardware offload support commit
xt_SECMARK: add new revision to fix structure layout commit
Network fs helper library & fscache kiocb API 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
- nl80211
- ethtool
Extend module EEPROM dump API commit, commit, commit, commit, commit, commit
Add uAPI for reading standard stats commit, commit, commit, commit, commit, commit, commit, commit, commit
Add FEC statistics commit, commit, commit, commit, commit, commit
Support FEC configuration over netlink commit, commit, commit
psample: Add additional metadata attributes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
sched: act_police: enhance the TC policer action implementation to allow a policer action instance to enforce a rate-limit based on packets-per-second, configurable using a packet-per-second rate and burst parameters commit, commit, commit
seg6: add counters support for SRv6 Behaviors commit
IB/ipoib: Improve latency in ipoib/cm connection formation commit
- RDMA
Add CONFIG_PCPU_DEV_REFCNT for debugging commit
- CAN
10. Architectures
10.1. ARM
- Hardware support
New SoCs
STMicroelectronics STM32H750, one of many variants of STM32 microcontrollers based on the Cortex-M7 core commit
NXP i.MX8QuadMax, a variant of the growing i.MX8 embedded/industrial SoC family, using two Cortex-A72 and four Cortex-A53 cores commit
Qualcomm SC7280, a Laptop SoC following the SC7180 (Snapdragon 7c) that is used in some Chromebooks and Windows laptops commit
TI AM64x Sita4ra, a new version of the K3 SoC family for industrial control, motor control, remote IO, IoT gateway etc., similar to the older AM65x family commit
Nuvoton WPCM450 BMC. It's an older SoC but still commonly found on eBay, mostly in Supermicro X9 server boards commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Apple M1 SoC commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- New boards
Add support for the https://art-pi.gitee.io/website/ board based on stm32h750xbh6 commit
NXP i.MX8QuadMax Multisensory Enablement Kit commit
Reference boards for the TI AM64x SoC: AM642 SK commit and AM642 EVM commit
ASpeed AST2500 BMC: ASRock E3C246D4I Xeon server board commit
Allwinner A10: Topwise A721 Tablet commit
Amlogic GXL: MeCool KII TV box commit
Amlogic GXM: Mecool KIII, Minix Neo U9-H TV boxes commit
Broadcom BCM4908: TP-Link Archer C2300 V1 router commit
Marvell Armada 38x: ATL-x530 ethernet switch commit
- Mediatek MT8183 Chromebooks: Lenovo 10e, Acer Spin 311, Asus Flip CM3, Asus Detachable CM3
Mediatek MT8516/MT8183: OLogic Pumpkin Board commit
NXP i.MX7: reMarkable Tablet commit
NXP i.MX8M: Kontron pitx-imx8m, Engicam i.Core MX8M Mini commit
Nuvoton NPCM730: Quanta GBS BMC commit
Qualcomm X55: Telit FN980 TLB SoM commit, Thundercomm TurboX T55 SoM commit
Qualcomm MSM8998: OnePlus 5/5T phones commit
Qualcomm SM8350: Snapdragon 888 Mobile Hardware Development Kit commit
Rockchip RK3399: NanoPi R4S board commit
STM32MP1: Engicam !MicroGEA STM32MP1 MicroDev 2.0 and SOM, EDIMM2.2 Starter Kit, Carrier, SOM commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
TI AM65: Siemens SIMATIC IOT2050 gateway commit
aspeed: Add Rainier 1S4U machine commit
mt8183: Add kukui kakadu board commit
mt8183: Add kukui kodama board commit
mt8183: Add kukui-jacuzzi-damu board commit
mt8183: Add kukui-jacuzzi-juniper board commit
imx8mm-nitrogen-r2: add ecspi2 support commit
imx8mm: Add Engicam i.Core MX8M Mini commit, commit, commit, commit, commit
qcom: Add sc7180-trogdor-pompom skus commit
qcom: Add sc7180-lazor-limozeen skus commit
qcom: Add sc7180-trogdor-coachz skus commit
meson: add initial device-tree for Minix NEO U9-H commit
footbridge: remove personal server platform commit
bcm: bcm-pmb: add BCM63138 SATA support commit
mediatek: pwrap: add pwrap driver for MT6873/8192 SoCs commit, commit, commit, commit
- ARM64
Carry forward IMA measurement log on kexec commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce prctl(PR_PAC_{SET,GET}_ENABLED_KEYS), which allows the user program to control which PAC keys are enabled in a particular task. The main reason why this is useful is to enable a userspace ABI that uses PAC to sign and authenticate function pointers and other pointers exposed outside of the function, while still allowing binaries conforming to the ABI to interoperate with legacy binaries that do not sign or authenticate pointers. The idea is that a dynamic loader or early startup code would issue this prctl very early after establishing that a process may load legacy binaries, but before executing any PAC instructions commit
Support CONFIG_KASAN_VMALLOC commit, commit, commit, commit, commit
Support Enhanced Privileged Access Never (EPAN) which allows Privileged Access Never to be used with Execute-only mappings commit
ARMv8.5-A: MTE: Add async mode support commit, commit, commit, commit, commit, commit, commit, commit, commit
firmware: arm_scmi: SCMI vendor protocols and modularization 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
iommu: stall support to the SMMUv3 driver, along with a common I/O Page Fault handler commit, commit, commit, commit, commit, commit, commit
- coresight
- KVM
Stage-2 for the Host. This allows to wrap the host with a stage 2 when running in nVHE, hence paving the way for protecting guest memory from the host in the future (among other use-cases) 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
Add host/guest KVM-PTP support commit, commit, commit, commit, commit, commit, commit
Implement KVM_CAP_SET_GUEST_DEBUG2 commit
Enable SVE support on nVHE systems commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
vgic-v3: Expose GICR_TYPER.Last for userspace commit
perf events: Add Fujitsu A64FX pmu event commit
perf events: Add Hisi hip08 L1 metrics commit
perf events: Add Hisi hip08 L2 metrics commit
perf events: Add Hisi hip08 L3 metrics commit
perf events: Add more common and uarch events commit
Add support for HiSilicon Hip09 uncore PMU driver commit, commit, commit, commit, commit, commit, commit, commit, commit
10.2. X86
- Platforms
thinkpad_acpi: Add support for DYTC MMC_GET BIOS API commit
surface: Add DTX detachment system driver commit, commit, commit
Add platform profile driver for Surface devices commit
Add Surface Aggregator device registry commit, commit, commit, commit, commit, commit
surface: aggregator_registry: Add support for Surface Pro 7+ commit
Add Gigabyte WMI temperature driver commit
Add support for Advantech software defined button commit
asus-wmi: Add param to turn fn-lock mode on by default commit
gigabyte-wmi: add X570 AORUS ELITE commit
gigabyte-wmi: add support for B550 Aorus Elite commit
gigabyte-wmi: add support for X570 UD commit
hp-wmi: add platform profile support commit
intel_pmc_core: Add sub-state requirements and mode commit, commit, commit, commit, commit, commit, commit, commit, commit
intel_pmc_core: export platform global reset bits via etr3 sysfs file commit
thinkpad_acpi: Add X1 Carbon Gen 9 second fan support commit
thinkpad_acpi: sysfs interface to get wwan antenna type commit
touchscreen_dmi: Add info for the Chuwi Hi10 Pro (CWI529) tablet commit
powercap: Add Hygon Fam18h RAPL support commit
intel_idle: add Iclelake-D support commit
- intel_th
tools/x86: Add a kcpuid tool to show raw CPU features commit, commit
mce: Add Xeon Sapphire Rapids to list of CPUs that support PPIN commit
- perf
Add Alder Lake support 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
Uncore PMON discovery mechanism support commit, commit, commit, commit, commit
- KVM
Add AMD SEV guest live migration support commit, commit, commit, commit, commit, commit, commit
Adds the simple idea of tagging shadow-present SPTEs with a single bit, instead of looking for non-zero SPTEs that aren't MMIO and aren't REMOVED. Doing so reduces KVM's code footprint by 2k bytes on x86-64, and presumably adds a tiny performance boost in related paths commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support KVM VMs sharing SEV context commit
SGX virtualization support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Implement KVM_CAP_SET_GUEST_DEBUG2 commit
Add support for RDPID without RDTSCP commit
Add support for the emulation of DR6_BUS_LOCK bit commit
perf vendor events amd: Add Zen3 events commit
perf vendor events intel: Add missing skylake & icelake model numbers commit
10.3. MIPS
Loongson64: Add kexec/kdump support commit
Enable bpf_probe_read{, str}() on MIPS again commit
Add support for CONFIG_DEBUG_VIRTUAL commit
Loongson64: Add support for the Loongson-2K1000 to get cpu_clock_freq commit, commit
octeon: Add Ubiquiti E300 board commit
Remove broken/unmaintained MIPS KVM trap and emulate support commit, commit
perf tools: Support MIPS unwinding and dwarf-regs commit
10.4. POWERPC
Enable OPTPROBES on PPC32 commit
Add support for time namespaces commit
perf: Infrastructure to support checking of attr.config* commit
papr_scm: Implement support for H_SCM_FLUSH hcall commit
Implement extended BPF on PPC32 commit
Enable KFENCE for PPC32 commit
Enable passing IMA log to next kernel on kexec commit
perf tools: Support pipeline stage cycles for powerpc commit * perf events: Initial JSON/events list for power10 platform commit
perf powerpc: Add support for PERF_SAMPLE_WEIGHT_STRUCT commit
10.5. RISCV
Add kexec/kdump support commit, commit, commit, commit, commit
Add ARCH_HAS_FORTIFY_SOURCE commit
Add support for memtest commit
Add Microchip PolarFire SoC support commit, commit, commit, commit
10.6. S390
Add support for syscall stack randomization commit
cio: introduce CIO debugfs directory commit
cio: add CRW inject functionality commit
bpf: Implement new atomic ops commit
KVM: implement KVM_CAP_SET_GUEST_DEBUG2 commit
10.7. IA64
Drop marked broken DISCONTIGMEM and VIRTUAL_MEM_MAP commit
10.8. XTENSA
ISS: add GDBIO implementation to semihosting interface commit
11. Drivers
11.1. Graphics
- amdgpu
Add initial Freesync HDMI support commit
10bpc dithering improvements commit
Display ASSR (Alternate Scrambler Seed Reset) support commit
Add INFO ioctl support for querying video caps commit, commit, commit, commit, commit
DCN secure display support commit
Initial LTTPR (Link-Training Tunable PHY Repeaters) display work merge
Implement tdr advanced mode commit
Add LightSBR SMU MSG support commit
Add a new sysfs entry for default power limit commit
Add additional Sienna Cichlid PCI ID commit
Add support for dynamic GECC commit
Enable TMZ by default on Raven asics commit
Set amdgpu.noretry=1 for Arcturus commit
Add a backlight module option commit
Add debugfs entry for LTTPR register status commit
Add debugfs to control DMUB trace buffer events commit
Add debugfs to repress HPD and HPR_RX IRQs commit
Add max bpc debugfs commit
amdkfd: Add Aldebaran KFD support commit
amdkfd: Add kernel parameter to stop queue eviction on vm fault commit
- Intel
Add GUD USB Display driver commit
- sun4i
- vc4
- bridge
- ttm
- msm
- gma500
Remove Medfield support commit
- mediatek
- lima
add governor data with pre-defined thresholds commit
- panel-simple
Add N116BCA-EA1 commit
- panfrost
Add governor data with pre-defined thresholds commit
- tegra
Implement hardware cursor on Tegra186 and later commit
- host1x
Show number of pending waiters in debugfs commit
backlight: ktd253: Support KTD259 commit
11.2. Power Management
ACPI 6.4 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ACPI: PM: Add ACPI ID of Alder Lake Fan commit
- tools/power turbostat
tools/power/x86/intel-speed-select: Add options to force online commit
- thermal
11.3. Storage
ata: ahci_tegra: Add AHCI support for Tegra186 commit
- nvme
- SCSI
Add mq_poll support to SCSI layer commit
megaraid_sas: mq_poll support commit
pm80xx: Add sysfs attribute to check MPI state commit
pm80xx: Add sysfs attribute to check controller hmi error commit
pm80xx: Add sysfs attribute to track RAAE count commit
pm80xx: Add sysfs attribute to track iop0 count commit
pm80xx: Add sysfs attribute to track iop1 count commit
qedf: Enable devlink support commit
qla2xxx: Add marginal path handling support commit
scsi_debug: mq_poll support commit
smartpqi: Add new PCI IDs commit
smartpqi: Add stream detection commit
smartpqi: Add support for BMIC sense feature cmd and feature bits commit
smartpqi: Add support for RAID1 writes commit
smartpqi: Add support for RAID5 and RAID6 writes commit
smartpqi: Add support for long firmware version commit
smartpqi: Add support for new product ids commit
smartpqi: Add support for wwid commit
storvsc: Parameterize number hardware queues commit
target: tcmu: Support DATA_BLOCK_SIZE = N * PAGE_SIZE commit
ufs: ufs-debugfs: Add user-defined exception event rate limiting commit
ufs: ufs-debugfs: Add user-defined exception_event_mask commit
ufs: ufs-pci: Add support for Intel LKF commit
Buslogic: remove ISA support commit
advansys: remove ISA support commit
11.4. Drivers in the Staging area
comedi: Finally move out of staging directory commit
media: imx: imx7_media-csi: Add support for additional Bayer patterns commit
dpaa2-switch: add .ndo_start_xmit() callback commit
iio:cdc:ad7150: Add sampling_frequency support commit
most: add ALSA sound driver commit
clocking-wizard: Add support for fractional support commit
clocking-wizard: Add support for dynamic reconfiguration commit
wimax: delete from the tree commit
gasket: remove it from the kernel commit
xsysace: Remove SYSACE driver commit
block: remove the umem driver commit
11.5. Networking
Support Ocelot PTP Sync one-step timestamping commit, commit, commit, commit, commit, commit, commit
mana: Add a driver for Microsoft Azure Network Adapter (MANA) commit
Bluetooth: Add a new USB ID for RTL8822CE commit
Bluetooth: btusb: support 0cb5:c547 Realtek 8822CE device commit
FDDI: defxx: Implement dynamic CSR I/O address space selection commit
- hns
Add support for XRC on HIP09 commit
Support RoCE on virtual functions of HIP09 commit, commit, commit, commit, commit, commit
Support configuring doorbell mode of RQ and CQ commit
Support to select congestion control algorithm commit, commit
Support more return types of command queue commit
Support to query firmware version commit
iwcm: Allow AFONLY binding for IPv6 addresses commit
- ath11k
- bnxt_en
Add PCI IDs for Hyper-V VF devices commit
Add support for fw managed link down feature commit
Implement .ndo_features_check() commit
Support IFF_SUPP_NOFCS feature to transmit without ethernet FCS commit
Allow promiscuous mode for trusted VFs commit
Add more ethtool standard stats commit
Implement ethtool standard stats commit
Implement ethtool::get_fec_stats commit
broadcom: bcm4908_enet: support TX interrupt commit
- can
Introducing ETAS ES58X CAN USB interfaces commit, commit, commit
mcp251xfd: add BQL support commit
mcp251xfd: add HW timestamp infrastructure commit
mcp251xfd: add HW timestamp to RX, TX and error CAN frames commit
mcp251xfd: add dev coredump support commit
peak_usb: add support of ONE_SHOT mode commit
peak_usb: add support of ethtool set_phys_id() commit
- dpaa2-eth
- dpaa2-switch
- dsa
b53: mmap: Add device tree support commit
b53: support legacy tags commit
hellcreek: Add support for dumping tables commit, commit, commit, commit
Offload bridge port flags commit
Report switch name and ID commit
Add support for ksz88x3 driver family commit, commit, commit, commit, commit, commit, commit, commit
mt7530: Add support for EEE features commit
mt7530: support MDB and bridge flag operations commit
mv88e6xxx: Offload bridge port flags commit, commit, commit, commit, commit, commit, commit, commit
- enetc
Add Actions Semi Owl Ethernet MAC driver commit
gianfar: Drop GFAR_MQ_POLLING support commit
- hns3
- iavf
Add framework to enable ethtool RSS config commit
Add framework to enable ethtool ntuple filters commit
Support for modifying SCTP RSS flow hashing commit
Support for modifying TCP RSS flow hashing commit
Support for modifying UDP RSS flow hashing commit
Enable flex-bytes support commit
Support Ethernet Type Flow Director filters commit
Support IPv4 Flow Director filters commit
Support IPv6 Flow Director filters commit
Add support for UDP Segmentation Offload commit
- ice
Add Support for XPS commit
Add new actions support for VF FDIR commit
Add non-IP Layer2 protocol FDIR filter for AVF commit
Add support for per VF ctrl VSI enabling commit
Add support for an allowlist/denylist of VF commands commit
Enable FDIR Configure for AVF commit
Enable support in the ice driver to support virtchnl requests from the iavf to configure its own RSS input set commit, commit
Enhanced IPv4 and IPv6 flow filter commit
Support to separate GTP-U uplink and downlink commit
- igc
- ionic
- ipa
- iwlwifi
Add new so-gf device commit
mvm: Add support for 6GHz passive scan commit
mvm: add support for version 3 of LARI_CONFIG_CHANGE command commit
mvm: enable PPAG in China commit
mvm: responder: support responder config command version 8 commit
mvm: support BIOS enable/disable for 11ax in Ukraine commit
mvm: support range request command version 12 commit
pcie: Add support for Bz Family commit
marvell: prestera: add support for AC3X 98DX3265 device commit
mdio: Add BCM6368 MDIO mux bus controller commit
mediatek: add flow offload for mt7623 commit
mhi: Add support for non-linear MBIM skb processing commit
- mlxsw
Implement sampling using mirroring commit, commit, commit, commit, commit, commit
Preparations for resilient nexthop groups commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for resilient nexthop groups commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for egress and policy-based sampling commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow 802.1d and .1ad VxLAN bridges to coexist on Spectrum>=2 commit, commit, commit, commit, commit, commit, commit
- mlx5
Allow both CQE compression and HW time-stamp PTP to co-exist commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce TC sample offload commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
TC support for ICMP parameters commit
Implement ethtool::get_fec_stats commit
Add ethtool extended link state commit
Add offload stats ndos to nic netdev ops commit
Enhance diagnostics info for TX/RX reporters commit
Dynamically assign MSI-X vectors count commit, commit, commit, commit
Allow larger pages in DevX umem commit
Expose private query port commit
- mt76
Introduce single-sku support for mt7663/mt7921 drivers commit, commit, commit, commit, commit, commit
Report Rx timestamp commit
mt7921: introduce MCU_EVENT_LP_INFO event parsing commit
mt7921: enable random mac addr during scanning commit
Add support for 802.3 rx frames commit, commit, commit, commit, commit, commit
mt7915: add support for applying pre-calibration data commit
mt76x0u: Add support for TP-Link T2UHP(UN) v1 commit
Improve runtime-pm support for mt7663/mt7921 commit, commit, commit, commit
mt7615: enable hw rx-amsdu de-aggregation commit
mt7615: add support for rx decapsulation offload commit
mt7615: add rx checksum offload support commit
mt7601u: enable TDLS support commit
Devlink parameter to control mlx5 metadata enablement for E-Switch commit, commit, commit, commit, commit, commit, commit
Add MEMIC operations support commit, commit, commit, commit, commit, commit, commit
CT: Add support for matching on ct_state inv and rel flags commit
CT: Add support for mirroring commit
DR, Add support for dynamic flex parser commit
DR, Add support for force-loopback QP commit
DR, Add support for isolate_vl_tc QP commit
DR, Add support for matching on geneve TLV option commit
DR, Add support for matching tunnel GTP-U commit
mtk_eth_soc: implement dynamic interrupt moderation commit
- netdevsim
nfp: flower: add support for packet-per-second policing commit
- ocelot
- octeontx2-af
pcs: add C37 SGMII AN support for intel mGbE controller commit
- phy
Add support for microchip SMI0 MDIO bus commit
add Marvell 88X2222 transceiver support commit
broadcom: Add statistics for all Gigabit PHYs commit
marvell10g: allow 5gbase-r and usxgmii commit
marvell10g: support all rate matching modes commit
marvell: add support for Amethyst internal PHY commit
nxp-c45-tja11xx: add interrupt support commit
nxp-c45: add driver for tja1103 commit
sfp: add netlink SFP support to generic SFP code commit
r8152: support new chips commit, commit, commit, commit, commit, commit
- r8169
- rtw88
sfc: ef10: implement ethtool::get_fec_stats commit
- stmmac
Add XDP support commit, commit, commit, commit, commit, commit
Add XDP ZC support commit, commit, commit, commit, commit, commit, commit
Add hardware supported cross-timestamp commit
Add support for external trigger timestamping commit
Add per-queue TX & RX coalesce ethtool support commit
Enable MTL ECC Error Address Status Over-ride by default commit
intel: Add PSE and PCH PTP clock source selection commit
Add C37 AN SGMII support commit, commit, commit, commit, commit, commit
Enable multi-vector MSI commit, commit, commit, commit, commit
Support FPE link partner hand-shaking procedure commit
- wilc1000
11.6. Audio
Add generic LED API, which tries to resolve the diversity in the audio LED control among the ALSA drivers commit, commit, commit, commit, commit, commit
soundwire: qcom: various improvements commit, commit, commit, commit, commit, commit, commit, commit, commit
bebob: enable to deliver MIDI messages for multiple ports commit
- hda
usb-audio: Add dB range mapping for Sennheiser Communications Headset PC 8 commit
(FEATURED) Add virtio sound driver commit, commit, commit, commit, commit, commit, commit, commit, commit
- ASoC
Intel: add max98390 echo reference support commit
Intel: board: add BE DAI link for WoV commit
Intel: bytcr_wm5102: Add jack detect support commit
Intel: cht_bsw_rt5672: Add support for Bay Trail CR / SSP0 commit
Intel: soc-acpi: add ADL jack-less SoundWire configurations commit, commit
Intel: sof_rt5682: Add ALC1015Q-VB speaker amp support commit
ak5558: Add support for ak5552 commit
amd: Add support for ALC1015P codec in acp3x machine driver commit
amd: Add support for RT5682 codec in machine driver commit
SoC codecs: TLV320AIC3X add SPI support commit, commit, commit, commit
codecs: tlv320aic3x: add AIC3106 commit
cs42l42: Report jack and button detection + Capture Support commit, commit
fsl-asoc-card: Add support for WM8958 codec commit
fsl_sai: Add pm qos cpu latency support commit
Add audio driver base on rpmsg on i.MX platform commit, commit, commit, commit, commit, commit
max98390: Add support for tx slot configuration commit
Add I2S-MCC support for Microchip's SAMA7G5 commit, commit, commit, commit, commit
mediatek: mt6359: add MT6359 accdet jack driver commit
mediatek: mt8183: support machine driver with rt1015p commit
rt1015p: add acpi device id for rt1015p commit
rt1015p: add support on format S32_LE commit
rt1019: add rt1019 amplifier driver commit
rt1316: Add RT1316 SDCA vendor-specific driver commit
rt5670: Add emulated 'DAC1 Playback Switch' control commit
rt711-sdca: Add RT711 SDCA vendor-specific driver commit
rt715-sdca: Add RT715 sdca vendor-specific driver commit
rt715: add main capture switch and main capture volume commit
simple-card-utils: enable flexible CPU/Codec/Platform commit
tegra20: ac97: Add reset control commit
tegra20: i2s: Add reset control commit
11.7. Tablets, touch screens, keyboards, mouses
Add support for Azoteq IQS626A commit
Add support for ILITEK Lego Series commit
Add MStar MSG2638 touchscreen driver commit
Add driver for the Hycon HY46XX touchpanel series commit
atc260x: Add onkey driver for ATC260x PMICs commit
exc3000: add type sysfs attribute commit
iqs5xx: expose firmware revision to user space commit
mms114: support MMS136 commit
xpad: add support for Amazon Game Controller commit
- HID
Add support for Surface Aggregator Module HID transport commit
ft260: add usb hid to i2c host bridge driver commit
map battery capacity (00850065) commit
intel-ish-hid: ipc: Add Alder Lake device IDs commit
lenovo: Add support for Thinkpad X1 Tablet Thin keyboard commit
logitech-dj: Handle newer quad/bt2.0 receivers in HID proxy mode commit
magicmouse: add Apple Magic Mouse 2 support commit
semitek: new driver for GK6X series keyboards commit
Support for initialization of some Thrustmaster wheels commit
surface-hid: Add support for legacy keyboard interface commit
11.8. TV tuners, webcams, video capturers
V4L2 stateless VP8 de-staging commit, commit, commit, commit, commit, commit, commit, commit
Add support for the SDM845 Camera Subsystem commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add V4L2 driver for i.MX8 JPEG Encoder/Decoder commit, commit, commit, commit, commit, commit, commit
adv7604: support EDIDs up to 4 blocks commit
adv7842: support 1 block EDIDs commit
HDR10 static metadata commit, commit, commit, commit, commit
em28xx: Add pid for bulk revision of Hauppauge 461e commit
em28xx: Add pid for bulk revision of Hauppauge 461eV2 commit
rc: add keymap for Xbox 360 Universal Media remote commit
rc: add keymaps for mecool-kii-pro/kiii-pro remotes commit
rc: remove zte zx ir driver commit
ti-vpe: cal: Implement media controller centric API commit
uvcvideo: Support devices that report an OT as an entity source commit
venus: Enable 6xx support 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
MFC private ctrls to std ctrls commit, commit, commit, commit
11.9. Universal Serial Bus
- Thunderbolt
Add relative hysteresis support for hid sensors commit, commit, commit
Linking ports to their Type-C connectors commit, commit, commit, commit
cdns3: imx: add power lost support for system resume commit
Add some missing support for USB 3.2 SuperSpeed Plus detection on the host side commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dwc3: Add driver for Xilinx platforms commit
dwc3: pci: add support for the Intel Alder Lake-M commit
f_uac2: adds support for SS and SSP commit
mtu3: add support ip-sleep wakeup for MT8192 commit
serial: add support for multi-interface functions commit, commit, commit, commit
serial: ftdi_sio: add IDs for IDS GmbH Products commit
serial: ftdi_sio: add NovaTech OrionMX product ID commit
serial: omninet: add device id for Zyxel Omni 56K Plus commit
serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011 commit
serial: pl2303: add device id for ADLINK ND-6530 GC commit
serial: ti_usb_3410_5052: add startech.com device id commit
serial: ti_usb_3410_5052: drop closing_wait module parameter commit
serial: xr: add support for XR21B1411 commit
serial: xr: add support for XR21B1421, XR21B1422 and XR21B1424 commit
serial: xr: add support for XR21V1412 and XR21V1414 commit
serial: xr: add support for XR22801, XR22802, XR22804 commit
usbip: tools: add options and examples in man page related to device mode commit
xhci-mtk: add support ip-sleep wakeup for mT8192 commit
11.10. Serial Peripheral Interface (SPI)
Add Micron SPI NOR Authenta device compatible commit
mediatek: add mt8195 spi slave support commit
mediatek: add mtk_spi_compatible support commit
pxa2xx: Add support for Intel Alder Lake PCH-M commit
spi-nxp-fspi: Add imx8dxl driver support commit
spi-nxp-fspi: Add imx8dxl support commit
spi-nxp-fspi: Add support for IP read only commit
stm32-qspi: Add dirmap support commit
11.11. Watchdog
11.12. Serial
8250: Add new 8250-core based Broadcom STB driver commit
8250_of: Add nuvoton,wpcm450-uart commit
8250_pci: Add support for new HPE serial device commit
8250_dw: Add device HID for new AMD UART controller commit
serial: samsung_tty: Add earlycon support for Apple UARTs commit
serial: samsung_tty: Add support for Apple UARTs commit
cyclades, remove this orphan commit
isicom, remove this orphan commit
rocket, remove the driver commit
11.13. CPU Frequency scaling
CPPC: Add support for frequency invariance commit
11.14. Voltage, current regulators, power capping, power supply
supply: Add AC driver for Surface Aggregator Module commit
supply: Add battery driver for Surface Aggregator Module commit
supply: bq27xxx: Add support for BQ78Z100 commit
regulator: fan53555: Add TCS4525 DCDC support commit
regulator: qcom-rpmh: Add PM7325/PMR735A regulator support commit
regulator: spmi: Add support for ULT LV_P50 and ULT P300 commit
regulator: Support ROHM BD71815 regulators commit
11.15. Real Time Clock (RTC)
bd70528: Support RTC on ROHM BD71815 commit
New driver for RTC in Netronix embedded controller commit
pcf8523: add alarm support commit
ab-eoz9: add alarm support commit
pm8xxx: Add RTC support for PMIC PMK8350 commit
rx6110: add ACPI bindings to I2C commit
11.16. Pin Controllers (pinctrl)
Ingenic: Add pinctrl driver for JZ4730 commit
Ingenic: Add pinctrl driver for JZ4750 commit
Ingenic: Add pinctrl driver for JZ4755 commit
Ingenic: Add pinctrl driver for JZ4775 commit
Ingenic: Add pinctrl driver for X2000 commit
Ingenic: Add support for read the pin configuration of X1830 commit
Add a pincontrol driver for BCM6318 commit
Add a pincontrol driver for BCM63268 commit
Add a pincontrol driver for BCM6328 commit
Add a pincontrol driver for BCM6358 commit
Add a pincontrol driver for BCM6362 commit
Add a pincontrol driver for BCM6368 commit
Add drive for I2C related pins on MT8195 commit
Add pinctrl driver on mt8195 commit
bcm: add bcm63xx base code commit
pinmux: Add pinmux-select debugfs file commit
qcom-pmic-gpio: Add support for pm8008 commit
qcom: sc8180x: add ACPI probe support commit
qcom: spmi-gpio: Add support for PM8350 and friends commit
renesas: Add support for R-Car SoCs with pull-down only pins commit
rockchip: add support for rk3568 commit
11.17. Multi Media Card (MMC)
sdhci-of-dwcmshc: add rockchip platform support commit
sdhci-acpi: Add device ID for the AMDI0041 variant of the AMD eMMC controller commit
sdhci-pci: Add PCI IDs for Intel LKF commit
11.18. Memory Technology Devices (MTD)
Add OTP (one-time-programmable) erase ioctl commit
parsers: ofpart: support BCM4908 fixed partitions commit
parsers: ofpart: support Linksys Northstar partitions commit
rawnand: Add support for secure regions in NAND memory commit
- spi-nor
spinand: gigadevice: Support GD5F1GQ5UExxG commit
11.19. Industrial I/O (iio)
Add support for multiple IIO buffers per IIO device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Adding support for IIO SCMI Based Sensors commit
accel: Add support for the Bosch-Sensortec BMI088 commit
acpi_als: Add trigger support commit
adc: Add driver for Texas Instruments ADS131E0x ADC family commit
adc: ad7124: allow more than 8 channels commit
dac: ad5686: Add support for AD5673R/AD5677R commit
imu: inv_mpu6050: Use as standalone trigger commit
proximity: Add a ChromeOS EC MKBP proximity driver commit
proximity: vcnl3020: add proximity rate commit
cdc:ad7150: Move driver out of staging commit
magnetometer: Add Support for ST IIS2MDC commit
11.20. Multi Function Devices (MFD)
Add MFD driver for ATC260x PMICs commit
Add ROHM BD71815 ID commit
Add base driver for Netronix embedded controller commit
Remove support for AB3100 commit
Support ROHM BD9576MUF and BD9573MUF PMICs commit, commit, commit, commit, commit, commit
Support for ROHM BD71815 PMIC core commit
da9063: Support SMBus and I2C mode commit
intel-m10-bmc: Add support for MAX10 BMC Secure Updates commit
intel_pmt: Add support for DG1 commit
ntxec: Support for EC in Tolino Shine 2 HD commit
11.21. Pulse-Width Modulation (PWM)
Add Raspberry Pi Firmware based PWM bus commit
ntxec: Add driver for PWM function in Netronix EC commit
pca9685: Support hardware readout commit
visconti: Add Toshiba Visconti SoC PWM support commit
11.22. Inter-Integrated Circuit (I2C + I3C)
Add support for HiSilicon I2C controller commit
cp2615: add i2c driver for Silicon Labs' CP2615 Digital Audio Bridge commit
designware: Add driver support for AMD NAVI GPU commit
i801: Add support for Intel Alder Lake PCH-M commit
stm32f7: add support for DNF i2c-digital-filter binding commit
11.23. Hardware monitoring (hwmon)
pmbus: Add pmbus driver for MAX15301 commit
pmbus/tps53679: Add support for TI TPS53676 commit
Add driver for fsp-3y PSUs and PDUs commit
pmbus: Add driver for Infineon IR36021 commit
pmbus: Add driver for BluTek BPA-RS600 commit
corsair-psu: add support for critical values commit
Add driver for NZXT Kraken X42/X52/X62/X72 commit
pmbus/stpddc60: Add ST STPDDC60 pmbus driver commit
nct6683: Support NCT6686D commit
Remove amd_energy driver commit
11.24. General Purpose I/O (gpio)
Support ROHM BD71815 GPOs commit
sch: Add edge event support commit
mpc8xxx: Add ACPI support commit
Add Realtek Otto GPIO support commit
11.25. Leds
rt4505: Add support for Richtek RT4505 flash LED controller commit
11.26. DMA engines
dw-edma: HDMA support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- idxd
11.27. Cryptography hardware acceleration
ccp: Add support for Green Sardine commit
hisilicon: add ECDH and CURVE25519 algorithms support for Kunpeng 930 commit, commit, commit, commit, commit, commit, commit
hisilicon: enable new hardware error types for Kunpeng930 commit, commit, commit, commit
hisilicon/qm: support doorbell isolation and queue number configuration commit, commit, commit, commit
octeontx2: add support for OcteonTX2 98xx CPT block commit
11.28. PCI
Add sysfs MSI-X vector assignment interface commit
Allow VPD access for QLogic ISP2722 commit
j721e: Add support to provide refclk to PCIe connector commit
mediatek-gen3: commit, commit, commit, commit, commit, commit
tegra: Add Tegra194 MCFG quirks for ECAM errata commit
xilinx-nwl: Enable coherent PCIe DMA traffic using CCI commit
11.29. Remote Processors
Add support for detaching a remote processor commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
imx_rproc: support iMX8MQ/M commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
imx_rproc: support remote cores booted before Linux Kernel commit
qcom: pas: Add modem support for SDX55 commit
Add non PAS wcss Q6 support for QCS404 commit, commit, commit, commit
11.30. Clock
qcom: rpmh: add support for SDX55 rpmh IPA clock commit
ralink: add clock driver for mt7621 SoC commit
rockchip: add clock controller for rk3568 commit
bd718x7: Add support for clk gate on ROHM BD71815 PMIC commit
- clocksource
11.31. PHY ("physical layer" framework)
Add Sparx5 ethernet serdes PHY driver commit
add support for Armada CP110 UTMI PHY commit
qcom-qmp: add support for sm8250-usb3-dp phy commit
ti: j721e-wiz: Add support for configuring QSGMII commit
cadence-torrent: Add support to drive refclk out commit == IRQ chips ==
Add driver for WPCM450 interrupt controller commit
Add support for IDT 79rc3243x interrupt controller commit
apple-aic: Add support for the Apple Interrupt Controller commit
irq-mst: Support polarity configuration commit
stm32: add usart instances exti direct event support commit
11.32. Various
bus: mhi: core: Add support for Flash Programmer execution environment commit
bus: mhi: pci_generic: Add FIREHOSE channels commit
bus: mhi: pci_generic: Add SDX24 based modem support commit
bus: mhi: pci_generic: Add support for runtime PM commit
bus: mhi: pci_generic: Introduce Foxconn T99W175 support commit
bus: mhi: pci_generic: Introduce quectel EM1XXGR-L support commit
counter: add IRQ or GPIO based counter commit
counter: 104-quad-8: Remove IIO counter ABI commit
counter: stm32-lptimer-cnt: remove iio counter abi commit
extcon: qcom-spmi: Add support for VBUS detection commit, commit, commit
fpga: Add support for Xilinx DFX AXI Shutdown manager commit
fpga: dfl: add support for Intel D5005 card commit, commit, commit
- habanalabs
hwspinlock: remove sirf driver commit
interconnect: qcom: Add SDM660 interconnect provider driver commit
interconnect: qcom: Add SM8350 interconnect provider driver commit
iommu: add Unisoc IOMMU basic driver commit
mailbox: sprd: Add supplementary inbox support commit
mei: me: add Alder Lake P device id commit
misc: Add Add Synopsys DesignWare xData IP driver commit, commit, commit, commit
nvmem: qfprom: Add support for fuse blowing on sc7280 commit
of: property: fw_devlink: Add support for remote-endpoint commit
phy: Add media type and speed serdes configuration interfaces commit
vDPA/ifcvf: enable Intel C5000X-PL virtio-block for vDPA commit, commit, commit
vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA commit, commit, commit, commit, commit, commit, commit
tools: dma-mapping: benchmark: Add support for multi-pages map/unmap commit
iommu/dma: Resurrect the "forcedac" option commit
12. List of Pull Requests
13. Other news sites
LWN's merge window 1, window 2
Phoronix Linux 5.13 features