44437
Comment:
|
1054
Linux 6.3
|
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!''' /!\ * '''Kernel Core''' * 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: * 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=07b20889e3052c7e77d6a6a54e7e83446eb1ba8 (commit)] * 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=03e06e68ff76294e53ffa898cb844d2a997b043e (commit)] * 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=a58b0eb8e64b78d9315a5491955e78b1391d42e5 (commit)] * 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=5afe00221389998a25d611dc7941c06580c29eb6 (commit)] * 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=b90fa9ae8f51f098ee480bbaabd6867992e9fc58 (commit)] * 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=9676f0c6389b62bd6b24d77d4b3abdbcfa32d0f2 (commit)] * 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=2144440327fa01b2f3f65e355120a78211685702 (commit)] * 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 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a05964f3917c7c55368c229d7985f8e7c9977e97 (commit)] * 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)] * Reorder struct files_struct: The file_lock spinlock sits close to mostly read fields of 'struct files_struct'. In SMP (and NUMA) environments, each time a thread wants to open or close a file, it has to acquire the spinlock, thus invalidating the cache line containing this spinlock on other CPUS. This patch moves the spinlock to another cache line, so that concurrent threads can share the cache line containing 'count' and 'fdt' fields. It's worth up to 9% on a microbenchmark using a 2-physical-4-virtual CPU [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=95e861db3eaba7bc99f8605db70103ec3d078203 (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)] * 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)] * 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)] and add uevent sysfs attribute to re-emit device hotplug events [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a7fd67062efc5b0fc9a61368c607fa92d1d57f9e (commit)]. Also, introduce struct platform_driver (allows the platform device driver methods to be passed a platform_device structure instead of instead of a plain device structure, and therefore requiring casting in every platform driver) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=00d3dcdd96646be6059cc21f2efa94c4edc1eda5 (commit)]. Due to some of those changes, only udev versions 071 or higher will be able to run in 2.6.15. * Implement nice support across physical cpus on SMP to obtain good distribution of tasks of different nice values [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b910472dd3b7c1d51af9a594a759f642520c33e1 (commit)] * make /proc/mounts pollable [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5addc5dd8836aa061f6efc4a0d9ba6323726297a (commit)] * SELinux: Enables files created on a MLS-enabled SELinux system to be accessible on a non-MLS SELinux system [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e517a0cd859ae0c4d9451107113fc2b076456f8f (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)] * 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)] * 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)] * '''Architecture-specific''' * i386: generic cmpxchg. Makes cmpxchg generally available on the i386 platform, providing emulation of cmpxchg suitable for uniprocessor if built and run on 386 - neccesary for multithreaded enviroments with libraries using cmpxchg [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=53e86b91b7ae66d4c2757195cbd42e00d9199cf2 (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)] * ppc: add support for new powerbooks (late 2005 edition). This enables the ATA controller, Gigabit ethernet and basic AGP setup. Bluetooth works out-of-the box after running hid2hci. Still remaining is to get the touchpad to work [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7fce260a6bf75080ef61408504add5618f90e41b (commit)] * ARM: Add the infrastructure to support hotplug CPU [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)] * ARM: Adds support for omap24xx series of processors [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1dbae815a724303b46ab4663b5fc23c13e9d9690 (commit)] * ARM: NSLU2 machine support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a7918f39bbe59fe76f43743bdb6bb8b0bdefd94a (commit)] * x86 hot plug CPU support of physical add of new processors (hotplug disable/enable 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)] * IA64: 4-level page table support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=837cd0bdf54dd954cd6aa43d250f75ab5db79617 (commit)] * MIPS: 4-level page table support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c6e8b587718c486b55c2ebecc6de231a30beba35 (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 SharpSL Zaurus power and battery management core driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=078abcf95cdb95c78d786dbc61ae3c22ee70fb61 (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 add support for its MMC, IRDA and UDC devices, 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)], 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)]; add Akita (SL-C1000) machine support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=94cabd003e989556d8bf84027d96284dc2d99c76 (commit)], add PM device driver for the SL-Cx00 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e8b6f7f437a624fc2e2a2ec92fbeffdcf6f0e11e (commit)] and SL-C7x0 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d72f25b0dfb0807bd758da56a7ed88c0eb6e70d8 (commit)] machines. * 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)] * '''Filesystems''' * NTFS write support: NTFS finally implements write support so "vim /ntfs/foo.txt" works. You can write(2) to a file even beyond the end of the existing file. Resident non-resident files and are supported. Sparse files can also be written and holes will be filed appropiately. truncate(2), ftruncate(2) and open(2) with O_TRUNC flag also works. There're some limitations with heavily fragmented files which you won't be allowed to change. Also, notice that creation/deletion of files and directories is still not supported and mmap(2) based writes is still not complete [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=98b270362bb9ea6629732e7f5b65b8a6ce4743c7 (commit)] * Big CIFS update: Lots of performance improvements, support for mounting older pre-CIFS servers such as windows 9x and Me [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a10faeb2a3e266385cc334fe9af76e08e5e4330f (commit)], mount option for disabling the default behavior of sending byte range lock requests to the server [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c46fa8acdc533e8084359ea11c79d56eb98313fb (commit)], add filesystem nofitication changes [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8d0d50948b276b46b75b1b5855d3f9fab1e0fd92 (commit)], finish cifs mount option which requests case insensitive path name matching [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d3485d37c0b3292aec0618b6663c57542df5da99 (commit)], suspend support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ede1327ea4ca8019ec6df24b3e837def091c26b8 (commit)] * '''Networking''' * 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)] * Randomize the port selected on bind() for connections to help with possible security attacks. It should also be faster in most cases because there's no need for a global lock [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6df716340da3a6fdd33d73d7ed4c6f7590ca1c42 (commit)] * Add nf_conntrack subsystem: The existing connection tracking subsystem in netfilter can only handle ipv4. There were two choices present to add connection tracking support for ipv6, we could either duplicate all of the ipv4 connection tracking code into an ipv6 counterpart, or (the choice taken by these patches) we could design a generic layer that could handle both ipv4 and ipv6 and thus requiring only one sub-protocol (TCP, UDP, etc.) connection tracking helper module to be written. In fact nf_conntrack is capable of working with any layer 3 protocol [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9fb9cbb1082d6b31fb45aa1a14432449a0df6cf1 (commit)] * Generic netlink family: The generic netlink family builds on top of netlink and provides simplifies access for the less demanding netlink users. It solves the problem of protocol numbers running out by introducing a so called controller taking care of id management and name resolving [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=482a8524f85a7d8c40c6fb5d072e85bc2fef327f (commit)]; and a new type-safe interface for netlink messages and attribute habdling. The interface is fully binary compatible with the old interface towards userspace. Besides type safety, this interface features attribute validation capabilities, simplified message contstruction, and documentation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bfa83a9e03cf8d501c6272999843470afecb32ed (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)] * 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)] * Appropriate Byte Count support [http://www.ietf.org/rfc/rfc3465.txt (RFC 3465)]. ABC is a way of counting bytes ack'd rather than packets when updating congestion control [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9772efb970780aeed488c19d8b4afd46c3b484af (commit)] * IPV6: [http://www.ietf.org/rfc/rfc3484.txt RFC 3484] compliant source address selection [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=072047e4de3800905e09d0f8ef0e1cc4e91a601e (commit)] * Wireless updates: Hardware crypto and fragmentation offload support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f1bf6638af9e9bbbb6fb0b769054fb7db1ae652f (commit)], QoS (WME) support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9e8571affd1c54b9638b4ff9844e47aae07310f6 (commit)], "wireless spy support" [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=74079fdce472a2b16d502fe39e06b135ef06c69b (commit)], mixed PTK/GTK CCMP/TKIP support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ccd0fda3a6d9186d067893114f65b8df758d5a1f (commit)] and WE-19 HostAP support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c28df16ed70d1b6cefd12135e3c68bfccd1bb635 (commit)] * Speed up SACK processing: Use "hints" to speed up the SACK processing. Various forms of this have been used by TCP developers (Web100, STCP, BIC) to avoid the 2x linear search of outstanding segments [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6a438bbe68c7013a42d9c5aee5a40d7dafdbe6ec (commit)] * '''Drivers''' * libata: Add support for ATA passthru (arbitrary ATA command execution, neccesary for SMART support) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b095518ef51c37658c58367bd19240b8a113f25c (commit)], C/H/S support for older devices [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8bf62ecee58360749c5f0e68bc97d5e02a6816b1 (commit)], support for Silicon Image 3131/3531 controllers [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=042c21fd2c3aa553907020131caa553a9da24589 (commit)], Marvell SATA family (DMA mode) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=31961943e3110c5a1c36b1e0069c29f7c4380e51 (commit)] and Promise SATA 300 TX2plus PDC40775 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c45154a3b1fecdbb51b5462c9f730b44e62b83a5 (commit)] * e1000: Implementation of the milti-queue feature [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=24025e4ecf88743e1b3d46451b0e3f9de4bbcba5 (commit)] and support for 82571 and 82572 controllers [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=868d5309942927dc86f57009420c5d366ec05daa (commit)] * tg3: add complete support for 5714/5715 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a4e2b347848bf626b822599329933887dc90e50f (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)], raid5 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3f294f4fb6f2ba887b717674da26c21f3d57f3fc (commit)], md [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eae1701fbd264cfc7efbaf7cd4cd999760070e27 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=86e6ffdd243a06663713e637ee683fb27dce8e0c (commit)] * fbcon: Add support for console rotation. Can be enabled with a boot option fbcon=rotate:n, where n = 0 - normal, n = 1 - 90 degrees (clockwise), n = 2 - 180 degrees (upside down), n = 3 - 270 degrees (counterclockwise); or at runtime with "echo n > /sys/class/graphics/fb[num]/con_rotate" to set the angle of rotation of the current console or "echo n > /sys/class/graphics/fb[num]/con_rotate_all" to set the angle of rotation globally [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e4fc27618b75234b721c4a13d0e0d9d07e75e641 (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)], add radeon PCI Express support to complete the support for newest radeon cards along with the r300 3d initial support which went into 2.6.14 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ea98a92ff18c03bf7f4d21536986cbbcb4c10cd9 (commit)], Matrox 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)] * IDE support for: AMD Geode GX/LX [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7fab773de16ccaeb249acdc6e956a9759c68225d (commit)] and CS5535 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f5b2d8b4b5146fa2d70fec7d514fa0bd64636958 (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://lwn.net/Articles/139118/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=394b701ce4fbfde919a9bcbf84cb4820a7c6d47c (commit)] * MTD: add Resident Flash Disk (RFD) support. This type of flash translation layer (FTL) is used by the Embedded BIOS by General Software. [http://www.gensw.com/pages/prod/bios/rfd.htm http://www.gensw.com/pages/prod/bios/rfd.htm] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e27a9960af0506d84b9ca9dd3874b7d88901f230 (commit)] and add initial support for OneNAND flash chips, a new flash technology from Samsung with integrated SRAM buffers and logic interface [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cd5f6346bc28a41375412b49b290d22ee4e4bbe8 (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)] * Support the SMC9111 networking device present on DB1200 boards [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=557934554655ac119d96a1bdb6ed75319bb9d1b1 (commit)] * New Omnikey Cardman 4040 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=77c44ab1d8e9da31bf927223e1579b44f772b579 (commit)] and 4000 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c1986ee9bea3d880bcf0d3f1a31e055778f306c7 (commit)] smartcard reader driver ===== 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 [http://www.ietf.org/rfc/rfc3542.txt (RFC 3542)]: 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)] * 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)] * Initial radeon r300-based chips 3D support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=414ed537995617f4cbcab65e193f26a2b2dcfa5e (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)] Rules: * Name of the new feature/description of the change, including a small explanation if possible * If its a feature and the feature has some web page add a link to it * If there's a paper (OLS!) or an article add a link to it. Or write one ;) * If there's a interesting mail (benchmarks, announcements if there's no web page, etc) about it in the mailing list, get a link in one of the list's archives (at [http://marc.theaimsgroup.com/?l=linux-kernel http://marc.theaimsgroup.com/?l=linux-kernel] please) and add the link here * Add commit's link if possible. For commits add a "(commit)" word and add the link there. Don't add the commit link to another word (please). * Searching commits for a given feature is easy using the [http://www.kernel.org/git git web interface] * There're two main GIT trees where you can search for commits: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git the one which has all the stuff commited after 2.6.12-rc2] and [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git the one which has all the stuff BEFORE 2.6.12-rc2] * There's a [http://vger.kernel.org/vger-lists.html#git-commits-head git-commits-head mailing list] where all the commit diffs and git IDs are posted, you subscribe or search the [http://marc.theaimsgroup.com/?l=git-commits-head archives] 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_6.3)>> |
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 6.3 was released on Sunday, 23 Apr 2023.
Summary: This release includes improved Btrfs performance and fragmentation improvements, support for non-executable memfds, eBPF support for HID devices, support for IPv4 Big TCP, new ids to the rseq system call, support AMD QoS new features, specifications for the netlink protocol, more secure NFS encryption, and multi-actuator support in the BFQ I/O sched. As always, there are many other features, new drivers, improvements and fixes.
Contents
-
Prominent features
- Btrfs performance and fragmentation improvements
- eBPF support for HID devices, and other BPF enhancements
- Non-executable memfds
- Support IPv4 big TCP (TSO frames larger than 64kB)
- Add new ids to the rseq system call for faster and more efficient memory allocators
- Support AMD QoS new features
- Netlink protocol specifications
- More secure NFS encryption
- Multi-actuator support in the BFQ I/O scheduler
- Core
- 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
- Serial
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Watchdog
- 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)
- Inter-Integrated Circuit (I2C + I3C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Hardware Random Number Generator (hwrng)
- Cryptography hardware acceleration
- PCI
- Thunderbolt
- Clock
- PHY ("physical layer" framework)
- EDAC (Error Detection And Correction)
- Various
- List of Pull Requests
- Other news sites
1. Prominent features
1.1. Btrfs performance and fragmentation improvements
This release places a number of heuristics in the block allocator to place files with different fragmentation characteristics together and separated from other types. This can help to avoid fragmentation in some cases, in particular this may help during balance.
There are also a few notable performance improvements: the send functionality now caches caches directory utimes and only emit the command when necessary, which can speed up send up to 10x. The fiemap ioctl can be now up to 3x faster when extents are shared, and there are some microoptimizations that can speed up file creation in synthetic benchmarks up to 10%.
1.2. eBPF support for HID devices, and other BPF enhancements
As usual, this release includes a number of enhancements, like a rbtree data structure that follows the recently-added linked-list. Because of previous limitation, BPF users had to use the BPF map structures (hash, array) for data structures that don't fit well in these structures. With the introduction of kfuncs, kptrs, and the any-context BPF allocator, it is now possible to implement this rbtree data structure that can expose red-black tree structures inside the kernel more naturally.
This release also includes a somewhat exotic use of BPF: using eBPF programs as a way to add small features and tweaks to existing Input HID drivers. For example, as joystick gets older, it is common to see it wobbling around its neutral point. This is usually filtered at the application level by adding a dead zone for this specific axis. With HID-BPF, it is possible to add a filter in the kernel directly so userspace does not get woken up when nothing else is happening on the input controller.
Another use would be to add a feature that requires a new kernel API, morph a device into something else and control that from userspace, or prevent users from accessing a feature (eg. broken firmware feature), or simply tracing HID events.
Recommended LWN article: [[|https://lwn.net/Articles/909109/BPF for HID drivers]]
1.3. Non-executable memfds
memfds (which are file descriptors that just refer to an area of anonymous process memory, instead of a file system). This release adds some flags to allow disabling the executability of these files, and it's also possible to seal them.
Recommended LWN article: Enabling non-executable memfds
1.4. Support IPv4 big TCP (TSO frames larger than 64kB)
This is an IPv4 implementation of BIG TCP, which allow biggers TSO/GRO packet sizes for IPv4 traffic. Reducing number of packets traversing networking stack usually improves performance. This is similar to the IPv6 BIG TCP feature but for the v4 family.
Recommended LWN article: Going big with TCP packets
1.5. Add new ids to the rseq system call for faster and more efficient memory allocators
The rseq(2) system call (alias for "restartable sequences") was added in Linux 4.18 to provide a safe way to do concurrency updates without using locks or atomic instructions. But it also provided a method for a thread to get the CPU id number where it runs, in a way that is faster than getcpu(2).
This release extends the rseq(2) system call to also expose other identification numbers that provide some heavy-lifting needed by eg. memory allocators to allow them to use per-cpu data structures more efficiently:
- NUMA node id: This allows to gather the NUMA node id more efficiently than getcpu(2), which allows memory allocators such as tcmalloc to take advantage of this fast access to perform NUMA-aware memory allocation. It can also be useful for implementing fast-paths for NUMA-aware user-space mutexes, and even allows implementing getcpu(2) purely in user-space.
- Per-memory map concurrency ID. This concurrency ID is within the possible cpus range, and is temporarily (and uniquely) assigned to a memory map while threads are actively running within it. If a memory map has fewer threads than cores, or is limited to run on few cores concurrently through sched affinity or cgroup cpusets, the concurrency IDs will be values close to 0, thus allowing efficient use of user-space memory for per-cpu data structures.
- NUMA-aware concurrency id: It is similar to the concurrency ID, except that it provides the NUMA node ids with which each concurrency id has been associated, and it is guaranteed to never change NUMA node unless a kernel-level NUMA configuration change happens. This makes possible to create per-cpu structures in environments where a process or a set of processes belonging to cpuset are pinned to a set of cores which belong to a subset of the system's NUMA nodes. In those situations, it is possible to benefit from the compactness of concurrency IDs over CPU ids, while keeping NUMA locality, for indexing a per-cpu data structure which takes into account NUMA locality.
1.6. Support AMD QoS new features
Support for AMD QoS new features: Slow Memory Bandwidth Allocation (SMBA) and Bandwidth Monitoring Event Configuration (BMEC). These extensions are intended to provide for the monitoring of the usage of certain system resources by one or more processors and for the separate allocation and enforcement of use limits:
- Slow Memory Bandwidth Allocation (SMBA): With this feature, the QOS enforcement policies can be applied to the external slow memory connected to the host. Currently, CXL.memory is the only supported "slow" memory device.
- Bandwidth Monitoring Event Configuration (BMEC). The bandwidth monitoring events mbm_total_event and mbm_local_event are set to count all the total and local reads/writes respectively.
Official site: AMD64 Technology Platform Quality of Service Extensions
1.7. Netlink protocol specifications
The netlink protocol is a networking protocol used to communicate user space programs with the kernel. For example, it is used to configure and gather information about wireless devices. Adding new communication endpoints require manually adding them to userspace libraries. This release adds machine readable netlink protocol descriptions in YAML. The expectation is that the spec can be used to either dynamically translate between whatever types the high level language likes. Currently only genetlink is supported.
1.8. More secure NFS encryption
This release improve/harden the security provided by the Linux kernel's RPCSEC GSS Kerberos 5 mechanism (used by NFS). This release disables DES-based enctypes by default, provides a mechanism for disabling SHA1-based enctypes, and introduces two modern AES-SHA2-based enctypes that do not use deprecated crypto algorithms.
1.9. Multi-actuator support in the BFQ I/O scheduler
Some traditional hard drives have more than one arm. In order to optimize performance, the I/O scheduler must attempt to keep both arms busy. This release adds some support for such multi-actuator drives to the BFQ I/O scheduler.
2. Core
- Rust
Rust support for User Mode Linux arch commit, commit, commit
alloc: remove the borrow module (ToOwned, Cow) commit
sync: add Arc for ref-counted allocations commit
sync: add support for dispatching on Arc and ArcBorrow commit
sync: allow coercion from Arc<T> to Arc<U> commit
sync: allow type of self to be Arc<T> or variants commit
sync: allow type of self to be ArcBorrow<T> commit
sync: introduce ArcBorrow commit
sync: introduce UniqueArc commit
types: implement ForeignOwnable for Arc<T> commit
types: implement ForeignOwnable for Box<T> commit
types: implement ForeignOwnable for the unit type commit
types: introduce ForeignOwnable commit
types: introduce ScopeGuard commit
nolibc: usability improvements (errno, environ, auxv) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
fw_devlink improvements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
VT: Support >32x32 fonts for hidpi displays commit, commit, commit
kbuild: add a tool to list files ignored by git commit
scripts/gdb: add mm introspection utils commit
- io_uring
Add a new flag (IORING_MSG_RING_FLAGS_PASS) in the message ring operations (IORING_OP_MSG_RING). This new flag enables the sender to specify custom flags, which will be copied over to cqe->flags in the receiving ring. These custom flags should be specified using the sqe->file_index field. This mechanism provides additional flexibility when sending messages between rings commit
Add support for using io_uring_register() with a registered ring fd commit
(FEATURED) RSEQ node id and mm concurrency id extensions commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rcu: Add RCU stall diagnosis information commit, commit, commit, commit, commit
shmem: support idmapped mounts for tmpfs commit
lib: add Dhrystone benchmark test commit
Allow forcing unconditional bootconfig processing commit
fork: allow CLONE_NEWTIME in clone3 flags commit
kexec: introduce sysctl parameters kexec_load_limit_* commit
- docs
uaccess: Add minimum bounds check on kernel buffer size commit
- Task scheduler
Membarrier: Introduce MEMBARRIER_CMD_GET_REGISTRATIONS, a method to query previously issued registrations It's needed for CRIU (checkpoint/restore in userspace) commit, commit
Limit scheduler slice duration to the sysctl_sched_latency period, to improve scheduling granularity with a large number of SCHED_IDLE tasks commit
Improve the scalability of the CFS bandwidth unthrottling logic with large number of CPUs commit
3. File systems
- BTRFS
(FEATURED) Data block group size classes to reduce the fragmentation of block groups under certain unhappy workloads. It is particularly effective when the size of extents correlates with their lifetime commit, commit
(FEATURED) Send optimizations: ache directory utimes and only emit the command when necessary (speedup up to 10x) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Scan device in non-exclusive mode commit
(FEATURED) Speedup fiemap (up to 3x) when extents are shared commit, commit
(FEATURED) Small optimization in the b-tree key lookup, speedup in metadata operations (sample benchmark: fs_mark +10% of files/sec) commit, commit
Consolidate btrfs checksumming, repair and bio splitting 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
- EXT4
Direct IO take shared inode lock when overwriting preallocated blocks. This can give a significant speed up for multi-threaded writes commit
- FSVERITY
- F2FS
- FUSE
- NFS
Initial conversion of NFS basic I/O to use folios commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Disable DES-based enctypes by default, provides a mechanism for disabling SHA1-based enctypes, and introduces two modern enctypes that do not use deprecated crypto algorithms 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
- UDF
- ZONEFS
- EROFS
Add per-cpu threads for decompression as an option commit
4. Memory management
Per-VMA locks commit, commit, commit, commit, commit, commit, commit, commit
Implement DAMOS filtering for anon pages and commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
migrate_pages(): batch TLB flushing commit, commit, commit, commit, commit, commit, commit, commit, commit
Multi-gen LRU: memcg LRU commit, commit, commit, commit, commit, commit, commit
zsmalloc: make zspage chain size configurable commit, commit, commit, commit
(FEATURED) memfd: introduce MFD_NOEXEC_SEAL and MFD_EXEC commit, commit, commit, commit, commit
Support for memory-deny-write-execute (MDWE). Its aim is to prevent a user task from inadvertently creating an executable mapping that is (or was) writeable commit
Enable maple tree RCU mode by default commit
Support POSIX_FADV_NOREUSE in vma_has_recency() so that the LRU algorithm can ignore access to mapped files marked by this flag commit, commit
Introduce per NUMA node memory error statistics commit, commit, commit
Improves a few MGLRU functions commit, commit, commit, commit, commit, commit, commit
Get rid of first tail page fields from struct page commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Folios changes
Convert hugetlb fault functions to folios commit, commit, commit, commit, commit, commit, commit, commit
Convert various mempolicy.c functions to use folios commit, commit, commit, commit, commit, commit
Convert page_add_file_rmap() to use a folio internally commit Convert filemap_map_pmd() to take a folio commit, commit, commit
Convert do_anonymous_page() to use a folio commit
kasan: infer allocation size by scanning metadata commit
Continue hugetlb folio conversions commit, commit, commit, commit, commit, commit, commit, commit
khugepaged: convert release_pte_pages() to use folios commit * Implement memory-deny-write-execute as a prctl commit
Convert page_add_file_rmap() to use a folio internally commit
Convert hugepage memory failure functions to folios commit, commit, commit, commit, commit, commit, commit, commit
5. Block layer
ublk_drv: add mechanism for supporting unprivileged ublk device commit, commit, commit, commit, commit, commit, commit
(FEATURED) Extend BFQ io scheduler to support multi-actuator drives commit, commit, commit, commit, commit, commit, commit, commit
virtio-blk: set req->state to MQ_RQ_COMPLETE and support completion batching for the IRQ path commit, commit
pata_parport: add driver (PARIDE replacement) commit, commit
virtio: vdpa: new SolidNET DPU driver commit, commit, commit
6. Tracing, perf and BPF
Enable cpumasks to be used as kptrs commit, commit, commit, commit, commit, commit, commit, commit, commit
Enable struct_ops programs to be sleepable commit, commit, commit
(FEATURED) BPF rbtree next-gen datastructure commit, commit, commit, commit, commit, commit, commit, commit, commit
Add flag BPF_F_NO_TUNNEL_KEY to bpf_skb_set_tunnel_key() commit, commit
bpftool: profile online CPUs instead of possible commit
libbpf: Add support for fetching up to 8 arguments in kprobes commit
Introduce cgroup.memory=nobpf commit, commit, commit, commit
perf c2c: Add report option to show false sharing in adjacent cachelines commit
perf intel-pt: Synthesize cycle events commit
perf lock contention: Add -S/--callstack-filter option commit
perf lock contention: Track lock owner commit, commit, commit
perf script: Add 'cgroup' field for output commit
perf stat: Avoid merging/aggregating metric counts twice commit
perf symbols: Improve dso__synthesize_plt_symbols() for x86 commit, commit, commit, commit, commit, commit, commit, commit, commit
perf lock contention: Improve aggr x filter combination commit, commit, commit, commit
perf report: Support Retire Latency commit, commit, commit, commit, commit, commit, commit, commit, commit
perf intel-pt: Fix the pipe mode (v2) commit, commit, commit, commit
jevents/pmu-events improvements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf: Add more syscalls to benchmark commit, commit, commit, commit
tracing: Allow stacktraces to be saved as histogram variables commit, commit, commit, commit, commit
tracing: Addition of tracing instances via kernel command line commit, commit, commit, commit
tracing: Updates for 6.3 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
7. Virtualization
vhost-net: support VIRTIO_F_RING_RESET commit
efi: Support ESRT under Xen commit, commit, commit, commit, commit
xen/hypervisor: Expose Xen SIF flags to userspace commit
virtio: vdpa: new SolidNET DPU driver commit
virtio_ring: per virtqueue DMA device commit, commit, commit, commit, commit
Add throttling detection to sev-guest commit, commit, commit, commit, commit, commit, commit
8. Security
LoadPin: Allow filesystem switch when not enforcing commit, commit, commit, commit
ima: Align ima_file_mmap() parameters with mmap_file LSM hook commit, commit
9. Networking
(FEATURED) Support IPv4 big TCP commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
bpf: Add ipip6 and ip6ip decap support for bpf_skb_adjust_room() commit, commit
bridge: Limit number of MDB entries per port, port-vlan commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Netlink protocol specs commit, commit, commit, commit, commit, commit, commit, commit
icmp: Add counters for rate limits commit
IEEE 802.15.4 scan support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
IEEE 802.15.4 passive scan support commit, commit, commit, commit, commit, commit
Add IP_LOCAL_PORT_RANGE socket option. It sets or gets the per-socket default local port range. This option can be used to clamp down the global local port range, defined by the ip_local_port_range proc interface commit
Introduce rps_default_mask sysctl commit, commit, commit, commit
- mptcp
netlink: provide an ability to set default extack message commit
rxrpc: Increasing SACK size and moving away from softirq, part 5 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce new DCB rewrite table commit, commit, commit, commit, commit, commit
devlink: code split and structured instance walk commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
devlink: remove devlink features commit
Use a dedicated kmem_cache for skb head allocs commit, commit, commit, commit
RPCSEC GSS krb5 enhancements 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
- sched
Allow offloading of UDP NEW connections via act_ct commit, commit, commit, commit, commit, commit, commit
Add new attr TCA_EXT_WARN_MSG to report tc extact message commit
cls_api: Support hardware miss to tc action commit, commit, commit, commit, commit, commit, commit, commit
mqprio: allow reverse TC:TXQ mappings commit
Retire some tc qdiscs and classifiers commit, commit, commit, commit, commit
Netfilter updates for net-next commit, commit, commit, commit, commit, commit, commit, commit, commit
raw: add drop reasons and use another hash function commit, commit, commit
Add support for per action hw stats commit, commit, commit, commit, commit, commit, commit, commit, commit
seg6: add PSP flavor support for SRv6 End behavior commit, commit, commit
taprio automatic queueMaxSDU and new TXQ selection procedure commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
sysctl: expose all net/core sysctls inside netns commit
- wifi
cfg80211: Authentication offload to user space for MLO connection in STA mode commit
nl80211: Allow authentication frames and set keys on NAN interface commit
nl80211: emit CMD_START_AP on multicast group when an AP is started commit, commit
v4: Puncturing support in AP mode commit, commit, commit, commit
mac80211: Allow NSS change only up to capability commit
Support minimal EHT rate reporting on RX commit
xdp: introduce xdp-feature support commit, commit, commit, commit, commit, commit, commit, commit
ethtool support for IEEE 802.3 MAC Merge layer commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
sched, net: NUMA-aware CPU spreading interface commit, commit, commit
xdp: hints via kfuncs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
add tx packets aggregation to ethtool and rmnet commit, commit, commit
10. Architectures
10.1. ARM
- Device Tree Sources
Two new 32-bit SoCs are added, both are quad-core Cortex-A7 chips from Rockchips: RV1126 commit, commit, commit, commit, commit, commit, Vision SoC with an NPU used in the Edgeble Neural Compute Module 2(Neu2) board commit, commit, while RK3128 is design for TV boxes and so far only comes with a dts for its refernece design commit, commit, commit
Other 32-bit boards, two ASpeed AST2600 based BMC boards (Ufispace NCPLite platform device tree commit, commit, commit, Facebook Greatlakes platform commit, commit), the Microchip sam9x60_curiosity development board (Armv5 based! commit, commit, commit, commit, commit, commit, commit, commit), the Enclustra PE1 FPGA-SoM baseboard (commit, commit), and a few more boards for i.MX53 and i.MX6ULL (below).
New SoC: Qualcomm SM8550 (Snapdragon 8 Gen 2) for mobile phones commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
New SoC: Qualcomm QDU1000/QRU1000 5G RAN platform commit, commit
New SoC: Rockchips RK3588/RK3588s for tablets, chromebooks and SBCs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
New SoC: TI J784S4 for industrial and automotive applications commit, commit, commit, commit
Three Amlogic based development boards (Odroid-N2L commit, commit, commit, Radxa Zero2 commit, commit, BPI-M2-PRO commit, commit, commit, commit, commit)
Embedded machines based on NXP i.MX8MM and i.MX8MP (yavia carrier board commit, commit, commit, imx8mp-beacon-kit commit, Debix Model A board devicetree commit, commit, commit)
The Mediatek mt7986a based Banana Pi R3 router commit, commit, commit, commit, commit, commit
Six tablets based on Qualcomm MSM8916 (Snapdragon 410) (msm8916-gplus-fl8005a commit, commit, commit, commit, commit, msm8916-acer-a1-724 commit, commit, commit, commit, msm8916-samsung-j5 commit, commit, commit, commit, commit, SM6115 (Snapdragon 662) (Lenovo Tab P11 J606F/XiaoXin Pad dts commit) and SM8250 (Snapdragon 865) (Xiaomi Mi Pad 5 Pro (xiaomi-elish) commit, commit)
LTE dongles, also based on MSM8916 (msm8916-thwc commit, commit, commit))
Seven mobile phones, based on Qualcomm MSM8953 (Snapdragon 610), SDM450 and SDM632 commit, commit, commit, commit, commit, commit, commit, commit, commit
Three chromebooks based on Qualcomm SC7280 (Snapdragon 7c) commit, commit, commit, commit
Development boards based on Rockchips RK3588, RK3568, RK3566 and RK3328 commit, commit, commit, commit, commit, commit, commit, commit, commit,s commit
Five development machines based on TI K3 (AM642/AM654/AM68/AM69) commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for Samsung Galaxy tab A (2015) tablets commit, commit, commit
qcom: sm8450-hdk: enable HDMI output commit, commit, commit, commit, commit
dts: qcom: Add ADSP, CDSP & MDSS support to SM8550 and MTP board commit, commit, commit
Enable Display for SM8350 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
renesas: Simple-Card / Audio-Graph-Card/Card2 dts for ULCB/KF commit, commit, commit, commit, commit, commit
imx6ull-dhcom: Add DH electronics DHCOM i.MX6ULL SoM support commit, commit, commit, commit
ARM: remove unused davinci board & drivers commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rockchip: add Hynitron cst340 for Anbernic 353 series commit
cns3xxx: remove entire platform commit
exynos: Add Samsung Galaxy S5 (SM-G900H) board commit
sa1100, mmp: drop unused board files commit, commit, commit, commit, commit, commit, commit, commit, commit
omap1: remove osk-mistral add-on board support commit
pxa: remove all unused boards&drivers commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
s3c: clean out obsolete platforms commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Remove old board files 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
Coresight: Add support for TPDM and TPDA commit, commit, commit, commit, commit, commit, commit
crypto: Implement fused AES-CTR/GHASH version of GCM commit
Support Clang UBSAN trap codes for better reporting commit
DCC(Data Capture and Compare) driver support commit, commit, commit, commit, commit, commit, commit
coresight: Add new API to allocate trace source ID values commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
soc: qcom: Introduce PMIC GLINK commit, commit, commit, commit
soc: mediatek: Introduce mediatek-regulator-coupler driver commit
soc: nuvoton: Add SoC info driver for WPCM450 commit
soc: qcom: dcc: Drop driver for now commit
soc: qcom: socinfo: Add Soc IDs for IPQ8064 and variants commit
renesas: Add PWC support for RZ/V2M commit
sunxi: Add Allwinner D1 PPU driver commit
Add first version mt8188 vdosys0 driver commit, commit, commit, commit
Add metrics for neoverse-n2-v2 commit, commit, commit, commit, commit, commit, commit, commit, commit
firmware, arm_scmi: Introduce a unified API for SCMI Server testing commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for UltraSoc System Memory Buffer commit, commit
- ARM64
sme: Support SME 2 and SME 2.1 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Expose compat Armv8 AArch32 features commit, commit, commit, commit, commit, commit, commit, commit
Enable USB host on Jetson AGX Orin commit, commit, commit, commit, commit
ftrace: Add support for DYNAMIC_FTRACE_WITH_CALL_OPS commit, commit, commit, commit, commit, commit, commit, commit
perf: Arm SPEv1.2 support commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow kernel-mode VFP/Neon in softirq context commit
gcm: add RFC4106 support commit
Accelerated GCM for IPSec on ARM/arm64 commit, commit, commit
Permit EFI boot with MMU and caches on commit, commit, commit, commit, commit, commit
10.2. x86
KVM: pmu: Introduce masked events to the pmu event filter commit
KVM: Add support running nested Microsoft Hypervisor commit, commit, commit, commit
kvm: Support AMD Automatic IBRS commit, commit, commit, commit, commit, commit, commit
- platform
Add new systems and features for Nvidia systems commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dell-ddv: Various driver updates commit, commit, commit, commit, commit, commit
Add TPMI support commit, commit, commit, commit, commit, commit, commit
chrome: cros_ec_typec: VDM support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
gigabyte-wmi: Add support for A320M-S2H V2 commit
gigabyte-wmi: add support for B650 AORUS ELITE AX commit
gigabyte-wmi: add support for X570S AORUS ELITE commit
nvidia-wmi-ec-backlight: Add force module parameter commit
Add Hyper-v extended hypercall support in KVM commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf: Add PMU_FORMAT_ATTR_SHOW commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) resctrl: Support for AMD QoS new features: Slow Memory Bandwidth Allocation (SMBA) and Bandwidth Monitoring Event Configuration (BMEC) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
crypto: implement aria-avx2 commit
crypto: implement aria-avx512 commit
Support extended MCA_ADDR address on SMCA systems commit
perf: Add Meteor Lake support commit
Add model number for Intel Arrow Lake processor commit
tsc: Add option to force frequency recalibration with HW timer commit
perf vendor events intel: Add Emerald Rapids commit
perf vendor events power10: Add JSON metric events to present CPI stall cycles in powerpc commit
powercap: RAPL: Add Power Limit4 support for Meteor Lake SoC commit
powercap: idle_inject: Support 100% idle injection commit
powercap: intel_rapl: add support for Emerald Rapids commit
powercap: intel_rapl: add support for Meteor Lake commit
intel_idle: add Emerald Rapids Xeon support commit
Add support for a new x86 instruction - LKGS - Load kernel GS which is part of the FRED infrastructure commit, commit, commit, commit, commit
10.3. LoongArch
Add kprobes support commit
Add kprobes on ftrace support commit
Add kretprobes support commit
ptrace: Add hardware single step support commit
ptrace: Add function argument access API commit
Add kernel relocation and KASLR support commit, commit, commit, commit, commit
Add single kernel image implementation for kdump commit, commit
Add hardware breakpoints/watchpoints support commit
10.4. RISC-V
allwinner: Add Sipeed Lichee RV devicetrees commit
KVM perf support commit, commit, commit, commit, commit, commit, commit, commit
Allwinner D1/D1s platform support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add infrastructure to allow different str* implementations commit
Add a devicetree for the Aldec PolarFire SoC TySoM commit, commit, commit
Support bpf trampoline for RV64 commit, commit, commit, commit
10.5. PowerPC
RTAS maintenance commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
pSeries dynamic secure boot secvar interface + platform keyring loading 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
pci: Add option for using pci_to_OF_bus_map commit
10.6. S390
tty3270: add support for VT100 graphics escape commit
tty3270: add support for background color commit
tty3270: add support for graphic escape commit
add support to nolibc and rcutorture commit, commit, commit, commit, commit
lib/zlib: Set of s390 DFLTCC related patches for kernel zlib commit, commit, commit, commit
KVM: Extend MEM_OP ioctl by storage key checked cmpxchg commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for RDP (Reset DAT-Protection) commit
cpumf: support user space events for counting commit
Support bpf trampoline for s390x 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
10.7. Alpha
Lazy FPU switching commit
10.8. IA-64
Remove Intel compiler support commit
10.9. M68k
Add kernel seccomp support commit
10.10. MIPS
BCM47XX: Add support for Linksys E2500 V3 commit
10.11. UM
Support LTO commit
11. Drivers
11.1. Graphics
New DRM accel driver for Intel VPU commit, commit, commit, commit, commit, commit, commit
- Intel
Remove the obsolete driver-i810 commit
Remove the obsolete driver-mga commit
Remove the obsolete driver-r128 commit
Remove the obsolete driver-savage commit
Remove the obsolete driver-sis commit
Remove the obsolete driver-tdfx commit
Remove the obsolete driver-via commit
- bridge
- panel
Renesas V4H DSI & DP output support commit, commit, commit, commit, commit, commit, commit
renesas: Add new pixel formats commit, commit, commit, commit, commit, commit, commit
Analog TV Improvements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- habanalabs
Enable AdaptiveSync in DC interface commit
Enable GPO dynamic control support for SMU13.0.0 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for WINDOW3D profile mode on SMU13.0.0 commit, commit
DC Patches Feb 13, 2023 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
DC Patches Jan 25, 2023 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
DC Patches December 12 2022 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
DSC Electric Boogaloo for sm8[12]50 commit, commit, commit, commit, commit, commit, commit, commit
Add support for SM8550 commit, commit, commit, commit, commit
Add support for SM8450 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add SC8280XP support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add data-lanes and link-frequencies to dp_out endpoint commit, commit, commit, commit
a2xx: support loading legacy (iMX) firmware commit
- etnaviv
- ili9486
- vc4
drm/gud: Use the shadow plane helper commit, commit, commit, commit, commit, commit
simpledrm: Support system memory framebuffers commit, commit, commit, commit, commit, commit, commit
tiny: panel-mipi-dbi: Support separate I/O voltage supply commit, commit, commit
backlight: Remove pxa tosa support commit
backlight: ktz8866: Add support for Kinetic KTZ8866 backlight commit
- fbdev
gpu: host1x: External timeout/cancellation for fences commit
11.2. Power Management
efi/earlycon: Speed up scrolling by disregarding empty space commit
efi: zboot: Use EFI protocol to remap code/data with the right attributes commit
efi: Enable BTI for EFI runtimes services commit, commit, commit
efi: Support ESRT under Xen commit, commit, commit, commit, commit
utils: Add Cezanne to the list for forcing StorageD3Enable commit
ACPI: tables: Add support for NBFT commit
tools/power turbostat: Introduce support for EMR commit
- thermal
intel: Introduce Intel TCC library commit
tsens: Support using nvmem cells for calibration data commit
tsens: Support using nvmem cells for msm8974 calibration commit
imx_sc_thermal: Add iMX8QM sensors commit
intel: intel_pch: Add support for Wellsburg PCH commit
mtk: Add support for MT7986 and MT7981 commit
intel: int340x: Add production mode attribute commit
intel: powerclamp: Use powercap idle-inject feature commit
intel: powerclamp: Add two module parameters commit
rcar_gen3: Add support for R-Car V4H commit
mediatek: Add the Low Voltage Thermal Sensor driver commit
st: Remove syscfg based driver commit
11.3. Storage
ufs: qcom: Add HS-G4 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
scsi: qla2xxx: Add option to disable FC2 Target support commit
ata: libata: exclude FUA support for known buggy drives commit
ata: pata_parport: add driver (PARIDE replacement) commit
pata: remove samsung_cf driver commit
ata: remove palmld pata driver commit
Enable pcpu bio-cache for IRQ uring-passthru I/O commit, commit
11.4. Drivers in the Staging area
r8188eu: delete driver commit
media: meye: remove this deprecated driver commit
media: stkwebcam: remove deprecated driver commit
media: cpia2: remove deprecated driver commit
media: fsl-viu: remove deprecated driver commit
media: vpfe_capture: remove deprecated davinci drivers commit
media: zr364xx: remove deprecated driver commit
media: tm6000: remove deprecated driver commit
media: atomisp: ov2680: Add exposure and gain controls commit
media: atomisp: ov2680: Drop custom ATOMISP_IOC_S_EXPOSURE support commit
media: remove davinci vpfe_capture driver commit
11.5. Networking
tools: ynl: more docs and basic ethtool specification support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Bluetooth: btintel: Set Per Platform Antenna Gain(PPAG) commit
Bluetooth: btusb: Add VID:PID 13d3:3529 for Realtek RTL8821CE commit
Bluetooth: btusb: Add new PID/VID 0489:e0f2 for MT7921 commit
IB/mlx5: Add support for 400G_8X lane speed commit
RDMA/hns: Support cqe inline in user space commit
bcmgeSupport wake-up from s2idle commit
bnxt_en: Add auxiliary driver support commit
can: ems_pci: Add Asix AX99100 definitions commit
can: rcar_canfd: Add support for R-Car Gen4 commit
dsa: felix: add support for MFD configurations commit
dsa: mv88e6xxx: Enable PTP receive for mv88e6390 commit
dsa: mv88e6xxx: mac-auth/MAB implementation commit
dsa: ocelot: add external ocelot switch control commit
dsa: microchip: add support for credit based shaper commit, commit
Add PLCA RS support and onsemi NCN26000 commit, commit, commit, commit, commit
amd-xgbe: add support for 2.5GbE and rx-adaptation commit, commit
amd-xgbe: Add support for 10 Mbps speed commit
dsa: microchip: add PTP support for KSZ9563/KSZ8563 and LAN937x commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
RDMA/irdma: Add support for dmabuf pin memory regions commit
Add support for the the vsc7512 internal copper phys commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
can: peak_usb: Introduce configurable CAN channel ID commit, commit, commit, commit, commit, commit, commit, commit
Add EEE support for KSZ9477 switch family commit, commit, commit, commit, commit, commit, commit, commit, commit
dsa: microchip: add PTP support for KSZ9563/KSZ8563 and LAN937x commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
e1000e: Enable Link Partner Advertised Support commit
enetc: detect frame preemption hardware capability commit
fealnx: bring back this old driver commit
ethermtk_eth_soc: introduce mtk_hw_warm_reset support commit
- etherti
ice: update xdp_features with xdp multi-buff commit
ice: use GNSS subsystem instead of TTY commit
Intel Wired LAN Driver Updates 2023-01-19 (ice) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Intel Wired LAN Driver Updates 2023-02-14 (ice) commit, commit, commit, commit, commit
ice: add XDP mbuf support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
lan966x: Add VCAP debugFS support commit
lan966x: Add support for TC flower filter statistics commit
libwx: Wangxun interrupt and RxTx support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ipa: remaining IPA v5.0 support commit, commit, commit, commit, commit, commit, commit, commit
mdio: add amlogic gxl mdio mux support commit
micrel: Add PHC support for lan8841 commit
micrel: Add support for lan8841 PHY commit
micrel: Cable Diagnostics feature for lan8841 PHY commit
microchip: sparx5: Adding Sparx5 IS0 VCAP support commit, commit, commit, commit, commit, commit, commit, commit
microchip: sparx5: Adding Sparx5 ES0 VCAP support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support to offload macsec using netlink update commit, commit
microchip: sparx5: Improve locking in the VCAP API commit, commit, commit, commit, commit
microchip: sparx5: Adding Sparx5 ES2 VCAP support commit, commit, commit, commit, commit, commit, commit
microchip: Add support for two classes of VCAP rules commit, commit, commit, commit, commit, commit, commit, commit
microchip: Add support for PSFP in Sparx5 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
microchip: Introduce new DCB rewrite table commit, commit, commit, commit, commit, commit
microchip: vcap: Add tc flower keys for lan966x commit
mlx5 updates 2023-01-30 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mlx5 updates 2023-01-10 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mlx5 IPsec RoCEv2 support and netdev events fixes in RDMA commit, commit, commit, commit, commit, commit, commit, commit
mlx5 updates 2023-01-18 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mlx5 updates 2023-02-10 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mlx5 updates 2023-02-15 commit, commit, commit, commit, commit, commit, commit, commit, commit
mlx5 updates 2023-02-04 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mlxsw: Add support of latency TLV commit, commit, commit, commit, commit, commit
mlxbf_gige: add BlueField-3 support commit, commit, commit, commit
add support for per action hw stats commit, commit, commit, commit, commit, commit, commit, commit, commit
- nfp
ngbe: Add ngbe mdio bus driver commit
phy: Add driver for Motorcomm yt8531 gigabit ethernet phy commit
phy: add genphy_c45_ethtool_get/set_eee() support commit
phylink: support validated pause and autoneg in fixed-link commit
usb: qmi_wwan: add Telit 0x1080 composition commit
tsnep: XDP support commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for PSFP in Sparx5 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
sfc: devlink support for ef100 commit, commit, commit, commit, commit, commit, commit, commit
Add eqos and fec support for imx93 commit, commit, commit, commit, commit, commit, commit
ath12k: driver for Qualcomm Wi-Fi 7 devices commit
Wangxun interrupt and RxTx support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
wangxun: Add the basic ethtool interfaces commit
virtio-net: support multi buffer xdp commit, commit, commit, commit, commit, commit, commit, commit, commit
brcmfmac: pcie: Add IDs/properties for BCM4355 commit
brcmfmac: pcie: Add IDs/properties for BCM4377 commit
iwlwifi: updates intended for v6.3 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ath11k: Add support for IPQ5018 commit, commit, commit, commit, commit, commit, commit
mt76: enable page_pool stats commit
mt76: mt7921: add ack signal support commit
mt76: mt7921: add support to update fw capability with MTFG table commit
mt76: mt7921u: add support for Comfast CF-952AX commit
rtl8xxxu: Support new chip RTL8188EU commit
Add IPQ5018 compatible entry for ath11k commit, commit, commit, commit, commit, commit, commit
iwlwifi: updates intended for v6.3 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mt76: add flexible polling wait-interval support commit, commit
rtw89: add BTC format version to support newer firmware and features commit, commit, commit, commit, commit, commit, commit
rtw89: coex: second patchset to adopt BTC version commit, commit, commit, commit, commit, commit, commit
rtw89: coex: the last patchset to adapt BTC version commit, commit, commit, commit, commit, commit, commit, commit
rtl8xxxu: Register the LED and make it blink commit, commit, commit, commit
mt7996: Add EHT support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
11.6. Audio
fireface: update UAPI for data of knob control commit
fireface: implement message parser for Fireface 400 commit
hda: realtek: Improve support for Dell Precision 3260 commit
hda: cs35l41: Enable Amp High Pass Filter commit
- ASoC
amd: yc: Add a module parameter to influence pdm_gain commit
amd: renoir: Add a module parameter to influence pdm_gain commit
amd: ps: Add a module parameter to influence pdm_gain commit
codecs: Add support for the Infineon PEB2466 codec commit
mediatek: mt8188: support etdm in platform driver commit
fsl_xcvr: Add support for i.MX93 platform commit
SOF: ipc4-pcm: Implement pipeline trigger reference counting commit
The Iron Device SMA1303 is a boosted Class-D audio amplifier commit
SOF: mediatek: Support mt8188 platform commit
rsnd: add R-Car Gen4 Sound support commit
amd: acp: Add new cpu dai's in machine driver commit
amd: acp: Add i2s tdm support in machine driver commit
amd: acp: Enable i2s tdm support for skyrim platforms commit
SOF: ipc4-topology: add buffer type support commit
codecs: tas5720: add support for TAS5720A-Q1 (automotive) variant commit
codecs: Add support for the Renesas IDT821034 codec commit
cs42l42: Add SoundWire support commit
pxa: remove unused board support commit
samsung: remove unused drivers commit
remove unused davinci support commit
remove unused ep93xx files commit
SOF: core/ipc4/mtl: Add support for PCM delay reporting commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for DSP volume controls commit, commit, commit, commit
SOF: ipc4-topology: No need to unbind routes within a pipeline commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
nau8822: add speaker Bridge Tied Output commit, commit, commit
Add tdm support in acp machine driver commit, commit, commit, commit, commit
mediatek: common: add SMC ops and SMC CMD commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
codecs: Add Awinic AW88395 audio amplifier driver commit, commit, commit, commit, commit
SOF: Intel/ipc4: Support for low power playback (d0i3) commit, commit, commit, commit, commit
samsung: fsd: audio support for FSD SoC commit, commit, commit, commit, commit
Add support to compress API to ipc_msg_data / set_stream_data_offset commit, commit, commit, commit
11.7. Tablets, touch screens, keyboards, mouses
cap11xx: add support for cap1203, cap1293 and cap1298 commit
cros_ec_keyb: add 3 buttons for monitor function commit
goodix: add Lenovo Yoga Book X90F to nine_bytes_report DMI table commit
mtk-pmic-keys: add MT6357 support commit
xpad: add 8BitDo Pro 2 Wired Controller support commit
Remove davinci keyboard driver commit
Remove pxa930_rotary keyboard driver commit
Remove pxa930_trkball driver commit
Remove s3c24xx touchscreen driver commit
Remove zylonite touchscreen driver commit
- HID
(FEATURED Introduce eBPF support for HID devices 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 Mapping for System Microphone Mute commit
Add support for Logitech G923 Xbox Edition steering wheel commit
evision: Add preliminary support for EVision keyboards commit
hid-steam: Add Steam Deck support commit
hid-steam: Add rumble on Deck commit
input: map battery system charging commit
logitech-hidpp: Add Signature M650 commit
logitech-hidpp: Add support for Logitech MX Master 3S mouse commit
logitech-hidpp: Hard-code HID++ 1.0 fast scroll support commit
topre: Add support for 87 keys Realforce R2 commit
sony: remove DualShock4 support commit
uclogic: Add support for XP-PEN Deco PRO SW and MW commit, commit, commit, commit, commit, commit
11.8. TV tuners, webcams, video capturers
v4l: routing and streams support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
i2c: Add driver for OmniVision OV8858 commit
i2c: IMX296 camera sensor driver commit
i2c: add imx415 cmos image sensor driver commit
i2c: imx219: Support four-lane operation commit
i2c: ov5675: add .get_selection support commit
imx-pxp: Add media controller support commit
imx-pxp: add support for i.MX7D commit
davinci: remove vpbe support commit
media: i2c: max9286: Small new features commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
i2c: ov5670: OF support, runtime_pm, regulators commit, commit, commit, commit, commit, commit, commit, commit, commit
renesas: Add new pixel formats commit, commit, commit, commit, commit, commit, commit
11.9. Serial
fsl_lpuart: improve RXWATER setting and add imx8ulp support commit, commit, commit, commit, commit, commit
Enhance definition of DFH and use enhancements for UART driver commit, commit, commit, commit
8250_pci1xxxx: Add driver for the pci1xxxx's quad-uart function commit, commit, commit, commit
11.10. Universal Serial Bus
dwc3: pci: add support for the Intel Meteor Lake-M commit
dwc3: pci: add support for the Intel Meteor Lake-S commit
fotg210-udc: Implement VBUS session commit
gadget: Add support for RZ/V2M USB3DRD driver commit
gadget: add WebUSB landing page support commit
gadget: remove s3c24xx drivers commit
gadget: tegra-xudc: Add Tegra234 support commit
gadget: udc: add Renesas RZ/N1 USBF controller support commit
gadget: udc: renesas_usb3: Add role switch support for RZ/V2M commit
host: xhci-plat: Add reset support commit
host: xhci-tegra: Add Tegra234 XHCI support commit
misc: onboard_usb_hub: add Genesys Logic GL852G hub support commit
misc: onboard_usb_hub: add VIA LAB VL817 hub support commit
msunxi: add support for the F1C100s MUSB controller commit
phy: remove phy-isp1301-omap driver commit
Remove ohci-tmio driver commit
serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs commit
serial: option: add Quectel RM500U-CN modem commit
serial: option: add Telit FE990 compositions commit
serial: option: add support for VW/Skoda "Carstick LTE" commit
typec: hd3ss3220: Add polling support commit
typec: ucsi: Register USB Power Delivery Capabilities commit
xhci: host: Add Renesas RZ/V2M SoC support commit
xhci: tegra: USB2 pad power controls commit
Add device-tree support for Cypress CYPD4226 commit, commit, commit, commit, commit
Add XU support to UVC Gadget commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
UVC Gadget: Extend color matching support commit, commit, commit, commit, commit, commit, commit
typec: altmodes/displayport: Add hpd sysfs attribute commit
typec: pd: Remove usb_suspend_supported sysfs from sink PDO commit, commit
11.11. Serial Peripheral Interface (SPI)
intel: Add support for controllers commit
bcm63xx-hsAdd prepend mode support commit
bcmbca-hsAdd driver for newer HSSPI controller commit
spidev: Add Silicon Labs EM3581 device compatible commit
spidev: Add Silicon Labs SI3210 device compatible commit
spi-geni-qcom: Add support for SE DMA mode commit
bcm63xx-hsAdd polling mode support commit
Remove omap 100K driver commit
Remove s3c24xx driver commit
11.12. Watchdog
11.13. CPU Frequency scaling
Implement AMD Pstate EPP Driver commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
loongson1: Delete obsolete driver commit
Remove sa1100 driver commit
Remove s3c24xx drivers commit
11.14. Voltage, current regulators, power capping, power supply
- power
supply: Introduce Qualcomm PMIC GLINK power supply commit
reset: add Odroid Go Ultra poweroff driver commit
supply: bq25890: Add HiZ mode support commit
supply: bq25890: Support boards with more then one charger IC commit
supply: bq25890: Add new linux,iinlim-percentage property commit
supply: bq25890: Add support for having a secondary charger IC commit
reset: syscon-reboot: Add support for specifying priority commit
supply: rt9471: Add Richtek RT9471 charger driver commit
supply: rt9467: Add Richtek RT9467 charger driver commit
Remove s3c adc battery driver commit
Remove tosa_battery driver commit
Remove z2_battery driver commit
Remove pda_power supply driver commit
regulator: Introduce Maxim MAX20411 Step-Down converter commit
11.15. Real Time Clock (RTC)
abx80x: Add nvmem support commit
rv3028: add ACPI support commit
rv3032: add ACPI support commit
bbnsm: Add the bbnsm rtc support commit
pcf85363: add support for the quartz-load-femtofarads property commit
Remove v3020 driver commit
11.16. Pin Controllers (pinctrl)
qcom: add the tlmm driver sa8775p platforms commit
qcom: pinctrl-sm8550-lpass-lpi: add SM8550 LPASS commit
qcom: Introduce IPQ5332 TLMM driver commit
add mt7981 pinctrl driver commit
intel: Add ~4k bias support commit
qcom: Add QDU1000/QRU1000 pinctrl driver commit
qcom: Add SM8550 pinctrl driver commit
qcom: spmi-gpio: add support for pm8550 & pmr735d gpio control commit
qcom: Add support for i2c specific pull feature commit
Remove s3c24xx driver commit
11.17. Multi Media Card (MMC)
sdhci-of-dwcmshc: enable host V4 support for BlueField-3 SoC commit
sdhci-pxav2: add initial support for PXA168 V1 controller commit
jz4740: Add support for vqmmc power supply commit
starfive: Add sdio/emmc driver support commit
Remove tmio_mmc driver commit
Remove s3cmci driver commit
Remove cns3xxx driver commit
11.18. Memory Technology Devices (MTD)
ubi: fastmap: Add fastmap control support for module parameter commit
remove tmio_nand driver commit
spinand: Add support for AllianceMemory AS5F34G04SND commit
nand: ecc-mtk: Add ECC support fot MT7986 IC commit
11.19. Industrial I/O (iio)
accel: st_accel: Add LSM303C commit
adc: add ADC driver for the TI LMP92064 controller commit
adc: add imx93 adc support commit
adc: ti-ads7924: add Texas Instruments ADS7924 driver commit
dac: ad5686: Add support for AD5337 commit
dac: add support for max5522 commit
imu: st_lsm6dsx: add 'mount_matrix' sysfs entry to gyro channel commit
light: vcnl4000: Add interrupt support for vcnl4040 commit
magnetometer: add ti tmag5273 driver commit
magnetometer: st_magn: Add LSM303C commit
11.20. Multi Function Devices (MFD)
fpga: m10bmc-sec: Add support for N6000 commit
intel-m10-bmc: Add PMCI driver commit
ocelot: add external ocelot switch control commit
Remove htc-pasic3 driver commit
Remove toshiba tmio drivers commit
Remove toshiba tmio drivers commit
Remove ucb1400 support commit
11.21. Inter-Integrated Circuit (I2C + I3C)
Add GXP SoC I2C Controller commit
cht-wc: Add charger-chip info for the Lenovo Yoga Tab 3 YT3-X90F commit
designware: add a new bit check for IC_CON control commit
gpio: Add support on ACPI-based system commit
ls2x: Add driver for Loongson-2K/LS7A I2C controller commit
xiic: Add SCL frequency configuration support commit
11.22. Hardware monitoring (hwmon)
aquacomputer_d5next: Add Aquacomputer Aquaero sensors commit, commit, commit, commit, commit, commit
aquacomputer_d5next: Add support for Aquacomputer Aquastream Ultimate commit
aquacomputer_d5next: Add support for Aquacomputer Poweradjust 3 commit
aquacomputer_d5next: Add support for reading calculated Aquaero sensors commit
asus-ec-sensors: add zenith ii extreme alpha commit
ftsteutates: Add support for fanX_fault attributes commit
gxp-fan-ctrl: Add GXP fan controller commit
Add initial NXP MC34VR500 PMIC monitoring support commit
intel-m10-bmc-hwmon: Add N6000 sensors commit
it87: Add new chipset IT87952E commit
ltc2945: Allow setting shunt resistor commit
nct6775: B650/B660/X670 ASUS boards support commit
nzxt-smart2: Add device id commit
oxp-sensors: Add AYANEO AIR and AIR Pro commit
pmbus/max16601: Add support for MAX16600 commit
pmbus/mpq7932: Add a support for mpq7932 Power Management IC commit
pmbus/tda38640: Add driver for Infineon TDA38640 Voltage Regulator commit
remove s3c driver commit
11.23. General Purpose I/O (gpio)
Remove iop driver commit
11.24. Leds
11.25. DMA engines
dw-edma: Add RP/EP local DMA controllers support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dw-edma: Rename debugfs dentry variables to 'dent' commit
imx-sdma: support hdmi in sdma commit
Add support for AM62A SoC DMAs commit, commit, commit, commit, commit
Remove s3c24xx driver commit
11.26. Hardware Random Number Generator (hwrng)
starfive: Add TRNG driver for StarFive SoC commit
11.27. Cryptography hardware acceleration
aspeed: Add ACRY RSA driver commit
hisilicon - supports device isolation feature commit, commit, commit
stm32/hash: Support Ux500 hash commit
ux500/hash: delete driver commit
11.28. PCI
Add ACS quirk for Wangxun NICs commit
Avoid FLR for SolidRun SNET DPU rev 1 commit
dwc: Add Root Port and Endpoint controller eDMA engine support commit
qcom: Add IPQ8074 Gen3 port support commit
qcom: Add SM8350 support commit
Add i.MX PCIe EP mode support commit, commit, commit, commit, commit, commit, commit, commit
11.29. Thunderbolt
thunderbolt: Add support for DisplayPort bandwidth allocation mode commit, commit, commit, commit, commit, commit, commit, commit
11.30. Clock
imx: add clk-gpr-mux driver commit
mediatek: add MT7981 clock support commit
clk: qcom: Add clocks for the QDU1000 and QRU1000 SoCs commit, commit
clk: qcom: Add support for SM8550 commit, commit, commit, commit, commit
clk: qcom: Add DISPCC driver for SM8550 commit, commit, commit
clk: qcom: msm8996: add support for the CBF clock commit, commit, commit, commit
- qcom: add support for sa8775p-ride
qcom: add the GCC driver for sa8775p commit
qcom: add the driver for the MSM8996 APCS clocks commit
renesas: r8a779g0: Add CAN-FD clocks commit
vc5: Add support for 5P49V60 commit
Remove davinci dm3xx drivers commit
Remove s3c24xx driver commit
samsung: remove s3c24xx specific pll bits commit
11.31. PHY ("physical layer" framework)
Add USB/DP combo PHY config for SM6350 commit, commit, commit
sm8550: Add PCIe HC and PHY support commit, commit, commit, commit, commit, commit, commit, commit
PCI/phy: Add support for PCI on sm8350 platform commit, commit, commit, commit, commit, commit
ufs: qcom: Add HS-G4 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
phy: qualcomm: Add UFS support for SM8550 commit, commit, commit, commit, commit, commit, commit
Add Qualcomm SM6115 and SM4250 USB3 PHY support commit, commit, commit
phy: qcom: qmp-combo: add SM8350 & SM8450 support for combo USB3/DP PHY commit, commit
qcom-qmp: Add SM6125 UFS PHY support commit
qcom: Add QCOM SNPS eUSB2 repeater driver commit
qcom: phy-qcom-snps-eusb2: Add support for eUSB2 repeater commit
sun4i-usb: add support for the USB PHY on F1C100s SoC commit
tegra: xusb: Add Tegra234 support commit
tegra: xusb: Support USB role default mode commit
ti: j721e-wiz: Add support to enable LN23 Type-C swap commit
11.32. EDAC (Error Detection And Correction)
zynqmp: Add EDAC support for Xilinx ZynqMP OCM commit
i10nm: Add driver decoder for Sapphire Rapids server commit
Intel EDAC driver updates for "near" memory and new CPUs commit, commit, commit, commit, commit
11.33. Various
cxl: Introduce HDM decoder emulation from DVSEC range registers commit, commit, commit, commit, commit, commit, commit
cxl: Process event logs commit, commit, commit, commit, commit, commit, commit, commit
CXL RAM and the 'Soft Reserved' => 'System RAM' default commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
extcon: intel-cht-wc: Add support for Lenovo Yoga Tab 3 Pro YT3-X90F commit
fpga: dfl: add basic support for DFHv1 commit
- interconnect
iommu/vt-d: Support performance monitoring for IOMMU commit, commit, commit, commit, commit, commit, commit
iommu/exynos: Add fault handling on SysMMU v7 commit, commit
iommu: dart: Apple t8110 DART support commit, commit, commit, commit, commit, commit, commit
irqchip: remove davinci aintc driver commit
mailbox: qcom-apcs-ipc: add IPQ5332 APSS clock support commit
misc: pci_endpoint_test: Add i.MX8 PCIe EP device support commit
parport: remove ax88796 driver commit
pcmcia: remove unused pxa/sa1100 drivers commit
remoteproc: k3-c7x: Add support for C7xv DSP on AM62A SoC commit
remoteproc: qcom: Add support for MSM8953 ADSP commit, commit, commit, commit, commit
remoteproc: qcom_q6v5_pas: add support for SM8550 adsp, cdsp & mpss commit, commit, commit, commit, commit, commit
remoteproc: qcom_q6v5_mss: Add MSM8909 and MSM8953 commit, commit, commit, commit, commit, commit, commit
tpm_crb: Add support for CRB devices based on Pluton commit
ifcvf/vDPA implement features provisioning commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
vdpa:/mlx5: Add debugfs subtree commit, commit, commit, commit, commit, commit, commit, commit
features provisioning fixes and mlx5_vdpa support commit, commit, commit, commit, commit
virtio_ring: per virtqueue DMA device commit, commit, commit, commit, commit
Vendor stats support in vdpasim_net commit, commit, commit, commit
vfio/mlx5: Few improvements in the migration area of mlx5 driver commit, commit, commit
vfio: Support VFIO_NOIOMMU with iommufd commit
w1: remove ds1wm driver commit
misc: Add support for TMR Manager and Inject IP commit, commit, commit, commit
12. List of Pull Requests
13. Other news sites
LWN merge window part 1, part 2, development statistics.
Phoronix's feature overview