Size: 100560
Comment: various bits
|
← Revision 407 as of 2025-07-27 11:27:10 ⇥
Size: 1055
Comment: Not released, but ready
|
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: |
==== 2.6.14 and older ==== * See Linux26Changes, this page "only" tracks the current stable and development releases. |
You can discuss the latest Linux kernel changes on the [[http://forum.kernelnewbies.org/list.php?4|New Linux Kernel Features Forum]]. |
Line 6: | Line 7: |
==== 2.6.16 ==== * Still not released, see [#development below] ==== Latest stable release: 2.6.15 ==== * Released 3 January, 2006 (fifteen years and a day since Linus bought the machine that got Linux started) [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.15 changelog] * '''Kernel Core changes''' * VFS changes: The "shared subtree" patches have been merged. Shared subtree semantics provide the building blocks for features like per-user-namespace, "files as directories" and versioned filesystems [http://lwn.net/Articles/159077/ Detailed LWN article], [http://www.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://www.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://www.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://www.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://www.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 presence of shared mounts [http://www.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://www.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 presence of shared mounts [http://www.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://www.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 large 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)] * The page table scalability changes caused a [http://marc.theaimsgroup.com/?l=linux-kernel&m=113572611432619&w=2 small regression] with respect to maximum latency. If such regression affects you stick with 2.6.14 until it's [http://marc.theaimsgroup.com/?l=linux-kernel&m=113581076009061&w=2 fixed in future releases] * .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 microoptimizes this by moving 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://www.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 infrastructure. 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)] * Add vm_insert_page() to use for drivers, which need to insert individual pages into a user vma without the hassles of PAGE_RESERVED [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a145dd411eb28c83ee4bb68b66f62c326c0f764e (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 - necessary for multithreaded environments with libraries using cmpxchg [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=53e86b91b7ae66d4c2757195cbd42e00d9199cf2 (commit)] * 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)] * x86-64 * x86-64: Add a new 4GB GFP_DMA32 zone between the GFP_DMA and GFP_NORMAL zones. Full details in the commit link [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a2f1b424900715ed9d1699c3bb88a434a2b42bc0 (commit)] * x86-64: Support for AMD specific MCE Threshold. DRAM Errors Threshold Register realized under AMD K8 Rev F, this register is used to count correctable and uncorrectable ECC errors that occur during DRAM read operations. The user may interface through sysfs files in order to change the threshold configuration [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89b831ef8bf5cfbb357dbc0a2e07700d7f20eec5 (commit)] * x86-64: Support ULI/ALI 1689 bridge [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=870b7681cd3f867c1ffc8d7fbe9b22216e73a536 (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)] * ppc * 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 mechanism 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)] * 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)] * Arm * 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)] * 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. * Mips * 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)] * IA64: 4-level page table support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=837cd0bdf54dd954cd6aa43d250f75ab5db79617 (commit)] * SH: Superhyway support for SH4-202 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d5cb9783536a41df9f9cba5b0a1d78047ed787f7 (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 appropriately. 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 notification 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 handling. The interface is fully binary compatible with the old interface towards userspace. Besides type safety, this interface features attribute validation capabilities, simplified message construction, 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, necessary 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)] * 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)], CS5535 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f5b2d8b4b5146fa2d70fec7d514fa0bd64636958 (commit)] and M3A-2170(Mappi-III) board on the m32r architecture [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ad09d583106fadfdf751926107cfe35fba6bdbd4 (commit)] * IDE support on the Sibyte Swarm evaluation boards and it's relatives for the BCM1250 family of system on a chip [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4237f229018ccf937578dee97565a49d712809e8 (commit)] * IDE via82cxxx driver: support multiple controllers in the same system [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7462cbff7d4c2dc0d182613fb4e801efb29b90ac (commit)] and remove /proc/via file: The same date can be got from this userspace program: http://www.reactivated.net/software/viaideinfo/ [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=861e76a8ab7ba64a74c567fa8c4d1d38c4dfdd24 (commit)]. Also, add support for VIA VT6410 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4f1d774aadfc5a6ed1545dca180f66ab6d0f543d (commit)] * sis5513: enable ATA133 for the sis 965 southbridge [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=14351f8e573442e2437d4b177fa10075aaefd5c9 (commit)] * Input: add Wistron driver present in fujitsu-siemens Amilo Pro V2000, Xeron Sonicpro X 155G and Acer Aspire 1500 notebooks. The driver also allows enabling/disabling the embedded wireless NIC (using the "Wifi" button) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5fc1468029e2a4da90ded1e0e2cdd94fbdf83bac (commit)] * e1000: Implementation of the multi-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)] * 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)] * 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://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.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 [[Anchor(development)]] === Under development === ==== 2.6.16 ==== * /!\ '''STILL NOT RELEASED!''' /!\ * '''Kernel Core changes''' * New features/frameworks * *at syscalls: introduce in total 13 new system calls which take a file descriptor/filename pair instead of a single file name. These functions (sys_openat, sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_newfstatat, sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat, sys_fchmodat, sys_faccessat) are needed to implement race-free filesystem traversal, they are necessary to implement a virtual per-thread current working directory (multi-threaded backup software, etc). Glibc today implements those interfaces using the /proc/self/fd magic, but this trick is rather expensive, and other operative systems [http://docs.sun.com/app/docs/doc/816-0212/6m6nd4nc7?a=view like OpenSolaris already have them]. In the GNU world, coreutils are already using them, and will have lots of other users too - every program which is walking the filesystem tree will benefit [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5590ff0d5528b60153c0b4e7b771472b5a95e297 (commit)]. Add support for them in i386 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4f085507231e8003c66ed12e38c73b76e938ee95 (commit)] and x86-64 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a60fc5190a31d98508ea6a76f74217f4104e74b7 (commit)] * Add pselect/ppoll system call implementation [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f72949f679df06021c9e43886c9191494fdb007 (commit)]. * Add unshare() system call. The linux kernel implements threads in a very simple and lightweight, handling them just as normal processes which happen to share resource with other threads (just like Windows and Solaris in recent Solaris versions). The clone() system call already allows to create new processes which can share different attributes (file descriptors, filesystem information, filesystem namespace, signal handlers, address space...). The unshare() system call adds a primitive to the Linux thread model that allows threads to selectively 'unshare' any resources that were being shared at the time of their creation. unshare() was [http://marc.theaimsgroup.com/?l=linux-kernel&m=96753366711611&w=2 conceptualized by Alexander Viro] in August of 2000. unshare() augments the usefulness of Linux threads for applications that would like to control shared resources without creating a new process. unshare() is a natural addition to the set of available primitives on Linux that implement the concept of process/thread as a virtual machine. For more info check the [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/unshare.txt Documentation]. [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cf2e340f4249b781b3d2beb41e891d08581f0e10 (commit)], implementation for unsharing file descriptors [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a016f3389c06606dd80e687942ff3c71d41823c4 (commit)], vm structure [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a0a7ec308f1be5957b20a1a535d21f683dfd83f0 (commit)], filesystem namespace [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=741a295130606143edbf9fc740f633dbc1e6225f (commit)], filesystem info [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=99d1419d96d7df9cfa56bc977810be831bd5ef64 (commit)]. [http://lwn.net/Articles/135321/ (LWN article)] * New 'mutex' locking primitive. Until now, there was two main types of locks: spinlocks and semaphores. Mutexes are like a spinlock, but you may block holding a mutex. If you can't lock a mutex, your task will suspend itself, and be woken up when the mutex is released. This means the CPU can do something else while you are waiting. There are many cases when you simply can't sleep and so have to use a spinlock instead. Semaphores can be and have been (ab)used for this same purpose, but mutexes are simpler than semaphores, and have some advantages. You cannot use mutexes the same way you can use semaphores though, e.g. they cannot be used from an interrupt context, nor can they be unlocked from a different context that which acquired it. Read the [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/mutex-design.txt documentation], or (more interesting) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=kernel/mutex.c kernel/mutex.c]; it also features some extensive debugging facilities in [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=kernel/mutex-debug.c kernel/mutex-debug.c] [http://lwn.net/Articles/165039/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6053ee3b32e3437e8c1e72687850f436e779bd49 (commit)] * High resolution timers. In contrast to the low-resolution timeout API implemented in kernel/timer.c, hrtimers provide finer resolution and accuracy depending on system configuration and capabilities. These timers are currently used for: itimers, POSIX timers, nanosleep and precise in-kernel timing. For more details read the [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/hrtimers.txt documentation] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c0a3132963db68f1fbbd0e316b73de100fee3f08 (commit)] * Swap migration. [http://lwn.net/Articles/157066/ (LWN article)] Swap migration allows the moving of the physical location of pages between nodes in a NUMA system while the process is running, through swap. This means that the virtual addresses that the process sees do not change. However, the system rearranges the physical location of those pages. The main intent of page migration patches here is to reduce the latency of memory access by moving pages near to the processor where the process accessing that memory is running. The patchset allows a process to manually relocate the node on which its pages are located. The pages of process can also be relocated from another process using the sys_migrate_pages() function call. Swap migration works by simply evicting the page, the pages must be faulted back in. The pages are then typically reallocated by the system near the node where the process is executing. Manual migration is very useful if for example the scheduler has relocated a process to a processor on a distant node. A batch scheduler or an administrator can detect the situation and move the pages of the process nearer to the new processor. For more details, see the commit [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=45b07ef31d1182d2cfde7711327e3afb268bb1ac (commit)]. Also, add "direct migration" support on top of the swap based page migration facility: This allows the direct migration of anonymous pages and the migration of file backed pages by dropping the associated buffers (requires writeout) and fall back to swap if necessary [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a48d07afdf18212de22b959715b16793c5a6e57a (commit)] * Add /proc/sys/vm/drop_caches. Writing to this will cause the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free. This is mainly useful for benchmarking, for getting consistent results between filesystem benchmarks without rebooting. To free pagecache: "echo 1 > /proc/sys/vm/drop_caches", to free dentries and inodes: "echo 2 > /proc/sys/vm/drop_caches", to free pagecache, dentries and inodes: "echo 3 > /proc/sys/vm/drop_caches". As this is a non-destructive operation and dirty objects are not freeable, the user should run `sync' first [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9d0243bca345d5ce25d3f4b74b7facb3a6df1232 (commit)] * Implement madvise(MADV_REMOVE): This feature frees up a given range of pages and its associated backing store. Current implementation supports only shmfs/tmpfs and other filesystems return -ENOSYS. Databases want to use this feature to drop a section of their bufferpool (shared memory segments) - without writing back to disk/swap space. This feature is also useful for supporting hot-plug memory on UML [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f6b3ec238d12c8cc6cc71490c6e3127988460349 (commit)] * Per-mountpoint noatime/nodiratime: turns noatime and nodiratime into per-mount instead of per-sb flags [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fc33a7bb9c6dd8f6e4a014976200f8fdabb3a45c (commit)] * EDAC support. The EDAC goal is to detect and report errors that occur within the computer system. In the initial release, memory Correctable Errors (CE) and Uncorrectable Errors (UE) are the primary errors being harvested. Detecting CE events, then harvesting those events and reporting them, can be a predictor of future UE events. With CE events, the system can continue to operate, but with less safety. Preventive maintainence and proactive part replacement of memory DIMMs exhibiting CEs can reduce the likelihood of the dreaded UE events and system 'panics'. In addition, PCI Bus Parity and SERR Errors are scanned for on PCI devices in order to determine if errors are occurring on data transfers [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=da9bb1d27b21cb24cbb6a2efb5d3c464d357a01e (commit)]. Add drivers for Intel i82860, i82875 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0d88a10e566d46bffc214c974e5cf5abe38d8da8 (commit)], for AMD 76x and Intel E750x, E752x [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=806c35f5057a64d3061ee4e2b1023bf6f6d328e2 (commit)] and Radisys 82600 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2f768af73fea4c70f9046388a7ff648ad11f028e (commit)] * Tweaks to the NUMA policies in the slab allocator [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dc85da15d42b0efc792b0f5eab774dc5dbc1ceec (commit)] * Process scheduler * Add a 'domain distance' function, which is used to cache measurement results for machiens with several nodes. Each distance is only measured once. This means that e.g. on NUMA distances of 0, 1 and 2 might be measured, on HT distances 0 and 1, and on SMP distance 0 is measured. The code walks the domain tree to determine the distance, so it automatically follows whatever hierarchy an architecture sets up. This cuts down on the boot time significantly and removes the old O(N^2) limit. For more details, see the commit [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=198e2f181163233b379dc7ce8a6d7516b84042e7 (commit)] * Filter affine wakeups [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d7102e95b7b9c00277562c29aad421d2d521c5f6 (commit)] * Add a new SCHED_BATCH (3) scheduling policy: such tasks are presumed CPU-intensive, and will acquire a constant +5 priority level penalty. Such policy is nice for workloads that are non-interactive, but which do not want to give up their nice levels. The policy is also useful for workloads that want a deterministic scheduling policy without interactivity causing extra preemptions (between that workload's tasks) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b0a9499c3dd50d333e2aedb7e894873c58da3785 (commit)] * Huge pages * Implement copy-on-write support for hugetlb mappings so MAP_PRIVATE can be supported. This helps us to safely use hugetlb pages in many more applications [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1e8f889b10d8d2223105719e36ce45688fedbd59 (commit)] * Make hugepages obey cpusets [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aea47ff363c15b0be5fc27ed991b1fdee338f0a7 (commit)] * Add NUMA policy support for huge pages: The huge_zonelist() function in the memory policy layer provides an list of zones ordered by NUMA distance. The hugetlb layer will walk that list looking for a zone that has available huge pages but is also in the nodeset of the current cpuset [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5da7ca86078964cbfe6c83efc1205904587706fe (commit)] * Performance / size optimizations * Shrink struct page in some configurations using anonymous struct [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=349aef0bc4c7f07d685c977e12d0e2d0b5d0e6db (commit)] * Shrink dentry struct: Some long time ago, dentry struct was carefully tuned so that on 32 bits UP, sizeof(struct dentry) was exactly 128, ie a power of 2, and a multiple of memory cache lines. Then RCU was added and dentry struct enlarged by two pointers, with nice results for SMP, but not so good on UP, because breaking the above tuning (128 + 8 = 136 bytes). This reverts this unwanted side effect using a union. As dentry cache easily contains millions of entries, a size reduction is worth the extra complexity of the ugly C union [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5160ee6fc891a9ca114be0e90fa6655647bb64b2 (commit)] * Add the SLOB allocator, a configurable replacement for slab allocator. This adds a CONFIG_SLAB option under CONFIG_EMBEDDED. SLOB is a traditional K&R/UNIX allocator with a SLAB emulation layer, similar to the original Linux kmalloc allocator that SLAB replaced. It's signicantly smaller code and is more memory efficient. But like all similar allocators, it scales poorly and suffers from fragmentation more than SLAB, so it's only appropriate for small systems who want to save some memory [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=10cef6029502915bdb3cf0821d425cf9dc30c817 (commit)] * Make vm86 support optional under CONFIG_EMBEDDED, to save about 5k of kernel size [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=64ca9004b819ab87648dbfc78f3ef49ee491343e (commit)] * configurable support for ELF core dumps, saves about 5K [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=708e9a794cf8822b760edaccd9053edb07c34d19 (commit)] * Make x86 doublefault handling optional, saves about 13 KB [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=22c4e3084eb8b88288a622a57d8b35c450a439f2 (commit)] * Make *[ug]id16 support optional, saves around 2 Kb [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e585e47031751f4e393e10ffd922885508b958dd (commit)] * Add scripts/bloat-o-meter script (python) to measure size changse in the functions of a given file [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d960600df3ce3588571e2c1adf1f5f6d8ca9eb5a (commit)] * Various changes * TTY layer buffering revamp, see the commit link [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=33f0f88f1c51ae5c2d593d26960c760ea154c2e2 (commit)] * Abandon GCC 2.9x support. It doesn't support useful features already used by some drivers like anonymous unions. Plus, no new distros are shipping with 2.9x compilers. In other words, supporting it has more disadvantages than advantages. The minium required compiler version us GCC 3.2 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fd285bb54d8a3e99810090ae88cfe8ed77d1da25 (commit)] * cpuset: Provide a simple per-cpuset metric of memory pressure, tracking the -rate- that the tasks in a cpuset call try_to_free_pages(), the synchronous (direct) memory reclaim code. This enables batch managers monitoring jobs running in dedicated cpusets to efficiently detect what level of memory pressure that job is causing. For more details, see the commit [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e0d98b9f1eb757fc98efc84e74e54a08308aa73 (commit)] * Make high and batch sizes of per_cpu_pagelists configurable, as recently there has been lot of traffic on the right values for batch and high water marks for per_cpu_pagelists. A new tunable /proc/sys/vm/percpu_pagelist_fraction is added. This entry controls the fraction of pages at most in each zone that are allocated for each per cpu page list. The min value for this is 8. It means that we don't allow more than 1/8th of pages in each zone to be allocated in any single per_cpu_pagelist. The batch value of each per cpu pagelist is also updated as a result [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8ad4b1fb8205340dba16b63467bb23efc27264d6 (commit)] * swsusp: remove the image encryption that is only used by swsusp instead of zeroing the image after resume in order to prevent someone from reading some confidential data from it in the future and it does not protect the image from being read by an unauthorized person before resume. The functionality it provides should really belong to the user space and will possibly be reimplemented after the swap-handling functionality of swsusp is moved to the user space [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f2d97f02961e8b1f8a24befb88ab0e5c886586ff (commit)] * swsusp: make suspend image size limit tunable via /sys/power/image_size. It is necessary for systems on which there is a limited amount of swap available for suspend. It can also be useful for optimizing performance of swsusp on systems with 1 GB of RAM or more. The default size is set to 500 MB [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ca0aec0f7a94bf9f07fefa8bfd23282d4e8ceb8a (commit)]. * Add list_for_each_entry_safe_reverse() [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0ad42352c01788e41a33336577fdd270d8de55bb (commit)] * MD: Exposes and allow to set lots of parameters through sysfs * keys: Add a new keyctl function that allows the expiry time to be set on a key or removed from a key, provided the caller has attribute modification access [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=017679c4d45783158dba1dd6f79e712c22bb3d9a (commit)], and ake it possible for a running process (such as gssapid) to be able to instantiate a key. For more details, see the commit [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b5f545c880a2a47947ba2118b2509644ab7a2969 (commit)] * SPI framework, implements the model of a queue of messages which complete asynchronously (with thin synchronous wrappers on top) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8ae12a0d85987dc138f8c944cb78a92bf466cea0 (commit)] * Export cpu topology in sysfs, /sys/devices/system/cpu/cpuX/topology/*, for more details see the commit [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=69dcc99199fe29b0a29471a3488d39d9d33b25fc (commit)] * '''Architecture-specific''' * x86 * sparsemem for single node systems: Allows SPARSEMEM to be enabled on non-numa x86 systems. This is made dependant on EXPERIMENTAL also being set [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=215c3409eed16c89b6d11ea1126bd9d4f36b9afd (commit)] * A simple driver for the CS5535 and CS5536 that allows a user-space program to manipulate GPIO pins. The CS5535/CS5536 chips are Geode processor companion devices [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e329113ca437e44ec399b7ffe114ed36e84ccf5e (commit)] * x86: Basic support for the AMD Geode GX and LX processors [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f90b8116032f4216d260e31f966a3585319387ac (commit)] * x86-32 / x86-64: mark rodata sections read only [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=63aaf3086baea7b94c218053af8237f9dbac5d05 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=67df197b1a07944c2e0e40ded3d4fd07d108e110 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=37b73c828185731f6236a6387c02d7b08c150810 (commit)] * kdump for x86-32/64: Add "elfcorehdr" command line option. "elfcorehdr" specifies the location of elf core header stored by the crashed kernel. This command line option will be passed by the kexec-tools to capture kernel [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aac04b32f3e4c63f461459d0e1d6aa01caac6e66 (commit)]. Also, add memmmap command line option for x86-64, similar to i386. memmap=exactmap enables setting of an exact E820 memory map, as specified by the user [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=69cda7b1f06befb8d6a884b8a663d19dcaef590b (commit)] * x86-64: Support constant TSC feature in future AMD CPUs [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=130951ccb14167c20b87e8bed52b60864ed53c2b (commit)] * x86_64: Allow compilation on a 32bit biarch toolchain [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bb33421dde79f9a36d5485c56335ff178ac7d268 (commit)] * x86-64: Inclusion of ScaleMP vSMP architecture [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=79f12614a6537cc3ac9ca4d1ea26f6e4f4a34aee (commit)] * PPC * SPU file system. The SPU file system is used on PowerPC machines that implement the Cell Broadband Engine Architecture (aka: Cell processors) in order to access Synergistic Processor Units (SPUs). The file system provides a name space similar to posix shared memory or message queues. Users that have write permissions on the file system can use spu_create(2) to establish SPU contexts in the spufs root. Every SPU context is represented by a directory containing a predefined set of files. These files can be used for manipulating the state of the logical SPU. For more details, read the [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/filesystems/spufs.txt Documentation] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=67207b9664a8d603138ef1556141e6d0a102bea7 (commit)] * Add back support for booting from BootX. ARCH=powerpc couldn't boot from BootX as it uses a "different" way of getting in the kernel. This patch adds the necessary trampolines, creating a flattened device-tree from the tree passed from MacOS, and initializing the btext engine early for really-early debugging [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d7f3945420b5d8114f2d4d85e90abe5063cc196a (commit)] * Add cpufreq support for all desktop G5. This patch adds cpufreq support for all desktop "tower" G5 models [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a699aefa87cb0379a67741926820c9271d748a9 (commit)] * Thermal control for dual core G5s ([http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ac171c46667c1cb2ee9e22312291df6ed78e1b6e (commit)] * Experimental support for new G5 Macs: This adds some very basic support for the new machines, including the Quad G5 (tested), and other new dual core based machines and iMac G5 iSight (untested). This is still experimental, there is no thermal control yet, there is no proper handing of MSIs, it just boots [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1beb6a7d6cbed3ac03500ce9b5b9bb632c512039 (commit)] * PPC32 and PPC64 kexec implementations [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3d1229d6ae92ed1994f4411b8493327ef8f4b76f (commit)] * ppc64: per cpu data optimisations [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7a0268fa1a3613f2c526a9b3058701b277f6abe1 (commit)] * IBMEBUS bus support. This adds the necessary core bus support used by device drivers that sit on the IBM GX bus on modern pSeries machines like the Galaxy infiniband for example. It provide transparent DMA ops (the low level driver works with virtual addresses directly) along with a simple bus layer using the Open Firmware matching routines [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d7a301033f1990188f65abf4fe8e5b90ef0e3888 (commit)] * G4+ oprofile support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=555d97ac87aef08bb55dff6f05e68fe2987d6f6d (commit)] * powerpc/8xx: Use 8MB D-TLB's for kernel static mapping faults, thus reducing TLB space consumed for the kernel and improving performance [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8f069b1a90bd97bf6d59a02ecabf0173d9175609 (commit)] * Make COFF zImages for old 32-bit powermacs [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=66a45dd3620ee5f913ba1af3d2dca8b9bdfa2b96 (commit)] * Remove powermac support from ARCH=ppc. This makes it possible to build kernels for PReP and/or CHRP with ARCH=ppc by removing the (non-building) powermac support. It's now also possible to select PReP and CHRP independently. Powermac users should now build with ARCH=powerpc instead of ARCH=ppc. (This does mean that it is no longer possible to build a 32-bit kernel for a G5) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a7fdd90bc43e3e9cb08bc1b13650024d419b89e5 (commit)]. Also, make ARCH=powerpc the default for 32-bit ppc [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=820a8ce7931d18338e5c089725ec083518da1644 (commit)] * Add platform functions interpreter along with the backends for UniN/U3/U4, mac-io, GPIOs and i2c. It adds the ability to execute those do-platform-* scripts in the device-tree (at least for most devices for which a backend is provided) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5b9ca526917b7bc7d1da3beaccb2251a8f0b5fe2 (commit)]. Add support for add/remove/update properties in firmware device tree [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=088186ded490ced80758200cf8f906ed741df306 (commit)], add add/remove/update properties in /proc/device-tree [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=898b5395e915210f41223caa30312994d64cba1d (commit)], and add support for changing properties from userspace [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=610d91511f99f0a8325ad78fb7259c454b23e65a (commit)] * Add FSL SOC library and setup code [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eed320010872a11f5255b3d076e5b4f142af553d (commit)] * Early debugging support for iSeries [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bf6a7112bda99aadd6675526423a96be6b356a3d (commit)] * Add "partitionable endpoint" support. New versions of firmware introduce a new method by which the "partitionable endpoint" (the point at which the pci bus is cut) should be located [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=25e591f6dd07365cbf0b1c2454386ce597dd5e05 (commit)] * PCI error recovery infrastructure for the PPC64 pSeries systems [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=77bd741561016134d1761d6101c4f0361025062f (commit)] * Add TQM85xx (8540/8541/8555/8560) board support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a819f8ba76e81669fcc2665ac532cac650694b99 (commit)] * Add MPC834x SYS board to arch/powerpc [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7d13d21ae85f64e35dcdae4d6a6286e62a38e0ab (commit)] * Add support for the PowerPC MPC83xx watchdog. The MPC83xx has a simple watchdog that once enabled it can not be stopped, has some simple timeout range selection, and the ability to either reset the processor or take a machine check [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fabbfb9e8c53416eaa4f62b957430211376c9c82 (commit)] * s390 * Add support for the hardware accelerated sha256 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0a497c17fee428604e06320272ff74415eacdc31 (commit)] and aes [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bf754ae8ef8bc443c067601d9401103e4001e7c5 (commit)] crypto algorithms; also support cex2a crypto cards [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=88fbf18399bde8f2900cf932acd40733dfa1effa (commit)] * qdio V=V pass-through. QDIO and Hiper Sockets processing in z/VM V=V guest environments (as well as V=R with z/VM running in LPAR mode) requires shadowing of all QDIO architecture queue elements. Especially the shadowing of SBALs and SLSBs structures in the hypervisor, and the need to issue SIGA SYNC operations to observe state changes, eventually causes significant CPU processing overhead in the hypervisor. The QDIO pass-through support for V=V guests avoids the shadowing of SBALs and SLSBs. This significantly reduces the hypervisor overhead for QDIO based I/O [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8129ee164267dc030b8e1d541ee3643c0b9f2fa1 (commit)] * ARM * Iomega NAS 100d network attached storage product. The NAS100D is a consumer device containing a 266MHz Intel IXP420 processor, 16MB of flash, 64MB of RAM, a 160Gb internal IDE hard disk, and 802.11b/g wireless on an Atheros mini-PCI card [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3145d8a6cc83ee15adf18f598873e53a54cd1841 (commit)] * Add pxa27x OHCI platform specific code to enable the ohci device on the pxa27x based Sharp Zaurus Cxx00 devices [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3125c68d70e3433c21234431a9df9e7336efa29f (commit)] * Remove EPXA10DB machine support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0fec53a24a5e5f7ba68d891b68f568b6aeafaca6 (commit)] * Support for the Atmel AT91RM9200 processor: this adds support for the Cogent CSB337 and CSB637 boards [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=49978db4f39950cdaaf967e1aad4a324bdc2e180 (commit)] and the Atmel's DK and EK boards [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f0a13854be269357ff70022524ec503d3cba6a32 (commit)] * Add support for the serial device for machines with Atmel AT91RM9200 processors [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1e6c9c2878c9c1f301449c78551e0b7c5f3e3ae5 (commit)] * MIPS: * Add oprofile support to 5K, 20K and 25K [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2065988e9fb1628de7958b0f7f709b93302f7b97 (commit)] * SB1: Oprofile support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c03bc121212ecb36120b118a94c1b91a2e07b7b2 (commit)] * Add support for the built-in parallel port on SGI O2 (aka IP32) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8e75f744289f0a1c38b669e39a489af460640881 (commit)] * UML * Add support for throttling and unthrottling input when the tty driver can't handle it [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e4dcee8099802c71437a15b940f66106d9f88b2f (commit)] * implement soft interrupts [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1d7173baf286c8b720f97f119ec92be43076ebde (commit)] * FRV * Implement futex operations [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5c40f7f373889930d176a515ec375b60a70b5b49 (commit)] * Make futex code compilable on nommu [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7ee1dd3fee22f15728f545d266403fc977e1eb99 (commit)] * Sparc64: * Serial Console for E250 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c126cf80d450a4d0aac3de7162d4c14b5c971b24 (commit)] * Add support for *at(), ppoll, and pselect syscalls [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2d7d5f05111a9d913131a2764d8b20157f8f758d (commit)] * SH: * kexec() support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9d44190eae97ad4c9ce30f1084e1b0dabd646df5 (commit)] * Add support for the hp680 backlight, as found in the hp6xx series of sh devices [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=06c6f90032e39d33d02ab20f32e3f3cd87f58d28 (commit)] * m32r: Support M32104UT target platform. The M32104UT is an eval board based on an uT-Engine specification. This board has an MMU-less M32R family processor, M32104. [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9287d95ea194abf32fab24c6909f8ea55ab0292f (commit)] * Alpha: convert to generic irq framework. This allows automatic SMP IRQ affinity assignment other than default "all interrupts on all CPUs" which is rather expensive. This might be useful if the hardware can be programmed to distribute interrupts among different CPUs, like Alpha does [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eee45269b0f5979c70bc151c6c2f4e5f4f5ababe (commit)] * MMU-less CPUs: Provide shared-writable mmap support on ramfs [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=642fb4d1f1dd2417aa69189fe5ceb81e4fb72900 (commit)]. This made possible to use SYSV IPC SHM in MMU-less configurations [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b0e15190ead07056ab0c3844a499ff35e66d27cc (commit)] * IA64: Perfmon for Montecito [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9179cb65780def28770a895a4bc8fa60e903ab80 (commit)] * '''Filesystems''' * OCFS2: Clustering filesystem contributed by Oracle (Oracle-Cluster-File-System). It's general purpose extent based shared disk cluster filesystem with many similarities with ext3, support for 64 bit inode numbers, and has automatically extending metadata groups which may also make it attractive for non-clustered use. It includes a simple heartbeat implementation for monitoring which nodes come and go and a distributed lock manager called "dlm" [http://lwn.net/Articles/137278/ (LWN article)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=29552b1462799afbe02af035b243e97579d63350 (commit)] * Configfs: It's a ram-based filesystem that provides the converse of sysfs's functionality. Where sysfs is a filesystem-based view of kernel objects, configfs is a filesystem-based manager of kernel objects, or config_items. With sysfs, an object is created in kernel (for example, when a device is discovered) and it is registered with sysfs. Its attributes then appear in sysfs, allowing userspace to read the attributes via readdir(3)/read(2). It may allow some attributes to be modified via write(2). The important point is that the object is created and destroyed in kernel, the kernel controls the lifecycle of the sysfs representation, and sysfs is merely a window on all this. Both sysfs and configfs can and should exist together on the same system. One is not a replacement for the other [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7063fbf2261194f72ee75afca67b3b38b554b5fa (commit)] * FUSE: Make the maximum size of write data configurable by the filesystem. The previous fixed 4096 limit only worked on architectures where the page size is less or equal to this. This change make writing work on other architectures too, and also lets the filesystem receive bigger write requests in direct_io mode. Normal writes which go through the page cache are still limited to a page sized chunk per request [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3ec870d524c9150add120475c8ddcfa50574f98e (commit)] * NFSv4: Allow user to set the port used by the NFSv4 callback channel with the nfs.callback_tcpport boot option [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a72b44222d222749d54b3e370d825094352e389f (commit)] * NFS: support large reads and writes on the wire. Most NFS server implementations allow up to 64KB reads and writes on the wire. The Solaris NFS server allows up to a megabyte, for instance. Now the Linux NFS client supports transfer sizes up to 1MB, too. This will help reduce protocol and context switch overhead on read/write intensive NFS workloads, and support larger atomic read and write operations on servers that support them [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=40859d7ee64ed6bfad8a4e93f9bb5c1074afadff (commit)] * v9fs: add readpage support. v9fs mmap support was originally removed to make mergin easier, but there have been requests from folks who want readpage functionality (primarily to enable execution of files mounted via 9P). This patch adds readpage support (but not writepage which contained most of the objectionable code) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=147b31cf09ee493aa71c87c0dd2eef74b6b2aeba (commit)]. Add new and more efficient multiplexer implementation [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3cf6429a26da5c4d7b795e6d0f8f56ed2e4fdfc0 (commit)] and zero copy implementation to reduce the number of copies in the data and stat paths [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=531b1094b74365dcc55fa464d28a9a2497ae825d (commit)] * ext3: external journal device as a mount option. The syntax is : "# mount -t ext3 -o journal_dev=0x0820 ...", where 0x0820 means major=8 and minor=32 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=71b9625744b7d4a6a2416389a5ba464bdf11f07f (commit)] * FAT: Support Direct I/O [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e5174baaea7585760f02eef23b225847d209a8db (commit)] * RelayFS: Add support for global relay buffers. This can be used by clients to create a single global relayfs buffer instead of the default per-cpu buffers. This was suggested as being useful for certain debugging applications where it's more convenient to be able to get all the data from a single channel without having to go to the bother of dealing with per-cpu files [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e6c08367b8fc6dce6dfd1106f53f6ef28215b313 (commit)]. Also, add support for relay files in other filesystems [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=08c541a7ade230883c48225f4ea406a0117e7c2f (commit)] * XFS: make it work with SELinux [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=446ada4a03808f128e8f28daa0f103dc69d22d5b (commit)] * XFS: enable write barriers per default [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4ef19dddbaf2f24e492c18112fd8a04ce116daca (commit)] * Add tmpfs options for memory placement policies [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7339ff8302fd70aabf5f1ae26e0c4905fa74a495 (commit)] * HFS: add HFSX support which allows for case-sensitive filenames [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2179d372d9f8b5fc5c189c89bc6a565a42151b23 (commit)] * CIFS: Kerberos and CIFS ACL support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bf8206791750854bc6668266b694e8fe2cacb924 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0a4b92c05ed02ad7abdd165823eaf4bbcb33ae5c (commit)]; and add some performance improvements [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=84afc29b185334f489975a003b128e1b15e24a54 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ec637e3ffb6b978143652477c7c5f96c9519b691 (commit)] * '''Networking''' * TIPC (Transparent Inter Process Communication). TIPC is a protocol designed for intra cluster communication. For more information see [http://tipc.sourceforge.net http://tipc.sourceforge.net] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b97bf3fd8f6a16966d4f18983b2c40993ff937d4 (commit)] * Netfilter x_tables, an abstraction layer for {ip,ip6,arp}_tables: This tries to do the best job for unifying the data structures and backend interfaces for the three evil clones ip_tables, ip6_tables and arp_tables [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2e4e6a17af35be359cc8f1c924f8f198fbd478cc (commit)] * Add IFB (Intermediate Functional Block) network device: a new device to do intermediate functional block in a system shared manner. The new functionality can be grouped as: 1) qdiscs/policies that are per device as opposed to system wide. ifb allows for a device which can be redirected to thus providing an impression of sharing. 2) Allows for queueing incoming traffic for shaping instead of dropping. Packets are redirected to this device using tc/action mirred redirect construct [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=253af4235d24ddfcd9f5403485e9273b33d8fa5e (commit)] * LSM-IPSec: Security association restriction: implement per packet access control via the extension of the Linux Security Modules (LSM) interface by hooks in the XFRM and pfkey subsystems that leverage IPSec security associations to label packets. Such access controls augment the existing ones based on network interface and IP address. The former are very coarse-grained, and the latter can be spoofed. By using IPSec, the system can control access to remote hosts based on cryptographic keys generated using the IPSec mechanism. This enables access control on a per-machine basis or per-application if the remote machine is running the same mechanism and trusted to enforce the access control policy. [http://www.selinux-symposium.org/2005/presentations/session2/2-3-jaeger.pdf paper], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5e0f76c6bbc0d26cd9625876f7beeb7b002f39bf (commit)] * TCP BIC: CUBIC window growth (2.0). Replace existing BIC version 1.1 with new version 2.0. The main change is to replace the window growth function with a cubic function as described in http://www.csc.ncsu.edu/faculty/rhee/export/bitcp/cubic-paper.pdf [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=df3271f3361b61ce02da0026b4a53e63bc2720cb (commit)] * Netfilter ip_tables: NUMA-aware allocation. Part of a performance problem with ip_tables is that memory allocation is not NUMA aware, but 'only' SMP aware (ie each CPU normally touch separate cache lines). Even with small iptables rules, the cost of this misplacement can be high on common workloads. Instead of using one vmalloc() area (located in the node of the iptables process), we now allocate an area for each possible CPU, using vmalloc_node() so that memory should be allocated in the CPU's node if possible [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=318360646941d6f3d4c6e4ee99107392728a4079 (commit)] * DCCPv6 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3df80d9320bcaea72b1b4761a319c79cb3fdaf5f (commit)] * netem: packet corruption option. It adds the ability to randomly corrupt packets with netem, useful for testing hardware offload in devices [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c865e5d99e25a171e8262fc0f7ba608568633c64 (commit)] * Update SCTP_PEER_ADDR_PARAMS socket option to the latest api draft [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=52ccb8e90c0ace233b8b740f2fc5de0dbd706b27 (commit)] * Add support for SCTP_DELAYED_ACK_TIME socket option. This option will get or set the delayed ack time [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7708610b1bff4a0ba8a73733d3c7c4bda9f94b21 (commit)] * XFRM: IPsec tunnel wildcard address support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ee51b1b6cece4dad408feeb0c3c9adb9cbd9f7d9 (commit)] * '''Drivers''' * DRM: * Add i945GM PCI ID [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5457f38e01ae2d296ff49db42254679018f13fa9 (commit)] * Add X600 PCI ID [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2fed3bd7436e8988980989493c16b4983be1a800 (commit)] * libata: Suspend support, and add support for the ata_piix drivers, other drivers will be ported in the future [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9b847548663ef1039dd49f0eb4463d001e596bc3 (commit)] * IDE devices * IDE: MODALIAS support for autoloading of ide-cd, ide-disk, ide-floppy and ide-tape to autoload these modules depending on the probed media type of the IDE device [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=263756ec228f1cdd49fc50b1f87001a4cebdfe12 (commit)] * piix: add Intel ICH8M device IDs [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b7bed9ec44cb282425f56033e5fb5448086cd758 (commit)] * SCSI * megaraid: remove overlapping PCI ID's from the legacy driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=3492b328834319c9503c0a34c50fb3f009556443 (commit)] and remove the restriction where the legacy driver could not be built alongside the newgen [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=ed7e8ef7f12f5c3c8bbb85eeb0a1ded91c7c5dbf (commit)]. This means that some users of the legacy megaraid driver will find themselves unable to boot 2.6.16 until they switch to the newgen megaraid_mbox driver. * Input devices * Input: add MODALIAS input classes support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1d8f430c15b3a345db990e285742c67c2f52f9a6 (commit)] * Add support for Geyser 2 touchpads used on post Oct 2005 Apple Powerbooks to the appletouch driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e1e02c9f766e5cf20d951d35e6d2bc2683aa87ef (commit)] * Implement support for the fn key on Apple PowerBooks using USB based keyboards and makes them behave like their ADB counterparts [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eab9edd27f7ceaad6b57085817d63287bda15190 (commit)] * Add support for Cherry Cymotion keyboard [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=940824b0ac6661ff4f3b36e7bce17f681d0cbc23 (commit)] * USB devices * A driver for USB ADSL modems based on the ADI eagle chipset (Eagle and ADI 930 usb adsl modems [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b72458a80c75cab832248f536412f386e20a93a0 (commit)] * Add USB storage support for the Nikon Coolpix 2000 camera [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=17fa6e552f2fc6bb06af767b0abf9cb642e13404 (commit)] * Add USB storage support for devices based in the alauda chip, like the Olympus MAUSB-10 and Fujifilm DPC-R1 USB Card reader/writer devices, both support XD and Smartmedia cards [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e80b0fade09ef1ee67b0898d480d4c588f124d5f (commit)] * Add support for ATI/Philips USB RF remotes (eg. ATI Remote Wonder II) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=735b0cbb5bbb981d726a465c157f20976794aab0 (commit)] * Support for Posiflex PP-7000 retail USB printer [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=effac8be4e46aabf22788d24caaa1ae9c295d26d (commit)] * Support for Linksys USB200M devices [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5e0f76c6bbc0d26cd9625876f7beeb7b002f39bf (commit)] * Network devices * hostap: allow flashing firmware [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a485cde662f5b6b2299ee01a7e9e2c11683f807b (commit)] * New experimental driver for the Marvell Yukon2 Gigabit Ethernet chipset. This driver is based on the skge driver, but using the logic from the Syskonnect version of the sk98lin driver. It should support all the Yukon2 chipsets that are available in many current Intel and AMD motherboards [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cd28ab6a4e50a7601d22752aa7ce0c8197b10bdf (commit)] * sky2: add hardware VLAN acceleration support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d1f1370863f7fa3d76dc7d7779debdda854a5a60 (commit)], MII ioctl interface [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ef743d3359813795fb38c4308bff2311eb30651f (commit)], add Yukon-EC ultra support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5a5b1ea026572ac0e5e03d7322deb546d60f9e6e (commit)] * Add Wake on LAN support to sis900 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ea37ccea66e6bdd9f3571418b6461850088c114e (commit)] * Implements the UFO (feature merged in 2.6.15) support in S2io driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fed5eccdcf542742786701b2514b5cb7ab282b93 (commit)] * Intel ixp2000 network driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=15d014d13149aedd76cbff1b5c3bbfe839391457 (commit)] * ipw2100: support WEXT-18 enc_capa v3. This patch allows ipw2100 driver to advertise the WPA-related encryption options that it does really support. It's necessary to work correctly with NetworkManager and other programs that actually check driver & card capabilities [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=166c3436d683cfe5316c7723ed746a93db053f12 (commit)] * Add support for the Intel IXDP2351 to the CS89x0 driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9c878967d32a10cb604718f7608efa0ea3d8b596 (commit)] * mv643xx_eth: Add multicast support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=16e0301831767ee1b8e5e022cc08e76f9f8a8938 (commit)] * e1000: Added hardware support for PCI express, 82546GB( Quad Copper) and 82571 Fiber [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b7ee49db8b4b21dad3284d5507e7ea2946031f6e (commit)] * e1000: Added disable packet split capability [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=35ec56bb78fda9c88cd1ad30e048ce5b4398d33f (commit)] * ieee80211: Fix some of the ieee80211 crypto related code so that instead of having the host fully do crypto operations, the host_build_iv flag works properly (for WEP in this patch) which, if turned on, requires the hardware to do all crypto operations, but the ieee80211 layer builds the IV. The hardware also has to build the ICV [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a4bf26f30e398afa293b85103c885f03d4660a07 (commit)] * Sound devices * Add power management support for ak4531 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=11d3824ad7d6240d7ce44bdf1d9e81e62a903f72 (commit)], ens137x [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fe8be10786c040bce53c18048d75b1b23aec64ae (commit)], emu10k1 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=09668b441dacdf4640509b640ad73e24efd5204f (commit)], fm801 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b1e9ed26a9e472548a63a59014708fdae013b7a3 (commit)], cmipci [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cb60e5f5b2b19284479825cdaa6dd6b7078cf5d2 (commit)], SB16/AWE [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5bdb6a1629408f657f5f2c42b3c07c689c411499 (commit)], als4000 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=703529140cfb774366b839f38f027f283cb948b4 (commit)], es968 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7a8fef1f95e563a93c7d70048b63c1ca20685a1b (commit)], AD1848 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c66d7f72569e304acc134b2561b148fe7c23c0f7 (commit)], als100 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=480615f33fa48e1a4db33e40b21d4009250f5b23 (commit)], DT019x [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e2fa213591518bb1387f6042b8572c76ecdc6c6e (commit)], azt2320 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b6cc25cae365bada36c9f006e314b998eb2c5e7c (commit)] * emu10k1: enable side surround channels for Audigy2 EX [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2f020aa71197eddef749ad6202ca5a66c0c6e382 (commit)], add support for Audigy 2 subsystem 2006 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f6f8bb642350dafc21676ccd4fab333282064b8d (commit)], partial support for Creative emu1212m [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=19b99fbaed2e2971b756311435c67e84431d8515 (commit)], entry for SB Live 5.1 Digital OEM (SB0220) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a8ee72952bd7bd21df944ef1512a1e582abe0528 (commit)] * via82xx: add dxs entry for MSI KT800 Delta-FSR [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c1b8f5f0e4aabd4b47648dd9465fb750e07da9fb (commit)] * Add support for the CS5535 Audio device [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9b4ffa48ae855c8657a36014c5b0243ff69f4722 (commit)] * hda-codec: add AD1988 support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fd66e0d0591dd12eb0bea1e9f3aa194bb93cebbd (commit)], support of ALC262, ALC883, ALC885, ALC861 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=df694daa3c0135202e4702cb2d11e68a43f6c51e (commit)], add the model entry (ALC880 6stack) for ASUS P5GD1-HVM [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7632c7b4443057e1294208a0d9a55d8558f2f6ca (commit)] * ice1724: add support of M-Audio Revolution 5.1 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59acf76e0268e3f0156ef5113e89d838a8c02bb6 (commit)] * Add Digigram PCXHR driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e12229b4d2b7863b1baaeca759aa87703bf9fdf8 (commit)] * via82xx: add dxs entry for P4M800/VIA8237R [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=802c00f2f3700423df06a1149c23cd60dd59159c (commit)] * hda-codec: Add support for the SigmaTel STAC927x HDA codec family [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3cc08dc6ea677ed4e843120aa070e145b6781a4b (commit)] * hda-codec: Add SigmaTel HDA support for the Intel D975XBK motherboard [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d62c40e04cfcec3cef8093bd79d72fe86c8f2195 (commit)] * hda-codec: Add support for Agere's variant of Si3054/5 based HDA modem [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e061bf1aa3af8a3f2ae7e1b5f8a110eae7936615 (commit)] * V4L/DVB * Add support for the remote control receiver inside the DViCO FusionHDTV DVB-T Dual Digital, and a keymap for the MCE remote bundled with it [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c239703a942117c3446ca06af537fc3ea12fb24 (commit)] * Support for DVB reception on the PCI half of the DViCO DVB-T Dual Digital [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=43eabb4e2284146f8bfae8730ae41c218b724b7d (commit)] * Add support for LifeView FlyDVB Trio [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4aa6ba513e28884b56bac529553a47a6b160c310 (commit)] * Added digital support for cx88 (cx88-alsa) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b7f355d23c34399ccfd54fd613c306ab4a788234 (commit)] * Add Kworld/Vstream Xpert DVB-T card with cx22702 tuner [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f39624fda00d2a30d31f0fa06153e9b460295676 (commit)] * Add support for DViCO FusionHDTV5 USB Gold [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=effee0333b6090ff4ff0463e8fb6084cf4406bbd (commit)] * Added support for VP-3054 (aka DigitalNow DNTV Live! DVB-T Pro!) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fc40b261db15d010455ad0a4e2ac59da2ced730f (commit)] * Add remote for Compro Videomate Gold+ Pal version [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2a9a9a84f2ac6e4481f564c42a9268477465c359 (commit)] * Enable remote control on AVERTV STUDIO 303 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=899ad11b55206c30db7e3667d14c8bdb167f51f8 (commit)] * Adding support for the Hauppauge HVR1100 and HVR1100-LP products [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=611900c1858747a87657eb405ebab5b1e72bb57c (commit)] * Add support for KWorld DVB-S 100, based on the same chips as Hauppauge [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1c956a3ac087b7590296f5a0be2cdab2666158cd (commit)] * Enable IR support for the Nova-S-Plus [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fb56cb65e4b737c93727ea296050e8d24eb7cb42 (commit)] * Added Hauppauge ImpactVCB board [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cd1257d860f6ee09b589723a5d3888b1fed46487 (commit)] * Added V4L support for the Nova-S-Plus and Nova-SE2 DVB-S products [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0fa14aa6214823bb013b598add866e277a7efe28 (commit)] * Added basic support (tv + radio) for TerraTec Cinergy 250 PCI [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f639c9b21b763441bd6bd76185be6d2504d83d54 (commit)] * Added SECAM L' video standard [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f3c5987a386300abea9854b32814d0eab7af7841 (commit)] * Adds 32-bit compatibility for v4l2 framegrabber ioctls [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cf664a6458b254ce665d129c0960cff4f32b91f3 (commit)] * Add support for DViCO FusionHDTV DVB-T USB devices [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f8bf134d5f697311c04e867b6733d047a4b55a12 (commit)] * Add bttv card MagicTV (rebranded MachTV) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2d05ae6b5b77f063aa0f82cf0570f3e4b80b367c (commit)] * Added remote control support for pinnacle pctv [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=366cc64b0d9ac922ac4f0f54e06c13ec95249928 (commit)] * Add support for Samsung tuner TCPN 2121P30A, used in Hauppauge PVR-500 cards [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b3d37042d7d33baf0247d1df31031e64427f39b3 (commit)] * Add support for Galaxis DVB-S rev1.3 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9ead9bd1079b4b7ba45589f6495e79ec50237aed (commit)] * Add standard for South Korean NTSC-M using A2 audio, South Korea uses NTSC-M but with A2 audio instead of BTSC [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0dfd812d4b2afc797310943b451608d347854e76 (commit)] * Add IR support to KWorld DVB-T (cx22702-based) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a77a922fcc56fe44fd8f65c041a52ff48474fafe (commit)] * Various * 8xx PCMCIA: support for MPC885ADS and MPC866ADS [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1371d3be045a6a1a8b828b838069b5fe6e0ab4c6 (commit)] * Geode LX HW RNG Support: adds support to hw_random for the Geode LX HRNG device [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a7a4ad0998dcd682f4968e8ec5fc1259914a1c4a (commit)] * i2c-nforce2 add nforce4 MCP-04 device ID [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c72ccf09b6debe55b8e049377ad3183ed4f4cb3 (commit)] * i2c: Add support for Barco LPT->DVI to i2c-parport [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1d26f455eb0db0bf4d4b7177547f4310b645a32a (commit)] * hwmon: New vt8231 driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1de9e371b89e1cf4da123f0d92efa8eb134ca5e8 (commit)] * New character device driver for the SyncLink GT and SyncLink AC families of synchronous and asynchronous serial adapters [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=705b6c7b34f2621f95f606d0e683daa10cdb8eb9 (commit)] * Add "bpp" boot option to nvidiafb to specify at what depth color the kernel must boot [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ade9185a39aa2bc51f95b4899836e59df671d844 (commit)] * Add support for the watchdog timer built into the EPX-C3 single board computer manufactured by Winsystems, Inc [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eed6565f70ce3fc958e5a3483c48fc4a8e111bdc (commit)] * Serial: make the number of UARTs registered configurable at compile time [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a61c2d78ce61e67baf27c43f6721db87a27ac762 (commit)] * Add 8250 support for Decision Computer International Co. PCCOM2 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d9004eb466d03b7900ed432fecec6819012b4ed3 (commit)] * Altix: Add driver support for a 2 port PCI IOC3-based serial card on Altix boxes [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2d0cfb527944c2cfee2cffab14f52d483e329fcf (commit)] * Add f71805f hwmon driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e53004e20a58e9d28347e02adccb37a33e0d771a (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 please, just for coherence) 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). * Keeping realtime track of the commits is really, really easy. Just [http://vger.kernel.org/vger-lists.html#git-commits-head subscribe to the git-commits-head] mailing list (or look at the archives). Commit IDs are in the X-Git-Commit mail header (tell your mailer to show them, if your mailer is good enought you'll be able to add a script which gets the Commit ID out of the header and launch a browser with the "http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=" URL before it. * Do NOT use the [http://www.kernel.org/git git web interface] (or RSS) to keep track of the commits. The RSS gets overflowed when Linus does a big merge, and more importantly, the shortlog doesn't care about when things were committed. If a developer writes a patch, merges it in his git repository and then Linus merges it in mainline after a month, the commit won't appear in the "todays shortlog", but in the one which contains the one-month-old changes. * Git has "meta-commits", though. When Linus merges things from a remote repository, You'll see a "Merge git://git.domain.com/foo/bar" style of message commit. The one-month-old commit won't appear in the shortlog but the remote repository merge will, and if you check the details of the remote-repository-merge commit ID it'll look like a huge patch. It's a "meta-commit" though, and the individual commits will appear in the shortlog too. * Still, the web interface has a useful search field. * 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 committed 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] 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.16)>> |
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.16 changelog.
Summary: This release includes some Ext4 performance improvements; XFS support for large atomic writes; support for USB audio offload; support for zero-copy send TCP payloads from DMABUF memory; various futex improvements; initial support for Intel Trusted Domain Extensions; automatic weighted interleaved memory allocation policy; support for sending coredumps over an AF_UNIX socket, and make easier to build your kernel optimized for your local CPU. As always, there are many other features, new drivers, improvements and fixes. Also, you might be interested in the LWN merge window report: part 1, part 2
Contents
-
Prominent features
- XFS support for large atomic writes
- USB audio offload support
- Initial support for Intel Trusted Domain Extensions
- Allow to zero-copy send TCP payloads from DMABUF memory
- Automatic weighted interleaved memory allocation policy
- Support for Intel Advanced Performance Extensions
- Add support for sending coredumps over an AF_UNIX socket
- Futex improvements
- Some Ext4 performance improvements
- Build optimization for the local CPU on x86
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing, perf and BPF
- Virtualization
- Cryptography
- Security
- Networking
- Architectures
-
Drivers
- Graphics
- Power Management
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Watchdog
- CPU Frequency scaling
- Voltage, current regulators, power capping, power supply
- Real Time Clock (RTC)
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Multi Function Devices (MFD)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C + I3C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- 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. XFS support for large atomic writes
This release adds support for large atomic writes. These are writes of multiple FS blocks that will be written atomically - either all the blocks are written, or none.
Recommended LWN article: An update on torn-write protection
1.2. USB audio offload support
After years of work, this release incorporates USB offload support for audio devices. This feature offers major power savings on embedded devices where a USB audio stream can continue to flow while the rest of the system is sleeping, something that devices running on battery power really care about. This is a feature that is available on Android under different implementations, now there is an unified implementation that everbody can use
1.3. Initial support for Intel Trusted Domain Extensions
This release adds initial support for Intel's Trust Domain Extensions, which protect confidential guest VMs from the host and physical attacks. This is done encrypting the memory of the guest VM. This is similar to AMD's SEV-SNP (already supported).
Documentation: Intel Trust Domain Extensions (TDX)
Intel documentation: Intel® Trust Domain Extensions (Intel® TDX)
1.4. Allow to zero-copy send TCP payloads from DMABUF memory
This release adds support for device memory TCP TX path. Device memory TCP (merged in Linux 6.12) provided the ability to zero-copy receive TCP payloads to a DMABUF region of memory while packet headers land separately in normal kernel buffers. The TX path was dropped from the Device Memory TCP patch series to make it easier to review and merge, this release includes it.
Documentation: TX Interface
Recommended LWN article: Direct-to-device networking
1.5. Automatic weighted interleaved memory allocation policy
On modern NUMA systems, memory can be allocated from different nodes, some of which can offer better bandwith characteristics than others. Linux allows to configure different weights to each node so that allocations are done as specified by the administrator, but this configuration is complex and does not address memory hotplug events. Round-robin allocations do not take account of bandwith information either. This release adds an automatic auto-tuning policy. In this mode, all node weights are re-calculated and overwritten whenever new bandwidth data is made available during either boot or hotplug events.
Recommended LWN article: Automatic tuning for weighted interleaving
1.6. Support for Intel Advanced Performance Extensions
This release adds support for Intel APX, or Advanced Performance Extensions. Intel APX doubles the number of general-purpose registers from 16 to 32, allowing code to contain fewer loads and stores, which leads to better performance and power savings.
Documentation: https://www.intel.com/content/www/us/en/developer/articles/technical/advanced-performance-extensions-apx.html
1.7. Add support for sending coredumps over an AF_UNIX socket
This release adds support for sending coredumps over an AF_UNIX socket. This coredump socket allows userspace to not have to rely on usermode helpers for processing coredumps, and provides a safer way to handle them instead of relying on privileged coredumping helpers. This functionality is implemented using another feature that allows to hand out pidfds for reaped peer tasks.
Recommended LWN article: Slowing the flow of core-dump-related CVEs
1.8. Futex improvements
This release adds support for process local hash which is only shared by all threads of process (as opossed by the futex hash that by default is system wide and shared by all tasks). This hash will only be used for a PROCESS_PRIVATE futex operation. There is also support for FUTEX2_NUMA (which feature extends the futex interface to be NUMA-aware) and FUTEX2_MPOL (which feature extends the futex interface to be mempolicy-aware) (cover), commit, [[https://git.kernel.org/linus/55284f70
1.9. Some Ext4 performance improvements
This release incorporates some performance to the "fast commit" path, multi-fsblock atomic write support for bigalloc file systems, and large folio support for regular files. This last can result in really stupendous performance for the right workloads (eg. a 37% improvement on a large sequential I/O workload)
Línea 72: Línea 64:
1.10. Build optimization for the local CPU on x86
For those users who still compile their own kernels, this release adds a CONFIG_X86_NATIVE_CPU option that makes the kernel build with the -march=native option. This makes compilers optimize the compilation for your CPU, which can provide nice performance improvements.
2. Core (various)
vfs: Add sysctl vfs_cache_pressure_denom, for more granular cache pressure control (eg. if you wish to preserve more dentries during memory reclamation). At the default value of vfs_cache_pressure = vfs_cache_pressure_denom the kernel will attempt to reclaim dentries and inodes at a "fair" rate with respect to pagecache and swapcache reclaim. Decreasing vfs_cache_pressure causes the kernel to prefer to retain dentry and inode caches. When vfs_cache_pressure=0, the kernel will never reclaim dentries and inodes due to memory pressure and this can easily lead to out-of-memory conditions. Increasing vfs_cache_pressure beyond vfs_cache_pressure_denom causes the kernel to prefer to reclaim dentries and inodes. Increasing vfs_cache_pressure significantly beyond vfs_cache_pressure_denom may have negative performance impact. Reclaim code needs to take various locks to find freeable directory and inode objects. When vfs_cache_pressure equals (10 * vfs_cache_pressure_denom), it will look for ten times more freeable objects than there are commit
fscrypt: Add support for hardware-wrapped keys commit
kexec: Introduce kexec handover (KHO) (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- vt
- io_uring
Support kdump with luks encryption by reusing luks volume keys (cover), commit, commit, commit, commit, commit, commit, commit, commit
cgroup: Separate rstat trees (cover), commit, commit, commit, commit, commit, commit
(FEATURED) futex: Add support task local hash maps, FUTEX2_NUMA and FUTEX2_MPOL (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
RCU: Add counters for lockups and stalls (cover), commit, commit
memcg: introduce non-blocking limit setting option commit, commit
modules: Implement means for exports to be available to an explicit list of named modules. By explicitly limiting the usage of certain exports, the abuse potential/risk is greatly reduced (cover), commit, commit, commit, commit
ptrace: introduce PTRACE_SET_SYSCALL_INFO API, a generic ptrace API that complements PTRACE_GET_SYSCALL_INFO by letting the ptracer modify details of system calls the tracee is blocked in (cover), commit, commit, commit, commit, commit, commit
- task scheduler
Dynamic asym priority support (cover), commit, commit, commit, commit
Add statistics of numa balance task migration (cover), commit, commit
Skip VMA scanning on memory pinned to one NUMA node via cpuset.mems (cover), commit, commit
Add kernel cmdline option for rt_group_sched, thus deferring the decision whether to have CONFIG_RT_GROUP_SCHED or not up until the boot time (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
sched_ext: Introduce scx_sched. In preparation of supporting multiple hierarchical schedulers, this patchset packages the states which are currently global but need to become per scheduler instance into the new struct scx_sched commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enhance built-in idle selection with allowed cpus (cover), commit, commit, commit, commit, commit
(FEATURED) Add coredump socket for more secure core dumping (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
Faster and simpler crc32c computation (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
maple_tree: Track node vacancy to reduce worst case allocation counts (cover), commit, commit, commit, commit, commit, commit
proc: extend the PAGEMAP_SCAN ioctl to report guard regions (cover), commit, commit, commit
fs: add S_ANON_INODE commit
select: do_pollfd: add unlikely branch hint return path commit
crash: export PAGE_UNACCEPTED_MAPCOUNT_VALUE to vmcoreinfo commit
Move ret_from_fork() to c and inline syscall_exit_to_user_mode() (cover), commit, commit, commit, commit
ITER_XARRAY cleanups and consequences (cover), commit, commit, commit, commit, commit, commit, commit, commit
- Rust
Astractions for clk, cpumask, cpufreq, opp (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce cpuid and fix cpumask doctest (cover), commit, commit, commit
Auxiliary bus rust abstractions (cover), commit, commit, commit, commit, commit
Drm rust abstractions and nova (cover), commit, commit, commit, commit, commit, commit, commit, commit
Add io polling (cover), commit, commit, commit, commit, commit
xarray: Add a minimal abstraction for XArray (cover), commit, commit, commit
Support for mm_struct, vm_area_struct, and mmap (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
- tools/nolibc
power: Wire-up filesystem freeze/thaw with suspend/resume (cover), commit, commit, commit, commit, commit
Remove uselib() system call commit
exit: combine work under lock in synchronize_group_exit() and coredump_task_exit() commit
gcc-plugins: remove SANCOV gcc plugin commit
gendwarfksyms: Add more kABI rules (cover), commit, commit, commit, commit, commit
kbuild: Make gcc-8.1 and binutils-2.30 the minimum version (cover), commit, commit, commit
Remove structleak gcc plugin commit
3. File systems
- BTRFS
Simplify extent buffer writeback: gains throughput and runtime improvements on metadata heavy operations doing writeback (sample test shows +50% throughput, -33% runtime) (cover), commit, commit, commit
More efficient extent unpinning when committing transaction (estimated run time improvement 3-5%) (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Move block perfect compression out of experimental features commit
Prepare compression paths for large data folios commit
Enable large data folios support for defrag commit
scrub: reduce memory usage of struct scrub_sector_verification commit
- EXT4
(FEATURED) Fast commit performance patchset (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Enable large folio for regular files (cover), commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Add multi-fsblock atomic write support with bigalloc (cover), commit, commit, commit, commit, commit, commit, commit
- BCACHEFS
Snapshot deletion improvements (cover), commit, commit, commit, commit, commit, commit, commit, commit
opts.rebalance_on_ac_only commit
Knob for manual snapshot deletion commit
Add bch_sb_field_recovery_passes superblock section commit, commit
Bcachefs async object debugging (cover), commit, commit, commit, commit, commit
sysfs trigger_emergency_read_only commit
sysfs trigger_journal_commit commit
Alloc_request.ca commit
- F2FS
- FUSE
- NFS
Add localio to sysfs commit
Add support for fallocate(FALLOC_FL_ZERO_RANGE) commit
Always probe for LOCALIO support asynchronously commit
Add /sys/kernel/debug/nfsd commit
Implement FATTR4_CLONE_BLKSIZE attribute commit
Add experimental setting to disable the use of splice read commit
Implement referring call lists for CB_OFFLOAD (cover), commit, commit, commit, commit
- XFS
- SMB
Introduce and use common smbdirect headers/structures (step1) (work done in order to unify the in kernel client and server layers and expose the result to userspace, so that Samba can also use it) (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Client: add ParentLeaseKey support commit
Improve directory cache reuse for readdir operations commit
- EROFS
- OVERLAYFS
- SQUASHFS
Add optional full compressed block caching commit
- UFS
Convert ufs to the new mount api commit
- EXT2
Deprecate dax commit
- NTFS3
Remove ability to change compression on mounted volume commit
- OMFS
Convert to new mount api commit
- ORANGEFS
Convert to use the new mount api commit
- BFS
Convert bfs to use the new mount api commit
4. Memory management
Always call constructor for kernel page tables (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Rewrite pfnmap tracking and remove vm_pat (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) mempolicy: Weighted Interleave Auto-tuning commit
Avoid costly high-order page allocations when reading proc files (cover)
Decouple memcg and objcg stocks (cover), commit, commit, commit, commit
Enhance sysfs handling for memory hotplug in weighted interleave (cover), commit, commit, commit
mempolicy: optimize queue_folios_pte_range by PTE batching commit
Nmi-safe kmem charging (cover), commit, commit, commit, commit, commit
Add CONFIG_PAGE_BLOCK_ORDER to select page block order commit
madvise: batch tlb flushes for MADV_DONTNEED and MADV_FREE (cover), commit, commit, commit, commit
Add max arg to swappiness in memory.reclaim and lru_gen (cover), commit, commit, commit
Minor cleanups and improvements to swap freeing code (cover), commit, commit, commit, commit, commit, commit, commit, commit
vmscan: Enforce mems_effective during demotion (cover), commit, commit
hugetlb: use separate nodemask for bootmem allocations (cover), commit
Make memcg stats irq safe (cover), commit, commit, commit, commit, commit, commit, commit
Let unmap_hugepage_range() and several related functions to take folio instead of page (cover), commit, commit, commit, commit
Use SWAPPINESS_ANON_ONLY in MGLRU commit
Add folio_mk_pte() (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Use kmem_cache for memcg alloc (cover), commit, commit, commit
Eliminate mmap() retry merge, add .mmap_prepare hook (cover), commit, commit, commit
compaction: allow more aggressive proactive compaction (cover), commit, commit
mincore: use pte_batch_hint() to batch process large folios commit
damon: auto-tune DAMOS for NUMA setups including tiered memory (cover), commit, commit, commit, commit, commit, commit, commit
Remove aops->writepage (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
5. Block layer
Remove block layer bounce buffering (cover), commit, commit, commit, commit, commit, commit, commit
zram: support algorithm-specific parameters (cover), commit, commit
ublk: Add UBLK_U_CMD_UPDATE_SIZE commit
ublk: add feature UBLK_F_QUIESCE (cover), commit, commit, commit
ublk: Support to register bvec buffer automatically (cover), commit, commit, commit, commit, commit, commit
dm-bufio: remove maximum age based eviction commit
dm mpath: Interface for explicit probing of active paths (cover), commit, commit
dm: Pass through operations on wrapped inline crypto keys (cover), commit, commit
md: add a new api sync_io_depth commit
ublk: Decouple server threads from ublk_queues/hctxs (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
6. Tracing, perf and BPF
- BPF
bpf qdisc (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support bpf rbtree traversal and list peeking (cover), commit, commit, commit, commit, commit, commit, commit, commit
Replace CONFIG_DMABUF_SYSFS_STATS with BPF (cover), commit, commit, commit, commit, commit
Add support for __prog argument suffix to pass in prog->aux commit
Retrieve ref_ctr_offset from uprobe perf link (cover), commit, commit, commit
Allow XDP_REDIRECT for xdp dev-bound programs (cover), commit, commit
Introduce kfuncs for memory reads into dynptrs (cover), commit, commit, commit
Support atomic update for htab of maps (cover), commit, commit, commit, commit, commit, commit
Add support for custom btf path in prog load/loadall commit
- perf
Add support for cpu event term (cover), commit, commit, commit, commit
perf report: Support custom output fields in hierarchy mode (cover), commit, commit, commit, commit
perf mem: Add new output fields for data source commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf record --off-cpu: Dump off-cpu samples directly (cover), commit, commit, commit, commit, commit, commit, commit, commit
perf lock contention: Add -J/--inject-delay option commit
Use rustc-demangle for rust demangling (cover), commit, commit, commit, commit, commit, commit
Metric related performance improvements (cover), commit, commit, commit
Add support for cpu event term (cover), commit, commit, commit, commit
perf trace: Support --summary-mode=cgroup commit
perf python: Add support for 'struct perf_counts_values' to return counter data commit
perf python: Add missing infra pieces for counting (cover), commit, commit, commit, commit, commit
perf report: Add 'tgid' sort key commit
ftrace: Expose call graph depth as unsigned int (cover), commit, commit
tracing: Updates for v6.16 (cover), 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
7. Virtualization
Add virtio_rtc module (cover), commit, commit, commit, commit
Move initializing sev/snp functionality to kvm (cover), commit, commit, commit, commit, commit, commit, commit, commit
tsm-mr: Unified Measurement Register ABI for TVMs commit, commit, commit, commit, commit, commit, commit
Enlightened vtpm support for svsm on sev-snp (cover), commit, commit, commit, commit
KVM: Tdx initialization + vcpu/vm creation (cover), 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
hyperv: Support Virtual Trust Level Boot (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
8. Cryptography
Turris ecdsa signatures via keyctl() (cover), commit, commit, commit, commit, commit
Add partial block api and hmac to ahash (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
acomp: add missing return statements in compress/decompress commit
hash: preparation for block-only shash (cover), commit, commit, commit, commit, commit, commit, commit, commit
lib: add partial block helper (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Remove request chaining (cover), commit, commit, commit, commit, commit
9. Security
kexec: measure events between kexec load and execute (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
- selinux
Reduce path walk overhead with a small directory access cache that is added to the per-task SELinux state. This cache allows SELinux to cache the most recently used directory access decisions in order to avoid repeatedly querying the AVC commit
Support wildcard match in genfscon. It allows for more expressive and efficient path matching in the policy which is especially helpful for sysfs, and has resulted in a ~15% boot time reduction in Android commit
10. Networking
(FEATURED) Device memory TCP TX path. Device memory TCP (merged in Linux 6.12) provided the ability to zero-copy receive TCP payloads to a DMABUF region of memory while packet headers land separately in normal kernel buffers. The TX path was dropped from the Device Memory TCP patch series to make it easier to review and merge, this release includes the TX path (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
TCP Receive side improvements (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce SO_PASSRIGHTS socket option: As long as recvmsg() or recvmmsg() is used with cmsg, it is not possible to avoid receiving file descriptors via SCM_RIGHTS, this option disables it (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
IP: Improve TCP sock multipath routing (cover), commit, commit, commit
vxlan: Convert fdb table to rhashtable. Nr. of packets per second using a single pktgen thread with varying number of entries is increased as result (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
veth: qdisc backpressure and qdisc check refactor (cover), commit, commit
wireguard: device: enable threaded NAPI commit
bonding: Assign random address if device address is same as bond commit
Introducing openvpn data channel offload (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- rxrpc, afs
Add AFS GSSAPI security class to AF_RXRPC and kafs (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Clean up refcounting on afs_cell and afs_server records (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Devmem tcp minor cleanups and ksft improvements (cover), commit, commit, commit, commit, commit, commit, commit, commit
- bridge
ethtool: Introduce ethnl dump helpers (cover), commit, commit, commit
Add support for providing the ptp hardware source in tsinfo commit
Cover more per-cpu storage with local nested bh locking (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
No RTNL for ipv6 routing table. (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- wifi
MPTCP: Various small and unrelated improvements (cover), commit, commit, commit, commit, commit, commit, commit, commit
- netfilter
Netfilter updates for net-next (cover), 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
Netfilter updates for net-next (cover), commit, commit, commit, commit, commit, commit
- sunrpc
pidfs: enable handing out pidfds for reaped sk->sk_peer_pid (cover), commit, commit, commit, commit
- Bluetooth
- ynl
11. Architectures
- ARM
New SoCs:
RK3562 is a new chip based on the old Cortex-A53 core, apparently a low-cost version of the Cortex-A55 based RK3568/RK3566 (cover), commit, commit, commit, commit, commit, commit
NXP i.MX94 is a minor variation of i.MX93/i.MX95 with a different set of on-chip peripherals (cover), commit, commit, commit
Renesas RZ/V2N (R9A09G056) is a new member of the larger RZ/V2 family (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Amlogic S6/S7/S7D (cover), commit, commit, commit, commit, commit, commit, commit
Samsung Exynos7870 is an older chip similar to Exynos7885 (cover), commit, commit, commit, commit, commit
WonderMedia wm8950 is a minor variation on the wm8850 chip (cover), commit, commit
Amlogic s805y is almost idential to s805x (cover), commit, commit
Allwinner A523 is similar to A527 and T527 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Qualcomm MSM8926 is a variant of MSM8226 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Qualcomm Snapdragon X1P42100 is related to R1E80100 (cover), commit, commit, commit, commit, commit, commit
- New board and device support
Add support for toradex smarc i.mx8mp (cover), commit, commit
ti: Add Toradex Verdin AM62P (cover), commit, commit, commit, commit, commit, commit
Add two board-families from theobroma-systems (cover), commit, commit, commit, commit, commit, commit
Add rk3562 soc and evb support (cover), commit, commit, commit, commit, commit
rockchip: add and enable DSI2 on rk3588 (cover), commit, commit, commit
socfpga: agilex5: add NAND daughter board (cover), commit, commit
Add bananapi r4 variants and add xsphy (cover), commit, commit, commit, commit, commit, commit, commit, commit
rockchip: add ROCK 5B+ support (cover), commit, commit, commit, commit
Add initial device tree for TQMa93xx/MBa91xxCA commit, commit
imx8mp: Add device tree for Nitrogen8M Plus ENC Carrier Board commit, commit
renesas: r8a779g3: Add Retronix R-Car V4H Sparrow Hawk board support (cover), commit, commit, commit
Basic devicetree support for amlogic s6 s7 and s7d (cover), commit, commit, commit, commit, commit, commit, commit
Add support for renesas rz/v2n soc and evk (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for rk3399 industry evaluation board (cover), commit, commit
ti: Add basic support for phyBOARD-Izar-AM68x commit, commit, commit
qcom: Add industrial mezzanine support for qcs6490-rb3gen2 commit
Add rz/g3e xspi support (cover), commit, commit, commit, commit, commit, commit, commit
freescale: add initial device tree for TQMa8XxS commit, commit
Add new imx imx8mp-libra-rdk-fpsc sbc (cover), commit, commit, commit
mediatek: Add MT8186 Ponyta Chromebooks commit
Hp elitebook ultra g1q support (cover), commit, commit, commit, commit
vt8500: Add VIA APC Rock/Paper board (cover), commit, commit
stm32: add initial support for stm32mp157-ultra-fly-sbc board commit, commit, commit, commit
Support stm32h747i-disco board (cover), commit, commit, commit, commit, commit, commit, commit, commit
Add initial support for renesas rz/t2h soc (cover), commit, commit, commit, commit, commit
Board support for fernsehfee 3.0 (cover), commit, commit, commit, commit
renesas: Add r9a06g032-rzn1d400-eb board device-tree commit
qcom: Initial dts for LG Nexus 4 commit
bcm: Add support for Raspberry Pi 2 (2nd rev) (cover), commit, commit, commit
socfpga: Add basic support for Terrasic's de10-nano (cover), commit, commit
Add device-tree for ASUS Transformer Pad LTE TF300TL (cover), commit, commit, commit
qcom: sm6125: Initial support for xiaomi-ginkgo redmi note 8 support commit, commit
freescale: Add PHYTEC phyBOARD-Nash-i.MX93 support commit, commit
imx8mp-tqma8mpql-mba8mp-ras314: Add Raspberry Pi Camera V2 overlay commit, commit
platform: mellanox: nvsw-sn2200: Add support for new system flavour (cover), commit, commit
mediatek: mt8188: Add all Multimedia Data Path 3 nodes commit, commit, commit
Mediatek dimensity 1200 - add dvfsrc support (cover), commit, commit, commit, commit
davinci: remove support for da830 commit
qcom: rpmhpd: Add SM4450 power domains (cover), commit, commit, commit
sunxi: h616: Enable Mali GPU (cover), commit, commit, commit, commit
platform/mellanox: mlxbf-pmc: Support additional PMC blocks commit
vt8500: Add runtime SoC version identification (cover), commit, commit, commit
Introduce llcc v6 used on the sm8750 socs (cover), commit, commit, commit, commit
qcom: Add SM7150 Google Pixel 4a commit, commit, commit, commit
sophgo: add rtc support for CV1800 (cover), commit, commit, commit
Arm CoreSight: Support AUX pause and resume (cover), commit, commit, commit, commit, commit, commit, commit
scmi/imx: Add i.MX95 LMM/CPU Protocol (cover), commit, commit, commit, commit, commit, commit, commit
sophgo: add SG2044 clock controller support (cover), commit, commit, commit, commit, commit
ti: k3-socinfo: Add JTAG ID for AM62LX commit
Add codec driver for cirrus logic cs48l32 dsp (cover), commit, commit
EP: Add RC-to-EP doorbell with platform MSI controller (cover), commit, commit, commit, commit, commit
Mediatek dimensity 1200 - add iommu support (cover), commit, commit
platform/mellanox: mlxreg-dpu: Add initial support for Nvidia DPU (cover), commit, commit, commit, commit, commit, commit
Enable drm/imagination bxm-4-64 support for licheepi 4a (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add usb2phy port reset control driver for renesas rz/v2h(p) soc (cover), commit, commit, commit
- KVM
Recursive NV support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce CONFIG_UBSAN_KVM_EL2 commit
hyperv: Support Virtual Trust Level Boot (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow userspace to limit the number of PMU counters for EL2 VMs (cover), commit, commit, commit, commit, commit
vgic-its: Add debugfs interface to expose ITS tables commit
Expose aidr_el1 via sysfs commit
arm_scmi: Add polling support to raw mode commit
Revamp Fine Grained Trap handling (cover), 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
Perf improvements for hugetlb and vmalloc on arm64 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for spe data source packet on hisilicon hip12 (cover), commit, commit, commit
Support arm64_va_bits=52 when setting arch_mmap_rnd_bits_max commit
- X86
Make 5-level paging support unconditional for x86-64 (cover), commit, commit, commit, commit
(FEATURED) Support intel advanced performance extensions (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) kbuild: Add the CONFIG_X86_NATIVE_CPU option to locally optimize the kernel with '-march=native' commit
Attack vector controls (part 1). It restructures the existing mitigation selection logic (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
alternatives: remove false sharing in poke_int3_handler() (cover), 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, commit, commit, commit, commit, commit, commit
memory,x86,acpi: hotplug memory alignment advisement (cover), commit, commit, commit
misc: Move amd side band interface(sbi) functionality (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
intel_idle: Add c1 demotion on/off sysfs knob (cover), commit, commit, commit
iommu/amd: Add support for HTRangeIgnore feature commit
iommu/amd: Allow matching ACPI HID devices without matching UIDs commit
- platform
chrome: of_hw_prober: Support Google Spherion commit
chrome: mediatek: mt8186-corsola: Consolidate and add new devices (cover), commit, commit
amd/hsmp: Report power via hwmon sensors commit, commit, commit
intel-uncore-freq: Add agent_types and die_id attributes (cover), commit, commit, commit, commit, commit
tuxedo: Add virtual LampArray for TUXEDO NB04 devices (cover), commit
ISST: SST PP and TF revision 2 (cover), commit, commit, commit
ISST: SST PP and TF revision 2 (cover), commit, commit, commit
alienware-wmi-wmax: HWMON support + DebugFS + Improvements (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dell-ddv: Expose the battery health to userspace commit, commit, commit, commit
oxpec: add devices, features, fix abi and move to platform/x86 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
oxpec: Add support for OneXPlayer G1 Intel/AMD (cover), commit, commit
thinkpad-acpi: Add support for new hotkey for camera shutter switch commit
Create intel pmc ssram telemetry driver (cover), commit, commit, commit, commit, commit
pmc: Add Panther Lake support to Intel PMC SSRAM Telemetry, add Lunar Lake support to Intel PMC SSRAM Telemetry commit, commit
samsung-galaxybook: Add SAM0426 commit
dell-lis3lv02d: Add Latitude 5500 commit
dell-lis3lv02d: Add Precision 3551 commit
Add Wildcat Lake support commit
thinkpad_acpi: handle HKEY 0x1402 event commit
- KVM
TDX mmu part 2 (cover), 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
SVM: Add architectural definitions/assets for Bus Lock Threshold commit
Advertise support for AMD's PREFETCHI commit
Add a module param for device posted IRQs (cover), commit, commit, commit
SEV: Add support for the ALLOWED_SEV_FEATURES feature (cover), commit, commit
SVM: Add support for the bus lock threshold (cover), commit, commit, commit
TDX: TD vcpu enter/exit (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) TDX: TDX "the rest" part (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enlightened vtpm support for svsm on sev-snp (cover), commit, commit, commit, commit
Introduce quirk KVM_X86_QUIRK_IGNORE_GUEST_PAT (cover), commit, commit, commit, commit, commit, commit
Move initializing sev/snp functionality to kvm (cover), commit, commit, commit, commit, commit, commit, commit, commit
Introduce quirk KVM_X86_QUIRK_IGNORE_GUEST_PAT (cover), commit, commit, commit, commit, commit, commit
tsm-mr: Add TVM Measurement Register support commit
aes - drop the avx10_256 aes-xts and aes-ctr code (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
- perf
Support auto counter reload (cover), commit, commit, commit, commit, commit
Arch-pebs and pmu supports for clearwater forest and panther lake (cover), commit, commit, commit, commit, commit, commit
uncore: Overflow handling enhancements (cover), commit, commit, commit, commit
Intel vendor events and tma 5.02 metrics (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Intel tpebs min/max/mean/last support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf/amd/ibs: Add Zen5 support (tools changes) (cover), commit, commit, commit, commit
aes-xts - optimize _compute_first_set_of_tweaks for avx-512 commit
- POWERPC
kvm powerpc/book3s-hv: Expose Hostwide counters as perf-events (cover), commit, commit, commit, commit, commit, commit
pseries: Add character devices for indices, platform-dump and physical-attestation rtas (cover), commit, commit, commit, commit, commit, commit, commit
Add support for configure and control of hardware trace macro(htm) (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
- RISCV
sophgo: Introduce SG2044 SRD3-10 board support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
TH1520 SoC: Add AON firmware & power-domain support (cover), commit, commit, commit, commit, commit
Add vendor extensions support for sifive (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Basic device tree support for eswin eic7700 risc-v soc (cover), commit, commit, commit, commit
Add risc-v simd syndrome and recovery calculations commit
hwprobe: export Zabha extension commit
Add sbi fwft misaligned exception delegation support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ftrace: atmoic patching and preempt improvements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
kexec_file: Support loading Image binary file (cover), commit, commit
Add zicbop & prefetchw support (cover), commit, commit, commit, commit
Add support for pud thp commit
mm: Add support for Svinval extension commit
Enable mseal sysmap for rv64 commit
vDSO: Wire up getrandom() vDSO implementation commit
KVM: add KVM_CAP_RISCV_USERSPACE_SBI>RISC-V: KVM: VCPU reset fixes (cover), commit
bpf, riscv64: Support load-acquire and store-release instructions (cover), commit, commit, commit, commit, commit, commit, commit, commit
- S390
iommu: support additional table regions (cover), commit, commit, commit, commit, commit
Ap bus/zcrypt/pkey/paes no-mem-alloc patches (cover), 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
Reimplement lazy ASCE handling commit
- UM
- LOONGARCH
- MIPS
- HEXAGON
12. Drivers
12.1. Graphics
Add modifiers for apple gpu layouts commit
Expose modifiers/formats supported by async flips (cover), commit, commit, commit, commit, commit
syncobj: Extend EXPORT_SYNC_FILE for timeline syncobjs commit
virtio: Add capset definitions to UAPI commit
- xe
Pmu support for engine activity (cover), commit, commit, commit, commit, commit, commit, commit, commit
bmg: Add one additional PCI ID commit
hwmon: Add mailbox power limits, PL2, read energy from PMT (cover), commit, commit
hwmon: expose fan speed commit
svm: Add stats for SVM page faults commit
Add support for different firmware files on each GT (cover), commit, commit, commit
Allow to drop vram resizing commit
- amdgpu
Amdgpu usermode queues (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support for secure queues commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Implement userqueue signal/wait IOCTL commit, commit, commit, commit, commit, commit
Add userq specific kernel config for fence ioctls (cover), commit, commit
Dc patches mar 10 2025 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Dc patches mar 24, 2024 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Dc patches april 7, 2025 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Dc patches may 19 2025 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add Cleaner Shader Support for GFX10.3.x GPUs commit
Export DMCUB version to sysfs commit
Add userq fence support to SDMAv6.0 commit
Add userq fence support to SDMAv7.0 commit
Add support to query partition metrics commit, commit, commit, commit
Add new AMDGPU_INFO subquery for userq objects commit
amdkfd: Add rec SDMA engines support with limited XGMI commit
Add Support for enforcing isolation without Cleaner Shader commit
Create debugfs entry for dc6 counter commit
Implement Runtime Bad Page query for VFs commit
Implement HDMI Read Request commit
Amdgpu usermode queue support for navi4x commit, (cover), commit, commit, commit, commit, commit, commit, commit, commit
Enable userqueue secure sem for GFX 12 commit
Add rebar parameter commit
amdkfd: add pasid debugfs entries commit
Add debugfs for spirom IFWI dump commit
Support for multi-gpu interconnection to trigger dpc recovery (cover), commit, commit, commit, commit
amdgpu: enable eviction fence commit
Add disable kernel queue support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add queue id support to the user queue wait IOCTL commit
Add UAPI to query if user queues are supported commit, commit, commit
Add Cleaner Shader Support for GFX11.5.2/11.5.3 GPUs commit
amdkfd: Support chain runlists of XNACK+/XNACK- commit
- amdxdna
Add dma-buf support commit
- panthor
- rockchip
- mediatek
- Prepares support for MT8195/99 HDMIv2/DDCv2
- asahi
Add uapi for the asahi driver to help Mesa development commit
Provide helpers for system framebuffers and add efidrm/vesadrm (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- st7571-i2c
- nova-drm
- hisilicon
bridge: reuse DRM HDMI Audio helpers for DisplayPort bridges (cover), commit, commit, commit, commit
- imagination
- renesas
- hisilicon
- nouveau
Add support for hopper and blackwell gpus (cover), 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, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- panel
simple: add Tianma P0700WXF1MBAA and improve Tianma TM070JDHG34-00 (cover), commit, commit, commit
Add nlt nl13676bc25-03f panel support (cover), commit, commit
panel-orientation-quirks: Add 2024 OneXPlayer line & ZOTAC Zone orientation quirks commit, (cover)
samsung-sofef00: Drop s6e3fc2x01 support commit
panel-edp: Add support for several panels (cover), commit, commit, commit
Add visionox g2647fb105 panel support (cover), commit, commit
Add powertip ph128800t004-zza01 panel support (cover), commit, commit
simple: add Tianma P0700WXF1MBAA and improve Tianma TM070JDHG34-00 (cover), commit, commit, commit
Add driver for himax hx8279 driveric panels (cover), commit, commit, commit
- mediatek
Add dsi display support for sa8775p target (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
- msm
adreno: Support for gpu acd feature on adreno x1-85 (cover), commit, commit, commit, commit, commit, commit, commit
update SmartDMA feature masks (cover), commit, commit, commit, commit, commit
Add support for SAR2130P (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add dsi display support for sa8775p target (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
Drm scheduler kunit tests (cover), commit, commit, commit, commit, commit, commit
12.2. Power Management
Acpica 20250404 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add interfaces for acpi mrrm table (cover), commit, commit, commit
Turbostat v2025.06.08 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Platform temperature control interface (cover), commit, commit, commit
Add support for ipq5018 tsens (cover), commit, commit, commit, commit
thermal/drivers: Add support for Airoha EN7581 thermal sensor commit
12.3. Storage
Block write streams with nvme Flexible Data Placement (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Apple PMIC NVMEM cell driver (Formerly: Generic SPMI NVMEM cell driver) (cover), commit, commit, commit
nvmem: Remove unused nvmem cell table support commit
nvme/pci: PRP list DMA pool partitioning (cover), commit, commit
Maxim integrated max77759 pmic mfd-based drivers (cover), commit, commit
soc: qcom: ice: Add HWKM support to the ICE driver commit
ufs: core: Add WB buffer resize support commit
ufs: core: Support updating device command timeout commit
ufs: qcom: Add support for wrapped keys commit
ufs: ufs-qcom: Add support to dump HW and SW hibern8 count commit
ufs: ufs-qcom: Add support to dump MCQ registers commit
ufs: ufs-qcom: Add support to dump testbus registers commit
smartpqi: Add new PCI IDs commit
scsi_debug: Add ERASE for tapes commit
nvme: enable vectored registered bufs for passthrough cmds commit
nvmet: support completion queue sharing by multiple submission queues (cover), commit, commit, commit, commit
nvme: introduce multipath_always_on module param commit
12.4. Drivers in the Staging area
iio: frequency: ad9832: devicetree probing support commit
atomisp: Add support for using mainline mt9m114 driver (cover), commit, commit, commit, commit
12.5. Networking
ptp: driver opt-in for supported PTP ioctl flags (cover), commit, commit
airoha: Fix IPv6 hw acceleration (cover), commit, commit, commit
- mt76
- iwlwifi
updates - 26-12-24 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
updates - 2025-04-23 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
updates - 2025-04-24 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
updates - 2025-04-29 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
updates - 2025-04-30 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
updates - 2025-05-01 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
updates - 2025-05-05 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
updates - 2025-05-06 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
updates - 2025-05-09 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ixgbe: Add basic devlink support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
phy: Add support for new Aeonsemi PHYs (cover), commit, commit, commit, commit, commit, commit
ti: icssg-prueth: Add ICSSG FW Stats commit
igc: Add support for frame preemption feature in igc (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
enetc: Add more features for enetc v4 - round 2 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
idpf: add initial PTP support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- rtw89
Support SAR from BIOS ACPI (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Refine TX/RX logic as preparation to support MLO (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support MLO feature (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
fine tune STA + P2P concurrency (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mcc: improve user experience of P2P concurrency (cover), commit, commit, commit, commit, commit, commit
txgbe: add sriov function support commit, commit, commit, commit, commit, commit
ath11k: bring hibernation support back (cover), commit, commit, commit, commit, commit, commit
- ath12k
ath12k: handle link select and inactivate (cover), commit, commit, commit, commit, commit, commit
Enable REO queue lookup table on QCN9274 (cover), commit, commit, commit
Send MCS15 support to firmware during peer assoc commit
Add monitor mode support for WCN7850 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support MLO for WCN7850 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
Add Ath12k AHB driver support for IPQ5332 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add rx_info and replace the usage of rx desc (cover), commit, commit
Add monitor interface support on QCN9274 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Prevent multicast duplication for dynamic VLAN commit
Support usercase-specific firmware overrides (cover), commit, commit
Add support for 6 GHz AP for various power modes (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add 11d scan offload support and handle country code for WCN7850 (cover), commit, commit, commit, commit
Add support for link specific datapath stats commit
Enable AST index based address search in Station Mode commit
Add support to simulate firmware crash commit
RDMA/mana_ib: allow separate mana_ib for each mana client (cover), commit, commit, commit, commit
txgbe: Implement SRIOV for AML devices commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for rz/g3e canfd (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- mlx5
HWS, Refactor action STE handling (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
HWS, Complex Matchers and rehash mechanism fixes (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Reuse per-RQ XDP buffer to avoid stack zeroing overhead commit
Support software TX timestamp commit
RDMA/mlx5: Add support for 200Gbps per lane speeds commit
mt7988: Add built-in 2.5g ethernet phy support on mt7988 (cover), commit, commit
intel wired lan driver updates 2025-04-11 (ice, i40e, ixgbe, igc, e1000e) (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
stmmac: dwmac-loongson: Add Loongson-2K3000 support (cover), commit, commit, commit
mt76: Add mt7990 support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
brcmfmac: external auth support for Infineon devices (cover), commit, commit, commit, commit
mt76: mt7925: add rfkill_poll for hardware rfkill commit
dsa: microchip: add ETS scheduler support for KSZ88x3 switches commit
RDMA/mana_ib: allow separate mana_ib for each mana client (cover), commit, commit, commit, commit
phy: realtek: add RTL8127-internal PHY commit
phy: realtek: Add support for PHY LEDs (cover), commit, commit, commit, commit, commit, commit
mana: Add support for Multi Vports on Bare metal commit
Dpaa_eth conversion to ndo_hwtstamp_get() and ndo_hwtstamp_set() (cover), commit, commit, commit
Add gbeth glue layer driver for renesas rz/v2h(p) soc (cover), commit, commit, commit, commit
airoha: Add matchall filter offload support commit
- fbnic
phy: marvell-88q2xxx: Enable temperature sensor for mv88q211x commit
txgbe: Support the FDIR rules assigned to VFs commit
dsa: mt7530: modernize MIB handling + fix (cover), commit, commit, commit, commit, commit, commit
amd-xgbe: add support for AMD Renoir (cover), commit, commit, commit, commit, commit
dsa: mt7530: Add AN7583 support + PHY (cover), commit, commit, commit
igb: Xdp/zc follow up (cover), commit, commit, commit, commit
ena: Support persistent per-NAPI config commit
mt76: mt7925: introduce thermal protection commit
stmmac: Refactoring designware vlan code. (cover), commit, commit, commit
dsa: microchip: Add SGMII port support to KSZ9477 switch commit
bcmasp: Add v3.0 and remove v2.0 (cover), commit, commit, commit, commit, commit, commit, commit, commit
mdio: Add RTL9300 MDIO driver commit
phy: mediatek: add Airoha PHY ID to SoC driver commit, commit
airoha: Add l2 hw acceleration for airoha_eth driver (cover), commit, commit
airoha: Add per-flow stats support to hw flowtable offloading (cover), commit, commit, commit
ixgbe: Add ethtool support for e610 (cover), commit, commit, commit, commit
wifi:rtw88:rtw8822bu VID/PID for BUFFALO WI-U2-866DM commit, (cover)
bcmasp: Add v3.0 and remove v2.0 (cover), commit, commit, commit, commit, commit, commit, commit, commit
phy: realtek: Add support for WOL magic packet on RTL8211F commit
rt288: Improve rtl8814au performance (cover), commit, commit, commit, commit
mt76: support power delta calculation for 5 TX paths commit, commit, commit, commit, commit, commit, commit, commit, commit
r8169: add support for RTL8127A commit
txgbe: Implement udp tunnel port for txgbe (cover), commit, commit
mlx4: add SOF_TIMESTAMPING_TX_SOFTWARE flag when getting ts info commit
ixgbe: devlink: add devlink region support for E610 commit
ice: Refactor to prepare for intel ipu e2000 (gen3) (cover), commit, commit, commit, commit, commit
bcmgenet: 64bit stats and expose more stats in ethtool (cover), commit, commit, commit
airoha: Add l2 hw acceleration for airoha_eth driver (cover), commit, commit
mt76: mt7996: add macros for pci device ids commit
bnxt: add support rx side device memory TCP commit
stmmac: socfpga: 1000BaseX support and cleanups (cover), commit, commit, commit
stmmac: dwmac-loongson: Add Loongson-2K3000 support (cover), commit, commit, commit
phy: dp83822: Add support for changing the MAC series termination (cover), commit, commit, commit, commit
ath11k: support DBS and DFS compatibility commit
- btusb
- RDMA/mana_ib
RDMA/rxe: RDMA FLUSH and ATOMIC WRITE with ODP (cover), commit, commit
RDMA/bnxt_re: Support extended stats for Thor2 VF commit
usb: r8152: Add device ID for TP-Link UE200 commit
usb: qmi_wwan: add SIMCom 8230C composition commit
12.6. Audio
(FEATURED) USB offload support for audio devices. This feature offers major power savings on embedded devices where a USB audio stream can continue to flow while the rest of the system is sleeping. It also Introduce qc usb snd audio offloading support (cover), 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
Intel: avs: 16 channels support (cover), commit, commit, commit, commit, commit, commit, commit, commit
msnd: Remove midi code commit
hda: Add new pci id for AMD GPU display HD audio controller commit
Add support for three acer laptops using cs35l41 (cover), commit, commit
Hda - add new driver for hda controllers listed via acpi commit
HDA: Add Zhaoxin HDMI Controller and Codec support commit
amd: yc: Add support for Lenovo Yoga 7 16ARP8 commit
usb-audio: Add Pioneer DJ DJM-V10 support commit
hda/realtek - Add mute LED support for HP Victus 15-fb2xxx commit
hda/realtek - Add mute LED support for HP Victus 15-fa0xxx commit
hda/realtek - Add mute LED support for HP Pavilion 15-eg0xxx commit
- ASoC
Add rk3576 sai audio controller support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Intel: avs: Add support for FCL platform (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
tas27{64,70}: improve support for Apple codec variants (cover), commit, commit, commit, commit, commit, commit, commit, commit
Add richtek rt9123 and rt9123p support (cover), commit, commit, commit, commit
Intel: avs: Update machine board card names (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Intel: sof_sdw: Add support for wclrvp & ocelot in WCL platform commit
Add dapm/asoc helpers to create sdca drivers (cover), commit, commit, commit, commit, commit, commit, commit
Intel: avs: 16 channels support (cover), commit, commit, commit, commit, commit, commit, commit, commit
mt8195: Add support for MT8395 Radxa NIO 12L with MT6359 codec (cover), commit, commit, commit, commit, commit
Add support for cs35l63 smart amplifier (cover), commit, commit, commit, commit, commit
SOF: amd: add soundwire IO support for ACP7.0 & ACP7.1 platforms (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
tas2781: Add a debugfs node for acoustic tuning commit
Intel: soc-acpi-intel-lnl/ptl-match: Add rt713_vb_l3_rt1320_l3 support (cover), commit, commit
Add tegra264 support in ahub drivers (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add intel machine driver support for cs35l63 (cover), commit, commit
Intel: avs: Add support for FCL platform (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add renesas msiof sound driver (cover), commit, commit, commit, commit, commit, commit, commit, commit
Add sound card support for qcs9100 and qcs9075 (cover), commit, commit
Add support for loongson-1 ac97 (cover), commit, commit, commit, commit
soc: wcd938x: enable t14s audio headset (cover), commit, commit, commit, commit, commit, commit
ASoC/SOF/PCI/Intel: add Wildcat Lake support (cover), commit, commit, commit, commit, commit
SoundWire/ASoC: Intel: Add suppoirt for printing ACE3+ PVCCS (mic privacy) register in register dump (cover), commit, commit
12.7. Tablets, touch screens, keyboards, mouses
Xpad - more xbox one improvements (cover), commit, commit, commit, commit
xpad - support Acer NGR 200 Controller commit
- HID
12.8. TV tuners, webcams, video capturers
rkvdec: Add H.264 High 10 and 4:2:2 profile support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add driver for st vd56g3 camera sensor (cover), commit, commit
Add support for st vd55g1 camera sensor (cover), commit, commit
renesas: vsp1: Add colorspace support (cover), commit, commit, commit, commit, commit, commit, commit, commit
qcom: camss: Add X1 Elite support (cover), commit, commit, commit, commit, commit, commit, commit
Amlogic c3 isp support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mediatek: jpeg: support 34bits commit
i2c: ds90ub9xx: Error handling, UB9702 improvements (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rzg2l-cru: Add support for RZ/G3E (CSI2, CRU) (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mediatek: vcodec: support h264 extend vsi (cover), commit, commit, commit
vim2m: add multiplanar API support (cover), commit, commit, commit
qcom: iris: add support for SM8650 (cover), commit, commit, commit, commit, commit, commit, commit
Remove sta2x11 media pci driver commit
qcom: camss: Add X1 Elite support (cover), commit, commit, commit, commit, commit, commit, commit
Import ipu6 ov02e10 sensor driver and enable of usage of it (cover), commit, commit
i2c: Add Omnivision OV02C10 sensor driver commit
ov08x40: Add support for 2/4 lanes at 1500 Mbps commit, commit, commit, commit, commit, commit
verisilicon: Enable NV15 support for Rockchip VDPU981 commit
rc: add keymap for Hauppauge Credit Card RC commit
ti: cal: Add streams support (cover), commit, commit, commit
i2c: imx334: Add support for 1280x720 & 640x480 resolutions (cover), commit, commit, commit, commit
qcom: iris: add support for QCS8300 (cover), commit, commit, commit
verisilicon: Enable wide 4K in AV1 decoder commit
renesas: vsp1: Add support IIF ISP Interface commit
ipu-bridge: add ACPI HID for lt6911uxe bridge commit
12.9. Universal Serial Bus
misc: onboard_usb_dev: Add support for TI TUSB8044 hub commit, commit
Initial usb support for exynosautov920 soc (cover), commit, commit
serial: pl2303: add new chip PL2303GC-Q20 and PL2303GT-2AB commit
Introduce qc usb snd audio offloading support (cover), 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
typec: ucsi: add Huawei Matebook E Go ucsi driver commit
typec: ucsi: Add the UCSI commands in debugfs commit
typec: tcpm: sink (ufp) accessory mode support (cover), commit, commit, commit
typec: tcpci: add regulator support commit
Remove orphaned udc drivers commit
Onboard usb device support for rtl8188etv 2.4ghz usb wifi module (cover), commit, commit
dwc3: exynos: add support for Exynos2200 variant (cover), commit, commit
dwc3: qcom: Flatten dwc3 structure (cover), commit, commit, commit, commit, commit, commit
Introduce usb-hub.yaml binding and add support for parade ps5511 (cover), commit, commit, commit, commit
gadget: hid: allow dynamic interval configuration via configfs commit
typec: mux: fsa4480: add regulator support commit
option: add Telit Cinterion FE910C04 (ECM) composition commit
xhci: Add debugfs support for xHCI port bandwidth (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
12.10. Serial Peripheral Interface (SPI)
Add stm32mp25 spi nor support (cover), commit, commit, commit
Add support for double transfer rate (dtr) mode commit
spi_amd: Add PCI-based driver for AMD HID2 SPI controller commit
sh-msiof: Transfer size improvements and I2S reuse (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
12.11. Watchdog
Add driver for intel over-clocking watchdog (cover), commit, commit
Various fixes for the da9052 watchdog (cover), commit, commit, commit, commit
diag288_wdt: Implement module autoload commit
12.12. CPU Frequency scaling
Add support for "requested cpu min frequency" bios option (cover), commit, commit
CPPC: Add support for autonomous selection commit
intel_pstate: Enable EAS on hybrid platforms without SMT (cover), commit, commit, commit, commit, commit, commit, commit
12.13. Voltage, current regulators, power capping, power supply
- power
Add additional health status values commit, commit, commit, commit
supply: add Huawei Matebook E Go psy driver commit
supply: Add support for Maxim MAX8971 charger (cover), commit, commit
supply: add support for Pegatron Chagall battery (cover), commit, commit, commit, commit
reset: Add Toradex Embedded Controller (cover), commit, commit
- regulator:
Support rohm scalable pmic family (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
bcm590xx: Add support for BCM59054 (cover), commit, commit, commit, commit, commit, commit, commit, commit
Add ti tps65214 & tps65215 regulator support (cover), commit, commit, commit, commit
Add support for adp5055 triple buck regulator. (cover), commit, commit
fan53555: add enable_time support and soft-start times commit
12.14. Real Time Clock (RTC)
sophgo: add rtc support for Sophgo CV1800 SoC commit
Add nxp rtc driver support for s32g2/s32g3 socs (cover), commit, commit
s5m: add support for S2MPG10 RTC commit
12.15. Pin Controllers (pinctrl)
freescale: Add support for imx943 pinctrl commit
Mediatek dimensity 1200 - add pin controller support (cover), commit, commit, commit
mediatek: Add pinctrl driver on mt8196 (cover), commit, commit, commit
renesas: rzg2l: Add support for RZ/V2N SoC commit
12.16. Multi Media Card (MMC)
spacemit: add sdhci support to K1 SoC (cover), commit, commit
Add support for graceful host removal for eMMC/SD (cover), commit, commit, commit, commit, commit
12.17. Memory Technology Devices (MTD)
spinand: Add octal support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
12.18. Industrial I/O (iio)
Add support for winsen mhz19b co2 sensor (cover), commit, commit, commit, commit
Add driver for ad3530r and ad3531r dacs (cover), commit, commit, commit
accel: adxl345: add interrupt based sensor events (cover), commit, commit, commit, commit
Add support for the dfrobot sen0322 oxygen sensor (cover), commit, commit
adc: meson: add MPLL clock workaround for GXLX (cover), commit, commit
light: bh1750: Add hardware reset support via GPIO commit, commit
Update auto corner freq calculation (cover), commit, commit, commit, commit, commit, commit
Support rohm bd79124 adc (cover), commit, commit, commit, commit, commit, commit, commit, commit
dac: ad3552r-hs: add debugfs reg access commit
Add STM32MP25 LPTIM support: MFD, PWM, IIO, counter, clocksource (cover), commit, commit, commit, commit, commit, commit, commit, commit
dac: bd79703: Support BD79700 and BD79701 commit
adc: ad4000: Add SPI offload support (cover), commit, commit, commit, commit
adc: ad7380: add ad7389-4 support (cover), commit, commit, commit, commit, commit
ad3552r-hs: add support for internal ramp generator (cover), commit, commit, commit, commit, commit
hid-sensor-prox: Add support for 16-bit report size commit
ad7606: add SPI offload support (cover), commit, commit, commit
adc: ad7606: improvements and ad7606c parallel interface support (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support rohm bd797xx dacs (cover), commit, commit, commit, commit, commit
Support rohm bd79104 adc (cover), commit, commit, commit, commit, commit, commit, commit, commit
12.19. Multi Function Devices (MFD)
Add STM32MP25 LPTIM support: MFD, PWM, IIO, counter, clocksource (cover), commit, commit, commit, commit, commit, commit, commit
Support rohm scalable pmic family (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
bcm590xx: Add support for BCM59054 (cover), commit, commit, commit, commit, commit, commit, commit, commit
Samsung s2mpg10 pmic mfd-based drivers (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
max77759: Add Maxim MAX77759 core driver commit
12.20. Pulse-Width Modulation (PWM)
Add STM32MP25 LPTIM support: MFD, PWM, IIO, counter, clocksource (cover), commit, commit, commit, commit, commit, commit, commit
Add actual hardware state to pwm debugfs file commit
Add support for nxps high-side switch mc33xs2410 (cover), commit, commit
Introduce pwm driver for the loongson family chips (cover), commit, commit
meson: Support constant and polarity bits (cover), commit, commit, commit, commit
12.21. Inter-Integrated Circuit (I2C + I3C)
riic: Implement bus recovery commit
amd-isp: Add ISP i2c-designware driver commit
microchip-corei2c: add smbus support commit
Support ti fpc202 dual-port controller (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
12.22. Hardware monitoring (hwmon)
pmbus: Add support for MPM82504 and MPM3695 family (cover), commit, commit, commit, commit, commit
max6639: Allow setting target RPM commit
gpio-fan: add regulator support commit
Add keba battery monitoring controller support commit
k10temp: add support for zen5 ryzen desktop commit
Add support for adpm12160 a dc/dc power module (cover), commit
pmbus/max34440: add support for adpm12160 commit
ina2xx: make regulator 'vs' support optional commit
Add support for lt3074 low voltage linear regulator (cover), commit, commit
asus-ec-sensors: add rog maximus z90 formula. commit
max77705: add initial support commit
ausus-ec-sensors: add maximus vi hero. commit
Add keba fan controller support commit
oxpsensors: add devices, features, fix abi and move to platform/x86 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
12.23. General Purpose I/O (gpio)
Add support for blaize blzp1600 gpio driver (cover), commit, commit, commit
Maxim integrated max77759 pmic mfd-based drivers (cover), commit, commit
spacemit: add gpio support for K1 SoC (cover), commit, commit, commit, commit, commit
12.24. Leds
Support for texas instruments tps6131x flash led driver (cover), commit, commit
flash: Add support for flash/strobe duration commit
12.25. DMA engines
12.26. Hardware Random Number Generator (hwrng)
12.27. Cryptography hardware acceleration
Architecture-optimized sha-256 library api (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ccp: add support for pci device 0x17d8 commit
Qat: add support for qat gen6 devices (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Remove cavium zip and drop scomp dst buffer (cover), commit, commit, commit
12.28. PCI
Enable ipq5018 pci support (cover), commit, commit, commit, commit, commit, commit
Rate limit aer logs (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
apple: Add support for t6020 (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add ptm debugfs support (cover), commit, commit, commit, commit
12.29. Thunderbolt
12.30. Clock
sophgo: cv18xx: dts rework, part 2 (cover), commit, commit, commit
Add clock controller support for spacemit k1 (cover), commit, commit, commit, commit, commit, commit
Add t-head th1520 vo clock support for licheepi 4a gpu enablement (cover), commit, commit, commit
Add support for renesas rz/v2n soc and evk (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
qcom: Add support for Camera Clock Controller on QCS8300 commit
renesas: rzv2h: Add support for static mux clocks commit
sophgo: add SG2044 clock controller support (cover), commit, commit, commit, commit, commit
sunxi-ng: ccu: add Display Engine 3.3 (DE33) support (cover), commit, commit
Fix cpucl0 add cpucl1/2 clock support for exynosauto v920 soc (cover), commit, commit, commit, commit
stm32-lptimer: Add support for stm32mp25 commit
Fix tegra234 soc watchdog timer. (cover), commit, commit, commit
Add the system timer module for the nxp s32 architecture (cover), commit, commit
12.31. PHY ("physical layer" framework)
Introduce usbdrd-phy support for exynos7870 soc (cover), commit, commit, commit
rockchip: samsung-hdptx: Support high color depth management (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
samsung: add Exynos2200 SNPS eUSB2 driver (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add usb2.0 phy support for rz/v2h(p) soc (cover), commit, commit, commit, commit
Usb-phy support for the old rk3036 soc (cover), commit, commit, commit
rockchip: inno-usb2: Add usb2 phy support for rk3562 commit
fsl-imx8mq-usb: add i.MX95 tuning support commit
12.32. EDAC (Error Detection And Correction)
igen6: Add EDAC support for two Intel SoCs (cover), commit, commit, commit
i10nm: Add RRL support for Intel Granite Rapids server (cover), commit, commit, commit, commit, commit, commit, commit
12.33. Various
accel/ivpu: Implement heartbeat-based TDR mechanism commit
accel/ivpu: Reorder doorbell unregister and command queue destruction commit, (cover)
bus: mhi: host: pci_generic: Add Telit FN920C04 modem support commit
Support cxl memory ras features (cover), commit, commit, commit, commit, commit, commit, commit, commit
interconnect: Add epss l3 provider support on sa8775p soc (cover), commit, commit, commit, commit, commit
interconnect: qcom: sm8650: enable QoS configuration commit
irqchip/sg2042-msi: Add the Sophgo SG2044 MSI interrupt controller (cover), commit, commit, commit
sophgo: add mailbox support for CV18XX series SoC (cover), commit, commit
Mediatek dimensity 1200 - add smi support (cover), commit, commit
misc: Support ti fpc202 dual-port controller (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit
misc: echo: Remove commit
mchp_pci1xxxx: Add gpio hot reset and wakeup support (cover), commit, commit
remoteproc: imx_dsp_rproc: Add support for DSP-specific features commit
Driver for the apple spmi controller (cover), commit, commit, commit
13. List of Pull Requests
14. Other news sites
Phoronix Linux 6.16 Features