Size: 70997
Comment: Move 2.6.17 to its own page. Small scrollbars when browsing scare people.
|
Size: 1055
Comment: Linux 5.13 changelog (very late)
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
Comprehensible changelog of the linux kernel. This page shows a summary of the important changes being added in each linux kernel release - support for new devices, new features (filesystems, subsystems), important internal changes, etc. While this text is aimed to be (unlike the full changelog) readable, it's obvious that some parts will not be comprehensible for those who don't know a lot about kernel internals, just like it happens in every software project. Other places to get news about the linux kernel are [http://lwn.net/Kernel/ LWN kernel status], [http://lwn.net/Articles/driver-porting/ LWN driver porting guide], [http://lwn.net/Articles/2.6-kernel-api/ LWN list of API changes in 2.6], or [http://www.lkml.org www.lkml.org]. Before adding things here look at the [#rules 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.15 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.17 ==== * Still not released, see [http://wiki.kernelnewbies.org/Linux_2_6_17 the current changes] ==== Latest stable release: 2.6.16 ==== * Released 20 March, 2006 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.16 (full changelog)] * [http://72.14.207.104/search?q=cache:IT1X2f-H0yUJ:wiki.kernelnewbies.org/LinuxChanges+&hl=en&ct=clnk&cd=1 Google cache of this page] * Overview (useful for headlines): * OCFS2 (http://lwn.net/Articles/137278/, http://oss.oracle.com/projects/ocfs2/), a clustering filesystem contributed by Oracle (there's [http://sources.redhat.com/cluster/gfs/ GFS] from Red Hat who bought it from Sistina Software, shipped out-of-the-tree for now) * new unshare() ( http://lwn.net/Articles/135321/), pselect()/ppoll() and *at() system calls (http://lwn.net/Articles/164887/) * support the moving of the physical location of pages between nodes in NUMA systems * support for the Cell processor * cpufreq support for G5s plus thermal control for dualcore G5s * improved power management support for many devices and subsystems (libata, alsa...) * mutex locking primitive * high-resolution timers (http://lwn.net/Articles/167897) * per-mountpoint noatime/nodiratime * 64-to-32-bit ioctl compatibilty for the v4l2 subsystem * IPv6 support for DCCP * New TIPC protocol (Transparent Inter Process Communication, http://tipc.sourceforge.net/) used for intra-clustering communication * ACL support for CIFS filesystem * HFSX filesystem support * new configfs filesystem (which complements sysfs, not replaces it) * support for running executables from v9fs (plan9 9P distributed filesystem) * support for many new devices, improved support and features for others and lots of other changes. * '''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 hack is rather expensive, and other operative systems like OpenSolaris [http://docs.sun.com/app/docs/doc/816-0212/6m6nd4nc7?a=view already have some of 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 pselect/ppoll system call implementation [http://lwn.net/Articles/176911/ (LWN article)] [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 (disabled in this release by default) [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://lwn.net/Articles/167034/ (LWN article explaining the API)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6053ee3b32e3437e8c1e72687850f436e779bd49 (commit)] * High resolution timers ([http://lwn.net/Articles/167897 LWN article explaining the API)]. 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 [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 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f6b3ec238d12c8cc6cc71490c6e3127988460349 (commit)] * Per-mountpoint noatime/nodiratime 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 [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)] * Implement a generic dispatch queue for all the I/O schedulers [http://lwn.net/Articles/157208/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8922e16cf6269e668123acb1ae1fdc62b7a3a4fc (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b4878f245ec8e168cdd1f170f823a750b7dd4af5 (commit)] * Process scheduler * Add a 'domain distance' function, which is used to cache measurement results for machines with several nodes [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 [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 [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 [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 back the dentry struct from 136 (RCU enlarged it) to 128 bytes, to keep it a multiple of memory cache lines. 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. 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 changes 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 so batch managers monitoring jobs can efficiently detect what level of memory pressure that job is causing [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 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8ad4b1fb8205340dba16b63467bb23efc27264d6 (commit)] * swsusp: remove the image encryption. 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)] * Suspend/Resume support for AMD64 GART [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=90be4b49b8b54505772a6a766ac0891ec92b4c2d (commit)], ATI [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5dda4986752b531d89d49c218682e42c63ef1d61 (commit)] and Intel 945GM [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3b0e8eadc511eaceba6d6b8d0743359a34ee23c6 (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)] * Adds the Intel ICH8 IDs [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b6ebb2659065b6e03605e7f0c69449bda382261a (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)] * NTFS: Implement support for sector sizes above 512 bytes (up to the maximum supported by NTFS which is 4096 bytes) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=78af34f03d33d2ba179c9d35685860170b94a285 (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://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)] * Add JMicron JMB360 support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bd12097c7415c13aff53aed473eec92acd15712a (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)] * Driver for beeper found in Linksys NSLU2 boxes. It should work on any ixp4xx based platforms [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=01387959022def72f95f4bc1341aa69e32a06b30 (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)] * Add support for CA-42 clone cable (www.ca-42.com) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=838b42814c640ddcc378ba29cd31ffd64fb36bc5 (commit)] * usb-storage support for SONY DSC-T5 still camera [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ec7dc8d254985dc4a31858c2c7c7029290e223dd (commit)] and Rio Karma [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=abb02fdf83f981f2511b3772db6e106845c70ad9 (commit)] * ftdi: Two new ATIK based USB astronomical CCD cameras, ATIK-ATK16C and ATIK-ATK16HRC. These devices are also USB Astronomical CCD cameras that work through an FTDI 245BM chip, share the same base hardware but, it has a colour CCD chip instead of a grayscale one [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=09c280a24650ff74e713742e94120fdf7765cda8 (commit)] * ftdi_sio: Support two POS printers made by Westrex International (Model 777 and Model 8900F) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a94b52ac84828e193d18c96c1334c9997b524a35 (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 Network Manager 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)] * Add support to ET61X151 and ET61X251 PC Camera Controllers made by Etoms Electronics [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7ce08c93e388922e25a96a7d9895784182e4c72c (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)] [[Anchor(rules)]] Rules and tips: * Name of the new feature/description of the change, including a small explanation (if possible). Add links to web pages (if available), papers, etc. Keep the structure of previous changelogs! * If there's a interesting email (benchmarks, announcements if there's no web page, etc) about it in the mailing lists, get a link in one of the list's archives (at http://marc.theaimsgroup.com/?l=linux-kernel please, just for coherence. There're also fsdev & netdev mailing lists, etc) and add it. * Add commit's link to the git's web interface if possible, using the "(commit)" word. * To find commit's links you can search in the [http://www.kernel.org/git git web interface]. Remember that 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] (ie: current development) 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] * However, if you want to keep track in "realtime", do NOT use the git's web interface (or the RSS). The RSS gets overflowed when there's a big merge. And more importantly, the shortlog you find in git's web interface does NOT care when things were really "committed": If a developer writes a patch, merges it in his git repository and then Linus pulls and merges it a month after it was merged in the developer's repository , the commit data won't appear in the "todays shortlog", but in the one-month-old changes (this could be fixed in the future however). * IOW: To keep track of the linux merges in realtime, the best option is to [http://vger.kernel.org/vger-lists.html#git-commits-head subscribe to the git-commits-head] mailing list (or search in the archives). Commit IDs are in the X-Git-Commit mail header. Tell your mailer to show them (by default it will be hidden unless you activate the "see the whole mail" option), 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=" needed gitweb URL before it. * It may look too hard to review the thousands of emails you get from the git-commit-head list, get the commit ID, the URL, a description and format all of it to put it here: "Formatting" is what would take most of your time. But the fact is that you can avoid most of the hard job by using some tricks. First of all, most of the relevant commits will be merged (and sent to the git-commits-head list) in the first two weeks after a kernel is released. When the mailing list sends you the commit messages, use the "mark" feature of your mailer to mark important commits - this is a easy operation, since the subject tells you if the commit is important, you can review quite a lot of commit messages per minute. When you're done, create an action/filter/whatever which allows you to extract the commit id. My MUA (sylpheed) allows me to create an "action" which allows me to pass the selected message(s) to a command. This allows to me to order my messages by marked/umarked to make easier to select at the same time all the marked messages, the I tell sylpheed to execute the previous "action", which runs a scripts which "greps" the commit-id out of the email headers and appends it to a file. This way I get a file with a list of all the relevant commit IDs (Other MUAS could have another methods to achieve this same goal or not have any at all). Now, with a local linux git repository (updated to head) and with a bit of scripting you can get (with git) the changelog information of every commit ID, so you can parse that information and generate a wiki-compatible-syntax list of commits with descriptions, URLs to gitweb automatically generated, etc. You'll need to fix the descriptions, but you get a LOT of work done automatically. * The web interface will show "meta-commits". When Linus merges things from a remote repository, You'll see a "Merge git://git.domain.com/foo/bar" style of message commit. If you click it for details you'll see a huge merge, but then the git shortlog will also show the individual commits. So those "meta-commits" are useful to add links to big merges which do one thing but do not mean anything by themselves. Those "meta-commits" will not be mailed to the git-commits-head mailing list. Random related stuff: * [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], [http://kernelnewbies.org/status/latest.html Kernelnewbies status] * Todo: Find links to corresponding changesets for the untracked 2.5 releases (if you're really bored) |
<<Include(Linux_5.13)>> |
Changes done in each Linux kernel release. Other places to get news about the Linux kernel are LWN kernel status or the Linux Kernel mailing list (there is a web interface in www.lkml.org or lore.kernel.org/lkml). The lore.kernel.org/lkml/ archive is also available via NTTP if you prefer to use a newsreader: use nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel for that. List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules!
You can discuss the latest Linux kernel changes on the New Linux Kernel Features Forum.
Linux 5.13 has been released on Sun, 27 June 2021
Summary: This release includes the Landlock security module, which aims to make easier to sandbox applications; support for the Clang Control Flow Integrity, which aims to abort the program upon detecting certain forms of undefined behavior; support for randomising the stack address offset in each syscall; support for concurrent TBL flushing; preparatory Apple M1 support; support for incoming AMD and Intel graphics chips; BPF support for calling kernel functions directly; a virtio sound driver for improved sound experience on virtualized guests; io_uring support for multi shot mode and a misc cgroup for miscellaneous resources. As always, there are many other features, new drivers, improvements and fixes.
Contents
-
Prominent features
- Landlock security module
- Support for Clang Control Flow Integrity
- Support for randomising the stack address offset in each syscall
- Support for concurrent TBL flushing
- Preparatory Apple M1 support
- Support for incoming AMD and Intel graphics chips
- BPF support for calling kernel functions directly
- A virtio sound driver for improved sound experience on virtualized guests
- io_uring support for multi shot mode
- Add misc cgroup
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing, perf and BPF
- Virtualization
- Security
- Networking
- Architectures
-
Drivers
- Graphics
- Power Management
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Watchdog
- Serial
- CPU Frequency scaling
- Voltage, current regulators, power capping, power supply
- Real Time Clock (RTC)
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Multi Function Devices (MFD)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C + I3C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Cryptography hardware acceleration
- PCI
- Remote Processors
- Clock
- PHY ("physical layer" framework)
- Various
- List of Pull Requests
- Other news sites
1. Prominent features
1.1. Landlock security module
Landlock is a new Linux security module that allows to sandbox applications. The goal of Landlock is to enable to restrict ambient rights (e.g. global filesystem access) for a set of processes. Because Landlock is a stackable LSM, it makes possible to create safe security sandboxes as new security layers in addition to the existing system-wide access-controls. This kind of sandbox is expected to help mitigate the security impact of bugs or unexpected/malicious behaviors in user-space applications. Landlock empowers any process, including unprivileged ones, to securely restrict themselves.
Landlock is inspired by seccomp-bpf but instead of filtering syscalls and their raw arguments, a Landlock rule can restrict the use of kernel objects like file hierarchies, according to the kernel semantic. Landlock also takes inspiration from other OS sandbox mechanisms: XNU Sandbox, FreeBSD Capsicum or OpenBSD Pledge/Unveil.
In this current form, Landlock misses some access-control features. This enables to minimize this patch series and ease review. This series still addresses multiple use cases, especially with the combined use of seccomp-bpf: applications with built-in sandboxing, init systems, security sandbox tools and security-oriented APIs
Recommended LWN article: Sandboxing with the Landlock security module
1.2. Support for Clang Control Flow Integrity
This release builds on last cycle's LTO work, and allows the arm64 kernels to be built with Clang's Control Flow Integrity feature, which is designed to abort the program upon detecting certain forms of undefined behavior that can potentially allow attackers to subvert the program’s control flow. This feature has happily lived in Android kernels for almost 3 years. CFI support for x86 is still under development, but is pretty close.
Recommended LWN article: Control-flow integrity for the kernel
1.3. Support for randomising the stack address offset in each syscall
This release supports randomized stack offsets per syscall to make stack-based attacks harder which rely on the deterministic stack layout. The feature is based on the original idea of PaX's RANDSTACK feature, but uses a significantly different implementation.
The feature is guarded with a static branch which avoids the overhead when disabled. As of this release this is supported for X86 and ARM64.
1.4. Support for concurrent TBL flushing
Currently, local and remote TLB flushes are not performed concurrently, which introduces unnecessary overhead - each INVLPG can take 100s of cycles. This patch-set allows TLB flushes to be run concurrently: first request the remote CPUs to initiate the flush, then run it locally, and finally wait for the remote CPUs to finish their work. In testing this improved sysbench performance measurably by a couple of percentage points, especially if TLB-heavy security mitigations are active.
1.5. Preparatory Apple M1 support
This kernel includes initial support for the Apple M1 platform. The Apple M1 is the processor used it all current generation Apple Macintosh computers. Support for this platform so far is rudimentary, but it boots and can use framebuffer and serial console over a special USB cable.
Support for several essential on-chip devices (USB, PCIe, IOMMU, NVMe) is work in progress but was not ready in time for this release.
A very detailed description of what works is in the commit messages and on the AsahiLinux wiki
1.6. Support for incoming AMD and Intel graphics chips
This release includes initial support for future Intel and AMD chips, such as Intel Alderlake S or AMD Adebaran support
1.7. BPF support for calling kernel functions directly
This release allows bpf programs calling kernel functions (initially to reuse TCP congestion control implementations)
Recommended LWN article: Calling kernel functions from BPF
1.8. A virtio sound driver for improved sound experience on virtualized guests
This release implements a driver part of the virtio sound device specification.
The driver supports PCM playback and capture substreams, jack and channel map controls. A message-based transport is used to write/read PCM frames to/from a device.
As a device part was used OpenSynergy proprietary implementation.
1.9. io_uring support for multi shot mode
Support for multi-shot poll. This allows arming a poll request for a given event mask, and then have it trigger multiple times. The default behavior for io_uring POLL_ADD has been one-shot, where one SQE issued will result in one CQE filled (when the event triggers) and termination of the poll request after that. With multi-shot, one POLL_ADD will generate a CQE every time the event triggers.
1.10. Add misc cgroup
This implements generic support for misc resources which can be controlled by simply counting and limiting the number of resource instances - ie there's X number of these on the system and this cgroup subtree can have upto Y of those.
The first user is the address space IDs used for virtual machine memory encryption and expected future usages are similar - niche hardware features with concrete resource limits and simple usage models
2. Core (various)
(FEATURED) cgroup: New misc cgroup controller commit, commit, commit
(FEATURED) Optionally randomize kernel stack offset each syscall commit, commit, commit, commit, commit, commit
(FEATURED) Concurrent TLB flushing commit, commit, commit, commit, commit, commit, commit, commit
softirq: Real Time awareness commit, commit, commit, commit, commit, commit
- fanotify
- io_uring
(FEATURED) 1) Support for multi-shot poll. This allows arming a poll request for a given event mask, and then have it trigger multiple times, 2) support for POLL_ADD updates. This allows updating the event mask (only) of an existing poll request, both one-shot and multi-shot commit, commit, commit, commit, commit, commit, commit, commit
1) support dynamic managment for registered buffers, including update. Add new IORING_REGISTER* for rsrc register and rsrc update, which are just dispatch files/buffers to right callbacks 3) add rsrc tagging, with tag=0 ignoring CQE posting commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Add support for Clang's Control-Flow Integrity (CFI) checking commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
binder: Enable App Freezing Capability commit, commit, commit
psi: allow unprivileged users with CAP_SYS_RESOURCE to write psi files commit
- Locking
- Task scheduler
Add 'scheduler latency debugging': warn after long periods of pending need_resched. This is an opt-in feature that requires the enabling of the LATENCY_WARN scheduler feature, or the use of the resched_latency_warn_ms=xx boot parameter commit
fair: misfit task load-balance tweaks commit, commit, commit
fair: Bring back select_idle_smt(), but differently commit
Allow caching one sigqueue object per task (reduces latency) [https://git.kernel.org/linus/69995ebbb9d3717306a165db88a1292b63f77a37|commit]], commit
Move SCHED_DEBUG sysctl to debugfs commit, commit, commit, commit, commit, commit, commit, commit, commit
Network fs helper library & fscache kiocb API commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- kbuild
- kconfig
modules: add CONFIG_MODPROBE_PATH to allow configuring the "/sbin/modprobe" path commit
Adds a special-case when waiting on a pid (via waitpid, waitid, wait4, etc) to avoid doing an O(n) scan of children and tracees, and instead do an O(1) lookup. This can make a substantial performance improvement for applications with a thread that has many children or tracees and frequently needs to wait on them. Tools that use ptrace to intercept syscalls for a large number of processes are likely to fall into this category commit
kbuild: add CONFIG_VMLINUX_MAP expert option. It can be quite useful to have ld emit a link map file, in order to debug or verify that special sections end up where they are supposed to commit
kunit: fail tests on UBSAN errors commit
3. File systems
- BTRFS
zoned file system: automatic background reclaim of zones that have 75%+ of unusable space, the threshold is tunable in sysfs commit, commit, commit
Improve send readahead run time of full send by 10% and for incremental by 25% commit, commit, commit
Make reflinks respect O_SYNC, O_DSYNC and S_SYNC flags commit
Support read-write for subpage metadata (more preparation for subpage block size) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- EXT4
- CEPH
- CIFS
Export supported mount options via new mount_params /proc file commit
Add rasize mount parameter to improve readahead performance commit
Add FALLOC_FL_INSERT_RANGE support commit
Add support for FALLOC_FL_COLLAPSE_RANGE commit
Add shutdown support commit
smb 3.1.1: allow dumping keys for multiuser mounts commit
smb 3.1.1: allow dumping GCM256 keys to improve debugging of encrypted shares commit
- EXFAT
- EROFS
- F2FS
- FUSE
- GFS2
Add new sysfs file for gfs2 status commit
- NFS
Attribute revalidation updates to optimise the way we use the GETATTR call commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Honor timeo and retrans option when mounting NFSv3 commit
- ORANGEFS
Implement readahead commit
- OVERLAYFS
- QUOTA
- UBIFS
Default to zstd compression commit
4. Memory management
Allocate memmap from hotadded memory (per device) commit, commit, commit, commit, commit, commit, commit, commit
Support huge vmalloc mappings. Recommended LWN article A pair of memory-allocation improvements in 5.13. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce a bulk order-0 page allocator. Recommended LWN article A pair of memory-allocation improvements in 5.13. commit, commit, commit, commit, commit, commit, commit, commit, commit
Debugfs for file-backed THP split commit
Allowing dump migrate-failed pages for debugging purposes commit
vmalloc: use rb_tree instead of list for vread() lookups commit
Allow shmem mappings with MREMAP_DONTUNMAP. Currently MREMAP_DONTUNMAP only accepts private anonymous mappings. The primary use case is to support MREMAP_DONTUNMAP on mappings which may have been created from a memfd commit, commit, commit
NUMA balancing: reduce TLB flush via delaying mapping on hint page fault commit
Converts memcg stats tracking to the streamlined rstat infrastructure provided by the cgroup core code commit, commit, commit, commit, commit, commit, commit, commit
memcg: enable memcg oom-kill for __GFP_NOFAIL commit
gup: page unpining improvements. unpin_user_pages() for hugetlbfs and THP improves ~3x (through gup_test) and RDMA MR dereg improves ~4.5x with the new API commit, commit, commit
slab: provide "slab_merge" option to enable enable merging of slabs with similar size when the kernel is built without CONFIG_SLAB_MERGE_DEFAULT commit
Prohibit pinning pages in ZONE_MOVABLE commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Make shrinker's nr_deferred memcg aware commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
cma: support sysfs commit
vmstat: add cma statistics commit
userfaultfd: add minor fault handling commit, commit, commit, commit, commit, commit
Make alloc_contig_range handle Hugetlb pages commit, commit, commit, commit, commit, commit, commit
kfence: zero guard page after out-of-bounds access commit
dma-fence: allow signaling drivers to set fence timestamp commit
Remove /dev/kmem for good commit
5. Block layer
multiqueue: set default elevator as deadline in case of hctx shared tagset commit
Add sysfs entry for virt boundary mask commit
bio: limit bio max size commit
rnbd-clt: Support polling mode for IO latency optimization commit
rnbd-clt: Generate kobject_uevent when the rnbd device state changes commit
null_blk: add option for managing virtual boundary commit
md/raid10: Improve handling raid10 discard request commit, commit
dm integrity: add the "reset_recalculate" feature flag that will restart recalculating from the beginning of the device commit
6. Tracing, perf and BPF
- BPF
(FEATURED) Support calling kernel function commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Tracing and lsm programs re-attach commit, commit, commit, commit, commit, commit
PROG_TEST_RUN support for sk_lookup programs commit, commit, commit, commit, commit
Add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_ENCAP_L2_ETH commit
Add getter and setter for SO_REUSEPORT through bpf_{g, s}etsockopt commit
Add kconfig knob for disabling unpriv bpf by default commit
Add kernel/modules BTF presence checks to bpftool feature command commit
Improve BPF syscall command documentation commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce support for such types by representing them using the new BTF_KIND_FLOAT commit, commit, commit, commit, commit, commit, commit, commit, commit
Add new libbpf APIs and their bpftool integration that allows to perform static linking of BPF object files commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add a snprintf eBPF helper commit, commit, commit, commit, commit, commit
BPF static linker: support externs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
bpf: add bpf_for_each_map_elem() helper commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- perf
libperf userspace counter access commit, commit, commit, commit
perf annotate: Add --demangle and --demangle-kernel commit
perf data: Add JSON export commit
perf report: Create option to disable raw event ordering commit
perf report: Make --stat output more compact commit, commit, commit, commit, commit, commit
perf: Allow TIME_CONV to be backwards-compatible and dump it commit, commit, commit, commit
perf stat: Align CSV output for summary mode commit
perf stat: Introduce iostat mode to provide I/O performance metrics commit, commit, commit
perf stat: Introduce 'bperf' to share hardware PMCs with BPF commit
Improve perf-stat --bpf-counter by 1) exposing key definitions to a libperf header; 2) adding compatibility check for perf_attr_map; 3) introducing config stat.bpf-counter-events. 4) introducing 'b' modify to event parser commit, commit, commit, commit
perf tools: Enable libtraceevent dynamic linking commit
perf: Add support for synchronous signals on perf events commit, commit, commit, commit, commit, commit, commit, commit
Add "func_no_repete" tracing option. Records only the first call, followed by an event showing the number of repeats commit, commit, commit, commit, commit
7. Virtualization
vdpa: add vdpa simulator for block device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
pvpanic: add PCI driver for pvpanic PCI device added in qemu commit
A vDPA driver for virtio-pci device which will bridge between vDPA bus and virtio-pci device commit
- vfio
- KVM
xen: Remove support for PV ACPI cpu/memory hotplug commit
hv: vmbus: Introduce CHANNELMSG_MODIFYCHANNEL_RESPONSE commit, commit, commit
x86/Hyper-V: Support for free page reporting commit
8. Security
(FEATURED) Add Landlock LSM commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ima: kernel build support for loading the kernel module signing key commit, commit, commit
Introduce TEE based Trusted Keys support commit, commit, commit, commit
Add support for x509 certs with NIST P384/256/192 keys commit, commit, commit, commit, commit, commit, commit, commit, commit
keys: Add EFI_CERT_X509_GUID support for dbx/mokx entries commit, commit, commit, commit
TPM 2.0 trusted key rework commit, commit, commit, commit, commit
LSM: add new hook to compare new mount to an existing mount commit
- selinux
audit: log nftables configuration change events once per table commit
9. Networking
nexthop: Resilient next-hop groups commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
sockmap: introduce BPF_SK_SKB_VERDICT and support UDP commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
veth: allow GRO even without XDP commit, commit, commit, commit
virtio-net: support XDP when not more queues commit
Introduces XSK generic zerocopy xmit commit, commit, commit, commit, commit
UDP: improve UDP L4 - either 'forward' or 'frag_list' - co-existence with UDP tunnel GRO, allowing the first to take place correctly even for encapsulated UDP traffic commit, commit, commit, commit, commit, commit, commit, commit
Devices: Allow to specify ifindex when device is moved to another namespace commit
- Bluetooth
Better support for sandwiched LAGs with bridge and DSA commit, commit, commit, commit, commit, commit
dsa: tag_brcm: add support for legacy tags commit
ICMP: Add support for RFC 8335 PROBE messages, a specialized ICMP message that makes use of the ICMP Extension Structure outlined in RFC 4884. It allows querying specific interfaces on a node and requiring bidirectional connectivity between the probing and probed interfaces commit, commit, commit, commit, commit, commit
macvlan: Add nodst option to macvlan type source to skip destination MACVLAN processing if any matching source MACVLAN device has the option set commit
Make unregister netdev warning timeout configurable with netdev_unregister_timeout_secs sysctl commit, commit
- Multi-path TCP
Compatibility with common msg flags commit, commit, commit, commit, commit
Add SOL_SOCKET support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Drops extra header options from IPv4 address echo packets commit
Miscellaneous changes commit, commit, commit, commit, commit, commit, commit
- Netfilter
Augment the Netfilter flowtable fastpath to support for network topologies that combine IP forwarding, bridge, classic VLAN devices, bridge VLAN filtering, DSA and PPPoE. This includes support for the flowtable software and hardware datapaths commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Netfilter: flowtable enhancements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit * Allow to turn off xtables compat layer commit
flowtable: add vlan match offload support commit
flowtable: add vlan pop action offload support commit
nft_socket: add support for cgroupsv2 commit
nftables: add catch-all set element support commit
nftables: counter hardware offload support commit
xt_SECMARK: add new revision to fix structure layout commit
Network fs helper library & fscache kiocb API commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- nl80211
- ethtool
Extend module EEPROM dump API commit, commit, commit, commit, commit, commit
Add uAPI for reading standard stats commit, commit, commit, commit, commit, commit, commit, commit, commit
Add FEC statistics commit, commit, commit, commit, commit, commit
Support FEC configuration over netlink commit, commit, commit
psample: Add additional metadata attributes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
sched: act_police: enhance the TC policer action implementation to allow a policer action instance to enforce a rate-limit based on packets-per-second, configurable using a packet-per-second rate and burst parameters commit, commit, commit
seg6: add counters support for SRv6 Behaviors commit
IB/ipoib: Improve latency in ipoib/cm connection formation commit
- RDMA
Add CONFIG_PCPU_DEV_REFCNT for debugging commit
- CAN
10. Architectures
10.1. ARM
- Hardware support
New SoCs
STMicroelectronics STM32H750, one of many variants of STM32 microcontrollers based on the Cortex-M7 core commit
NXP i.MX8QuadMax, a variant of the growing i.MX8 embedded/industrial SoC family, using two Cortex-A72 and four Cortex-A53 cores commit
Qualcomm SC7280, a Laptop SoC following the SC7180 (Snapdragon 7c) that is used in some Chromebooks and Windows laptops commit
TI AM64x Sita4ra, a new version of the K3 SoC family for industrial control, motor control, remote IO, IoT gateway etc., similar to the older AM65x family commit
Nuvoton WPCM450 BMC. It's an older SoC but still commonly found on eBay, mostly in Supermicro X9 server boards commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Apple M1 SoC commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- New boards
Add support for the https://art-pi.gitee.io/website/ board based on stm32h750xbh6 commit
NXP i.MX8QuadMax Multisensory Enablement Kit commit
Reference boards for the TI AM64x SoC: AM642 SK commit and AM642 EVM commit
ASpeed AST2500 BMC: ASRock E3C246D4I Xeon server board commit
Allwinner A10: Topwise A721 Tablet commit
Amlogic GXL: MeCool KII TV box commit
Amlogic GXM: Mecool KIII, Minix Neo U9-H TV boxes commit
Broadcom BCM4908: TP-Link Archer C2300 V1 router commit
Marvell Armada 38x: ATL-x530 ethernet switch commit
- Mediatek MT8183 Chromebooks: Lenovo 10e, Acer Spin 311, Asus Flip CM3, Asus Detachable CM3
Mediatek MT8516/MT8183: OLogic Pumpkin Board commit
NXP i.MX7: reMarkable Tablet commit
NXP i.MX8M: Kontron pitx-imx8m, Engicam i.Core MX8M Mini commit
Nuvoton NPCM730: Quanta GBS BMC commit
Qualcomm X55: Telit FN980 TLB SoM commit, Thundercomm TurboX T55 SoM commit
Qualcomm MSM8998: OnePlus 5/5T phones commit
Qualcomm SM8350: Snapdragon 888 Mobile Hardware Development Kit commit
Rockchip RK3399: NanoPi R4S board commit
STM32MP1: Engicam !MicroGEA STM32MP1 MicroDev 2.0 and SOM, EDIMM2.2 Starter Kit, Carrier, SOM commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
TI AM65: Siemens SIMATIC IOT2050 gateway commit
aspeed: Add Rainier 1S4U machine commit
mt8183: Add kukui kakadu board commit
mt8183: Add kukui kodama board commit
mt8183: Add kukui-jacuzzi-damu board commit
mt8183: Add kukui-jacuzzi-juniper board commit
imx8mm-nitrogen-r2: add ecspi2 support commit
imx8mm: Add Engicam i.Core MX8M Mini commit, commit, commit, commit, commit
qcom: Add sc7180-trogdor-pompom skus commit
qcom: Add sc7180-lazor-limozeen skus commit
qcom: Add sc7180-trogdor-coachz skus commit
meson: add initial device-tree for Minix NEO U9-H commit
footbridge: remove personal server platform commit
bcm: bcm-pmb: add BCM63138 SATA support commit
mediatek: pwrap: add pwrap driver for MT6873/8192 SoCs commit, commit, commit, commit
- ARM64
Carry forward IMA measurement log on kexec commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce prctl(PR_PAC_{SET,GET}_ENABLED_KEYS), which allows the user program to control which PAC keys are enabled in a particular task. The main reason why this is useful is to enable a userspace ABI that uses PAC to sign and authenticate function pointers and other pointers exposed outside of the function, while still allowing binaries conforming to the ABI to interoperate with legacy binaries that do not sign or authenticate pointers. The idea is that a dynamic loader or early startup code would issue this prctl very early after establishing that a process may load legacy binaries, but before executing any PAC instructions commit
Support CONFIG_KASAN_VMALLOC commit, commit, commit, commit, commit
Support Enhanced Privileged Access Never (EPAN) which allows Privileged Access Never to be used with Execute-only mappings commit
ARMv8.5-A: MTE: Add async mode support commit, commit, commit, commit, commit, commit, commit, commit, commit
firmware: arm_scmi: SCMI vendor protocols and modularization commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
iommu: stall support to the SMMUv3 driver, along with a common I/O Page Fault handler commit, commit, commit, commit, commit, commit, commit
- coresight
- KVM
Stage-2 for the Host. This allows to wrap the host with a stage 2 when running in nVHE, hence paving the way for protecting guest memory from the host in the future (among other use-cases) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add host/guest KVM-PTP support commit, commit, commit, commit, commit, commit, commit
Implement KVM_CAP_SET_GUEST_DEBUG2 commit
Enable SVE support on nVHE systems commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
vgic-v3: Expose GICR_TYPER.Last for userspace commit
perf events: Add Fujitsu A64FX pmu event commit
perf events: Add Hisi hip08 L1 metrics commit
perf events: Add Hisi hip08 L2 metrics commit
perf events: Add Hisi hip08 L3 metrics commit
perf events: Add more common and uarch events commit
Add support for HiSilicon Hip09 uncore PMU driver commit, commit, commit, commit, commit, commit, commit, commit, commit
10.2. X86
- Platforms
thinkpad_acpi: Add support for DYTC MMC_GET BIOS API commit
surface: Add DTX detachment system driver commit, commit, commit
Add platform profile driver for Surface devices commit
Add Surface Aggregator device registry commit, commit, commit, commit, commit, commit
surface: aggregator_registry: Add support for Surface Pro 7+ commit
Add Gigabyte WMI temperature driver commit
Add support for Advantech software defined button commit
asus-wmi: Add param to turn fn-lock mode on by default commit
gigabyte-wmi: add X570 AORUS ELITE commit
gigabyte-wmi: add support for B550 Aorus Elite commit
gigabyte-wmi: add support for X570 UD commit
hp-wmi: add platform profile support commit
intel_pmc_core: Add sub-state requirements and mode commit, commit, commit, commit, commit, commit, commit, commit, commit
intel_pmc_core: export platform global reset bits via etr3 sysfs file commit
thinkpad_acpi: Add X1 Carbon Gen 9 second fan support commit
thinkpad_acpi: sysfs interface to get wwan antenna type commit
touchscreen_dmi: Add info for the Chuwi Hi10 Pro (CWI529) tablet commit
powercap: Add Hygon Fam18h RAPL support commit
intel_idle: add Iclelake-D support commit
- intel_th
tools/x86: Add a kcpuid tool to show raw CPU features commit, commit
mce: Add Xeon Sapphire Rapids to list of CPUs that support PPIN commit
- perf
Add Alder Lake support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Uncore PMON discovery mechanism support commit, commit, commit, commit, commit
- KVM
Add AMD SEV guest live migration support commit, commit, commit, commit, commit, commit, commit
Adds the simple idea of tagging shadow-present SPTEs with a single bit, instead of looking for non-zero SPTEs that aren't MMIO and aren't REMOVED. Doing so reduces KVM's code footprint by 2k bytes on x86-64, and presumably adds a tiny performance boost in related paths commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support KVM VMs sharing SEV context commit
SGX virtualization support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Implement KVM_CAP_SET_GUEST_DEBUG2 commit
Add support for RDPID without RDTSCP commit
Add support for the emulation of DR6_BUS_LOCK bit commit
perf vendor events amd: Add Zen3 events commit
perf vendor events intel: Add missing skylake & icelake model numbers commit
10.3. MIPS
Loongson64: Add kexec/kdump support commit
Enable bpf_probe_read{, str}() on MIPS again commit
Add support for CONFIG_DEBUG_VIRTUAL commit
Loongson64: Add support for the Loongson-2K1000 to get cpu_clock_freq commit, commit
octeon: Add Ubiquiti E300 board commit
Remove broken/unmaintained MIPS KVM trap and emulate support commit, commit
perf tools: Support MIPS unwinding and dwarf-regs commit
10.4. POWERPC
Enable OPTPROBES on PPC32 commit
Add support for time namespaces commit
perf: Infrastructure to support checking of attr.config* commit
papr_scm: Implement support for H_SCM_FLUSH hcall commit
Implement extended BPF on PPC32 commit
Enable KFENCE for PPC32 commit
Enable passing IMA log to next kernel on kexec commit
perf tools: Support pipeline stage cycles for powerpc commit * perf events: Initial JSON/events list for power10 platform commit
perf powerpc: Add support for PERF_SAMPLE_WEIGHT_STRUCT commit
10.5. RISCV
Add kexec/kdump support commit, commit, commit, commit, commit
Add ARCH_HAS_FORTIFY_SOURCE commit
Add support for memtest commit
Add Microchip PolarFire SoC support commit, commit, commit, commit
10.6. S390
Add support for syscall stack randomization commit
cio: introduce CIO debugfs directory commit
cio: add CRW inject functionality commit
bpf: Implement new atomic ops commit
KVM: implement KVM_CAP_SET_GUEST_DEBUG2 commit
10.7. IA64
Drop marked broken DISCONTIGMEM and VIRTUAL_MEM_MAP commit
10.8. XTENSA
ISS: add GDBIO implementation to semihosting interface commit
11. Drivers
11.1. Graphics
- amdgpu
Add initial Freesync HDMI support commit
10bpc dithering improvements commit
Display ASSR (Alternate Scrambler Seed Reset) support commit
Add INFO ioctl support for querying video caps commit, commit, commit, commit, commit
DCN secure display support commit
Initial LTTPR (Link-Training Tunable PHY Repeaters) display work merge
Implement tdr advanced mode commit
Add LightSBR SMU MSG support commit
Add a new sysfs entry for default power limit commit
Add additional Sienna Cichlid PCI ID commit
Add support for dynamic GECC commit
Enable TMZ by default on Raven asics commit
Set amdgpu.noretry=1 for Arcturus commit
Add a backlight module option commit
Add debugfs entry for LTTPR register status commit
Add debugfs to control DMUB trace buffer events commit
Add debugfs to repress HPD and HPR_RX IRQs commit
Add max bpc debugfs commit
amdkfd: Add Aldebaran KFD support commit
amdkfd: Add kernel parameter to stop queue eviction on vm fault commit
- Intel
Add GUD USB Display driver commit
- sun4i
- vc4
- bridge
- ttm
- msm
- gma500
Remove Medfield support commit
- mediatek
- lima
add governor data with pre-defined thresholds commit
- panel-simple
Add N116BCA-EA1 commit
- panfrost
Add governor data with pre-defined thresholds commit
- tegra
Implement hardware cursor on Tegra186 and later commit
- host1x
Show number of pending waiters in debugfs commit
backlight: ktd253: Support KTD259 commit
11.2. Power Management
ACPI 6.4 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ACPI: PM: Add ACPI ID of Alder Lake Fan commit
- tools/power turbostat
tools/power/x86/intel-speed-select: Add options to force online commit
- thermal
11.3. Storage
ata: ahci_tegra: Add AHCI support for Tegra186 commit
- nvme
- SCSI
Add mq_poll support to SCSI layer commit
megaraid_sas: mq_poll support commit
pm80xx: Add sysfs attribute to check MPI state commit
pm80xx: Add sysfs attribute to check controller hmi error commit
pm80xx: Add sysfs attribute to track RAAE count commit
pm80xx: Add sysfs attribute to track iop0 count commit
pm80xx: Add sysfs attribute to track iop1 count commit
qedf: Enable devlink support commit
qla2xxx: Add marginal path handling support commit
scsi_debug: mq_poll support commit
smartpqi: Add new PCI IDs commit
smartpqi: Add stream detection commit
smartpqi: Add support for BMIC sense feature cmd and feature bits commit
smartpqi: Add support for RAID1 writes commit
smartpqi: Add support for RAID5 and RAID6 writes commit
smartpqi: Add support for long firmware version commit
smartpqi: Add support for new product ids commit
smartpqi: Add support for wwid commit
storvsc: Parameterize number hardware queues commit
target: tcmu: Support DATA_BLOCK_SIZE = N * PAGE_SIZE commit
ufs: ufs-debugfs: Add user-defined exception event rate limiting commit
ufs: ufs-debugfs: Add user-defined exception_event_mask commit
ufs: ufs-pci: Add support for Intel LKF commit
Buslogic: remove ISA support commit
advansys: remove ISA support commit
11.4. Drivers in the Staging area
comedi: Finally move out of staging directory commit
media: imx: imx7_media-csi: Add support for additional Bayer patterns commit
dpaa2-switch: add .ndo_start_xmit() callback commit
iio:cdc:ad7150: Add sampling_frequency support commit
most: add ALSA sound driver commit
clocking-wizard: Add support for fractional support commit
clocking-wizard: Add support for dynamic reconfiguration commit
wimax: delete from the tree commit
gasket: remove it from the kernel commit
xsysace: Remove SYSACE driver commit
block: remove the umem driver commit
11.5. Networking
Support Ocelot PTP Sync one-step timestamping commit, commit, commit, commit, commit, commit, commit
mana: Add a driver for Microsoft Azure Network Adapter (MANA) commit
Bluetooth: Add a new USB ID for RTL8822CE commit
Bluetooth: btusb: support 0cb5:c547 Realtek 8822CE device commit
FDDI: defxx: Implement dynamic CSR I/O address space selection commit
- hns
Add support for XRC on HIP09 commit
Support RoCE on virtual functions of HIP09 commit, commit, commit, commit, commit, commit
Support configuring doorbell mode of RQ and CQ commit
Support to select congestion control algorithm commit, commit
Support more return types of command queue commit
Support to query firmware version commit
iwcm: Allow AFONLY binding for IPv6 addresses commit
- ath11k
- bnxt_en
Add PCI IDs for Hyper-V VF devices commit
Add support for fw managed link down feature commit
Implement .ndo_features_check() commit
Support IFF_SUPP_NOFCS feature to transmit without ethernet FCS commit
Allow promiscuous mode for trusted VFs commit
Add more ethtool standard stats commit
Implement ethtool standard stats commit
Implement ethtool::get_fec_stats commit
broadcom: bcm4908_enet: support TX interrupt commit
- can
Introducing ETAS ES58X CAN USB interfaces commit, commit, commit
mcp251xfd: add BQL support commit
mcp251xfd: add HW timestamp infrastructure commit
mcp251xfd: add HW timestamp to RX, TX and error CAN frames commit
mcp251xfd: add dev coredump support commit
peak_usb: add support of ONE_SHOT mode commit
peak_usb: add support of ethtool set_phys_id() commit
- dpaa2-eth
- dpaa2-switch
- dsa
b53: mmap: Add device tree support commit
b53: support legacy tags commit
hellcreek: Add support for dumping tables commit, commit, commit, commit
Offload bridge port flags commit
Report switch name and ID commit
Add support for ksz88x3 driver family commit, commit, commit, commit, commit, commit, commit, commit
mt7530: Add support for EEE features commit
mt7530: support MDB and bridge flag operations commit
mv88e6xxx: Offload bridge port flags commit, commit, commit, commit, commit, commit, commit, commit
- enetc
Add Actions Semi Owl Ethernet MAC driver commit
gianfar: Drop GFAR_MQ_POLLING support commit
- hns3
- iavf
Add framework to enable ethtool RSS config commit
Add framework to enable ethtool ntuple filters commit
Support for modifying SCTP RSS flow hashing commit
Support for modifying TCP RSS flow hashing commit
Support for modifying UDP RSS flow hashing commit
Enable flex-bytes support commit
Support Ethernet Type Flow Director filters commit
Support IPv4 Flow Director filters commit
Support IPv6 Flow Director filters commit
Add support for UDP Segmentation Offload commit
- ice
Add Support for XPS commit
Add new actions support for VF FDIR commit
Add non-IP Layer2 protocol FDIR filter for AVF commit
Add support for per VF ctrl VSI enabling commit
Add support for an allowlist/denylist of VF commands commit
Enable FDIR Configure for AVF commit
Enable support in the ice driver to support virtchnl requests from the iavf to configure its own RSS input set commit, commit
Enhanced IPv4 and IPv6 flow filter commit
Support to separate GTP-U uplink and downlink commit
- igc
- ionic
- ipa
- iwlwifi
Add new so-gf device commit
mvm: Add support for 6GHz passive scan commit
mvm: add support for version 3 of LARI_CONFIG_CHANGE command commit
mvm: enable PPAG in China commit
mvm: responder: support responder config command version 8 commit
mvm: support BIOS enable/disable for 11ax in Ukraine commit
mvm: support range request command version 12 commit
pcie: Add support for Bz Family commit
marvell: prestera: add support for AC3X 98DX3265 device commit
mdio: Add BCM6368 MDIO mux bus controller commit
mediatek: add flow offload for mt7623 commit
mhi: Add support for non-linear MBIM skb processing commit
- mlxsw
Implement sampling using mirroring commit, commit, commit, commit, commit, commit
Preparations for resilient nexthop groups commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for resilient nexthop groups commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for egress and policy-based sampling commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow 802.1d and .1ad VxLAN bridges to coexist on Spectrum>=2 commit, commit, commit, commit, commit, commit, commit
- mlx5
Allow both CQE compression and HW time-stamp PTP to co-exist commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce TC sample offload commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
TC support for ICMP parameters commit
Implement ethtool::get_fec_stats commit
Add ethtool extended link state commit
Add offload stats ndos to nic netdev ops commit
Enhance diagnostics info for TX/RX reporters commit
Dynamically assign MSI-X vectors count commit, commit, commit, commit
Allow larger pages in DevX umem commit
Expose private query port commit
- mt76
Introduce single-sku support for mt7663/mt7921 drivers commit, commit, commit, commit, commit, commit
Report Rx timestamp commit
mt7921: introduce MCU_EVENT_LP_INFO event parsing commit
mt7921: enable random mac addr during scanning commit
Add support for 802.3 rx frames commit, commit, commit, commit, commit, commit
mt7915: add support for applying pre-calibration data commit
mt76x0u: Add support for TP-Link T2UHP(UN) v1 commit
Improve runtime-pm support for mt7663/mt7921 commit, commit, commit, commit
mt7615: enable hw rx-amsdu de-aggregation commit
mt7615: add support for rx decapsulation offload commit
mt7615: add rx checksum offload support commit
mt7601u: enable TDLS support commit
Devlink parameter to control mlx5 metadata enablement for E-Switch commit, commit, commit, commit, commit, commit, commit
Add MEMIC operations support commit, commit, commit, commit, commit, commit, commit
CT: Add support for matching on ct_state inv and rel flags commit
CT: Add support for mirroring commit
DR, Add support for dynamic flex parser commit
DR, Add support for force-loopback QP commit
DR, Add support for isolate_vl_tc QP commit
DR, Add support for matching on geneve TLV option commit
DR, Add support for matching tunnel GTP-U commit
mtk_eth_soc: implement dynamic interrupt moderation commit
- netdevsim
nfp: flower: add support for packet-per-second policing commit
- ocelot
- octeontx2-af
pcs: add C37 SGMII AN support for intel mGbE controller commit
- phy
Add support for microchip SMI0 MDIO bus commit
add Marvell 88X2222 transceiver support commit
broadcom: Add statistics for all Gigabit PHYs commit
marvell10g: allow 5gbase-r and usxgmii commit
marvell10g: support all rate matching modes commit
marvell: add support for Amethyst internal PHY commit
nxp-c45-tja11xx: add interrupt support commit
nxp-c45: add driver for tja1103 commit
sfp: add netlink SFP support to generic SFP code commit
r8152: support new chips commit, commit, commit, commit, commit, commit
- r8169
- rtw88
sfc: ef10: implement ethtool::get_fec_stats commit
- stmmac
Add XDP support commit, commit, commit, commit, commit, commit
Add XDP ZC support commit, commit, commit, commit, commit, commit, commit
Add hardware supported cross-timestamp commit
Add support for external trigger timestamping commit
Add per-queue TX & RX coalesce ethtool support commit
Enable MTL ECC Error Address Status Over-ride by default commit
intel: Add PSE and PCH PTP clock source selection commit
Add C37 AN SGMII support commit, commit, commit, commit, commit, commit
Enable multi-vector MSI commit, commit, commit, commit, commit
Support FPE link partner hand-shaking procedure commit
- wilc1000
11.6. Audio
Add generic LED API, which tries to resolve the diversity in the audio LED control among the ALSA drivers commit, commit, commit, commit, commit, commit
soundwire: qcom: various improvements commit, commit, commit, commit, commit, commit, commit, commit, commit
bebob: enable to deliver MIDI messages for multiple ports commit
- hda
usb-audio: Add dB range mapping for Sennheiser Communications Headset PC 8 commit
(FEATURED) Add virtio sound driver commit, commit, commit, commit, commit, commit, commit, commit, commit
- ASoC
Intel: add max98390 echo reference support commit
Intel: board: add BE DAI link for WoV commit
Intel: bytcr_wm5102: Add jack detect support commit
Intel: cht_bsw_rt5672: Add support for Bay Trail CR / SSP0 commit
Intel: soc-acpi: add ADL jack-less SoundWire configurations commit, commit
Intel: sof_rt5682: Add ALC1015Q-VB speaker amp support commit
ak5558: Add support for ak5552 commit
amd: Add support for ALC1015P codec in acp3x machine driver commit
amd: Add support for RT5682 codec in machine driver commit
SoC codecs: TLV320AIC3X add SPI support commit, commit, commit, commit
codecs: tlv320aic3x: add AIC3106 commit
cs42l42: Report jack and button detection + Capture Support commit, commit
fsl-asoc-card: Add support for WM8958 codec commit
fsl_sai: Add pm qos cpu latency support commit
Add audio driver base on rpmsg on i.MX platform commit, commit, commit, commit, commit, commit
max98390: Add support for tx slot configuration commit
Add I2S-MCC support for Microchip's SAMA7G5 commit, commit, commit, commit, commit
mediatek: mt6359: add MT6359 accdet jack driver commit
mediatek: mt8183: support machine driver with rt1015p commit
rt1015p: add acpi device id for rt1015p commit
rt1015p: add support on format S32_LE commit
rt1019: add rt1019 amplifier driver commit
rt1316: Add RT1316 SDCA vendor-specific driver commit
rt5670: Add emulated 'DAC1 Playback Switch' control commit
rt711-sdca: Add RT711 SDCA vendor-specific driver commit
rt715-sdca: Add RT715 sdca vendor-specific driver commit
rt715: add main capture switch and main capture volume commit
simple-card-utils: enable flexible CPU/Codec/Platform commit
tegra20: ac97: Add reset control commit
tegra20: i2s: Add reset control commit
11.7. Tablets, touch screens, keyboards, mouses
Add support for Azoteq IQS626A commit
Add support for ILITEK Lego Series commit
Add MStar MSG2638 touchscreen driver commit
Add driver for the Hycon HY46XX touchpanel series commit
atc260x: Add onkey driver for ATC260x PMICs commit
exc3000: add type sysfs attribute commit
iqs5xx: expose firmware revision to user space commit
mms114: support MMS136 commit
xpad: add support for Amazon Game Controller commit
- HID
Add support for Surface Aggregator Module HID transport commit
ft260: add usb hid to i2c host bridge driver commit
map battery capacity (00850065) commit
intel-ish-hid: ipc: Add Alder Lake device IDs commit
lenovo: Add support for Thinkpad X1 Tablet Thin keyboard commit
logitech-dj: Handle newer quad/bt2.0 receivers in HID proxy mode commit
magicmouse: add Apple Magic Mouse 2 support commit
semitek: new driver for GK6X series keyboards commit
Support for initialization of some Thrustmaster wheels commit
surface-hid: Add support for legacy keyboard interface commit
11.8. TV tuners, webcams, video capturers
V4L2 stateless VP8 de-staging commit, commit, commit, commit, commit, commit, commit, commit
Add support for the SDM845 Camera Subsystem commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add V4L2 driver for i.MX8 JPEG Encoder/Decoder commit, commit, commit, commit, commit, commit, commit
adv7604: support EDIDs up to 4 blocks commit
adv7842: support 1 block EDIDs commit
HDR10 static metadata commit, commit, commit, commit, commit
em28xx: Add pid for bulk revision of Hauppauge 461e commit
em28xx: Add pid for bulk revision of Hauppauge 461eV2 commit
rc: add keymap for Xbox 360 Universal Media remote commit
rc: add keymaps for mecool-kii-pro/kiii-pro remotes commit
rc: remove zte zx ir driver commit
ti-vpe: cal: Implement media controller centric API commit
uvcvideo: Support devices that report an OT as an entity source commit
venus: Enable 6xx support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
MFC private ctrls to std ctrls commit, commit, commit, commit
11.9. Universal Serial Bus
- Thunderbolt
Add relative hysteresis support for hid sensors commit, commit, commit
Linking ports to their Type-C connectors commit, commit, commit, commit
cdns3: imx: add power lost support for system resume commit
Add some missing support for USB 3.2 SuperSpeed Plus detection on the host side commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dwc3: Add driver for Xilinx platforms commit
dwc3: pci: add support for the Intel Alder Lake-M commit
f_uac2: adds support for SS and SSP commit
mtu3: add support ip-sleep wakeup for MT8192 commit
serial: add support for multi-interface functions commit, commit, commit, commit
serial: ftdi_sio: add IDs for IDS GmbH Products commit
serial: ftdi_sio: add NovaTech OrionMX product ID commit
serial: omninet: add device id for Zyxel Omni 56K Plus commit
serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011 commit
serial: pl2303: add device id for ADLINK ND-6530 GC commit
serial: ti_usb_3410_5052: add startech.com device id commit
serial: ti_usb_3410_5052: drop closing_wait module parameter commit
serial: xr: add support for XR21B1411 commit
serial: xr: add support for XR21B1421, XR21B1422 and XR21B1424 commit
serial: xr: add support for XR21V1412 and XR21V1414 commit
serial: xr: add support for XR22801, XR22802, XR22804 commit
usbip: tools: add options and examples in man page related to device mode commit
xhci-mtk: add support ip-sleep wakeup for mT8192 commit
11.10. Serial Peripheral Interface (SPI)
Add Micron SPI NOR Authenta device compatible commit
mediatek: add mt8195 spi slave support commit
mediatek: add mtk_spi_compatible support commit
pxa2xx: Add support for Intel Alder Lake PCH-M commit
spi-nxp-fspi: Add imx8dxl driver support commit
spi-nxp-fspi: Add imx8dxl support commit
spi-nxp-fspi: Add support for IP read only commit
stm32-qspi: Add dirmap support commit
11.11. Watchdog
11.12. Serial
8250: Add new 8250-core based Broadcom STB driver commit
8250_of: Add nuvoton,wpcm450-uart commit
8250_pci: Add support for new HPE serial device commit
8250_dw: Add device HID for new AMD UART controller commit
serial: samsung_tty: Add earlycon support for Apple UARTs commit
serial: samsung_tty: Add support for Apple UARTs commit
cyclades, remove this orphan commit
isicom, remove this orphan commit
rocket, remove the driver commit
11.13. CPU Frequency scaling
CPPC: Add support for frequency invariance commit
11.14. Voltage, current regulators, power capping, power supply
supply: Add AC driver for Surface Aggregator Module commit
supply: Add battery driver for Surface Aggregator Module commit
supply: bq27xxx: Add support for BQ78Z100 commit
regulator: fan53555: Add TCS4525 DCDC support commit
regulator: qcom-rpmh: Add PM7325/PMR735A regulator support commit
regulator: spmi: Add support for ULT LV_P50 and ULT P300 commit
regulator: Support ROHM BD71815 regulators commit
11.15. Real Time Clock (RTC)
bd70528: Support RTC on ROHM BD71815 commit
New driver for RTC in Netronix embedded controller commit
pcf8523: add alarm support commit
ab-eoz9: add alarm support commit
pm8xxx: Add RTC support for PMIC PMK8350 commit
rx6110: add ACPI bindings to I2C commit
11.16. Pin Controllers (pinctrl)
Ingenic: Add pinctrl driver for JZ4730 commit
Ingenic: Add pinctrl driver for JZ4750 commit
Ingenic: Add pinctrl driver for JZ4755 commit
Ingenic: Add pinctrl driver for JZ4775 commit
Ingenic: Add pinctrl driver for X2000 commit
Ingenic: Add support for read the pin configuration of X1830 commit
Add a pincontrol driver for BCM6318 commit
Add a pincontrol driver for BCM63268 commit
Add a pincontrol driver for BCM6328 commit
Add a pincontrol driver for BCM6358 commit
Add a pincontrol driver for BCM6362 commit
Add a pincontrol driver for BCM6368 commit
Add drive for I2C related pins on MT8195 commit
Add pinctrl driver on mt8195 commit
bcm: add bcm63xx base code commit
pinmux: Add pinmux-select debugfs file commit
qcom-pmic-gpio: Add support for pm8008 commit
qcom: sc8180x: add ACPI probe support commit
qcom: spmi-gpio: Add support for PM8350 and friends commit
renesas: Add support for R-Car SoCs with pull-down only pins commit
rockchip: add support for rk3568 commit
11.17. Multi Media Card (MMC)
sdhci-of-dwcmshc: add rockchip platform support commit
sdhci-acpi: Add device ID for the AMDI0041 variant of the AMD eMMC controller commit
sdhci-pci: Add PCI IDs for Intel LKF commit
11.18. Memory Technology Devices (MTD)
Add OTP (one-time-programmable) erase ioctl commit
parsers: ofpart: support BCM4908 fixed partitions commit
parsers: ofpart: support Linksys Northstar partitions commit
rawnand: Add support for secure regions in NAND memory commit
- spi-nor
spinand: gigadevice: Support GD5F1GQ5UExxG commit
11.19. Industrial I/O (iio)
Add support for multiple IIO buffers per IIO device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Adding support for IIO SCMI Based Sensors commit
accel: Add support for the Bosch-Sensortec BMI088 commit
acpi_als: Add trigger support commit
adc: Add driver for Texas Instruments ADS131E0x ADC family commit
adc: ad7124: allow more than 8 channels commit
dac: ad5686: Add support for AD5673R/AD5677R commit
imu: inv_mpu6050: Use as standalone trigger commit
proximity: Add a ChromeOS EC MKBP proximity driver commit
proximity: vcnl3020: add proximity rate commit
cdc:ad7150: Move driver out of staging commit
magnetometer: Add Support for ST IIS2MDC commit
11.20. Multi Function Devices (MFD)
Add MFD driver for ATC260x PMICs commit
Add ROHM BD71815 ID commit
Add base driver for Netronix embedded controller commit
Remove support for AB3100 commit
Support ROHM BD9576MUF and BD9573MUF PMICs commit, commit, commit, commit, commit, commit
Support for ROHM BD71815 PMIC core commit
da9063: Support SMBus and I2C mode commit
intel-m10-bmc: Add support for MAX10 BMC Secure Updates commit
intel_pmt: Add support for DG1 commit
ntxec: Support for EC in Tolino Shine 2 HD commit
11.21. Pulse-Width Modulation (PWM)
Add Raspberry Pi Firmware based PWM bus commit
ntxec: Add driver for PWM function in Netronix EC commit
pca9685: Support hardware readout commit
visconti: Add Toshiba Visconti SoC PWM support commit
11.22. Inter-Integrated Circuit (I2C + I3C)
Add support for HiSilicon I2C controller commit
cp2615: add i2c driver for Silicon Labs' CP2615 Digital Audio Bridge commit
designware: Add driver support for AMD NAVI GPU commit
i801: Add support for Intel Alder Lake PCH-M commit
stm32f7: add support for DNF i2c-digital-filter binding commit
11.23. Hardware monitoring (hwmon)
pmbus: Add pmbus driver for MAX15301 commit
pmbus/tps53679: Add support for TI TPS53676 commit
Add driver for fsp-3y PSUs and PDUs commit
pmbus: Add driver for Infineon IR36021 commit
pmbus: Add driver for BluTek BPA-RS600 commit
corsair-psu: add support for critical values commit
Add driver for NZXT Kraken X42/X52/X62/X72 commit
pmbus/stpddc60: Add ST STPDDC60 pmbus driver commit
nct6683: Support NCT6686D commit
Remove amd_energy driver commit
11.24. General Purpose I/O (gpio)
Support ROHM BD71815 GPOs commit
sch: Add edge event support commit
mpc8xxx: Add ACPI support commit
Add Realtek Otto GPIO support commit
11.25. Leds
rt4505: Add support for Richtek RT4505 flash LED controller commit
11.26. DMA engines
dw-edma: HDMA support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- idxd
11.27. Cryptography hardware acceleration
ccp: Add support for Green Sardine commit
hisilicon: add ECDH and CURVE25519 algorithms support for Kunpeng 930 commit, commit, commit, commit, commit, commit, commit
hisilicon: enable new hardware error types for Kunpeng930 commit, commit, commit, commit
hisilicon/qm: support doorbell isolation and queue number configuration commit, commit, commit, commit
octeontx2: add support for OcteonTX2 98xx CPT block commit
11.28. PCI
Add sysfs MSI-X vector assignment interface commit
Allow VPD access for QLogic ISP2722 commit
j721e: Add support to provide refclk to PCIe connector commit
mediatek-gen3: commit, commit, commit, commit, commit, commit
tegra: Add Tegra194 MCFG quirks for ECAM errata commit
xilinx-nwl: Enable coherent PCIe DMA traffic using CCI commit
11.29. Remote Processors
Add support for detaching a remote processor commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
imx_rproc: support iMX8MQ/M commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
imx_rproc: support remote cores booted before Linux Kernel commit
qcom: pas: Add modem support for SDX55 commit
Add non PAS wcss Q6 support for QCS404 commit, commit, commit, commit
11.30. Clock
qcom: rpmh: add support for SDX55 rpmh IPA clock commit
ralink: add clock driver for mt7621 SoC commit
rockchip: add clock controller for rk3568 commit
bd718x7: Add support for clk gate on ROHM BD71815 PMIC commit
- clocksource
11.31. PHY ("physical layer" framework)
Add Sparx5 ethernet serdes PHY driver commit
add support for Armada CP110 UTMI PHY commit
qcom-qmp: add support for sm8250-usb3-dp phy commit
ti: j721e-wiz: Add support for configuring QSGMII commit
cadence-torrent: Add support to drive refclk out commit == IRQ chips ==
Add driver for WPCM450 interrupt controller commit
Add support for IDT 79rc3243x interrupt controller commit
apple-aic: Add support for the Apple Interrupt Controller commit
irq-mst: Support polarity configuration commit
stm32: add usart instances exti direct event support commit
11.32. Various
bus: mhi: core: Add support for Flash Programmer execution environment commit
bus: mhi: pci_generic: Add FIREHOSE channels commit
bus: mhi: pci_generic: Add SDX24 based modem support commit
bus: mhi: pci_generic: Add support for runtime PM commit
bus: mhi: pci_generic: Introduce Foxconn T99W175 support commit
bus: mhi: pci_generic: Introduce quectel EM1XXGR-L support commit
counter: add IRQ or GPIO based counter commit
counter: 104-quad-8: Remove IIO counter ABI commit
counter: stm32-lptimer-cnt: remove iio counter abi commit
extcon: qcom-spmi: Add support for VBUS detection commit, commit, commit
fpga: Add support for Xilinx DFX AXI Shutdown manager commit
fpga: dfl: add support for Intel D5005 card commit, commit, commit
- habanalabs
hwspinlock: remove sirf driver commit
interconnect: qcom: Add SDM660 interconnect provider driver commit
interconnect: qcom: Add SM8350 interconnect provider driver commit
iommu: add Unisoc IOMMU basic driver commit
mailbox: sprd: Add supplementary inbox support commit
mei: me: add Alder Lake P device id commit
misc: Add Add Synopsys DesignWare xData IP driver commit, commit, commit, commit
nvmem: qfprom: Add support for fuse blowing on sc7280 commit
of: property: fw_devlink: Add support for remote-endpoint commit
phy: Add media type and speed serdes configuration interfaces commit
vDPA/ifcvf: enable Intel C5000X-PL virtio-block for vDPA commit, commit, commit
vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA commit, commit, commit, commit, commit, commit, commit
tools: dma-mapping: benchmark: Add support for multi-pages map/unmap commit
iommu/dma: Resurrect the "forcedac" option commit
12. List of Pull Requests
13. Other news sites
LWN's merge window 1, window 2
Phoronix Linux 5.13 features