Size: 161539
Comment:
|
Size: 880
Comment:
|
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, Operative System, Linus Torvalds, Open Source, drivers, filesystems, network, memory management, scheduler, preemtion, 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]], [[http://www.h-online.com/open/features/|H-Online]], or the Linux Kernel mailing list (there is a web interface in [[http://www.lkml.org|www.lkml.org]]). 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 [#development below] ==== 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(development)]] ==== 2.6.17 ==== * /!\ '''STILL NOT RELEASED!''' /!\ * Overview * sys_splice syscall * X86 "SMP alternatives" (optimize the kernel image at runtime, ej: switch between different spinlock implementations depending on the system where the kernel is run or on cpu hotplug/remove) [http://lwn.net/Articles/164121/ (LWN article)] * Lightweight robust futexes [http://lwn.net/Articles/172149/ (LWN article)] * Block queue IO tracing * User-space software suspend interface * New scheduler domain which optimizes scheduling decisions for multi-core CPUs sharing caches * Generic RTC subsystem * Raid5 reshaping support [http://lwn.net/Articles/169140/ (LWN article)] * iptables support for H.323 protocol, 64-to-32bit compatibility for 32-bit iptables userspace tools running in a 64-bit kernel * 64-to-32-bit socket ioctl compatibility * Add support for Router Preference (RFC4191), Router Reachability Probing (RFC4191) and experimental support for Route Information Option in RA (RFC4191) in IPV6 * CCID2 support for DCCP * '''Kernel Core changes''' * Core * Introduce the sys_splice() system call. A pipe is used as small kernel buffer that you can use to transfer data from one end to the other. The idea and first implementation were done by Linus Torvalds [http://marc.theaimsgroup.com/?l=linux-kernel&m=110507985702357&w=2 (mail)], [http://marc.theaimsgroup.com/?l=linux-kernel&m=110511497731192&w=2 (mail)], [http://marc.theaimsgroup.com/?l=linux-kernel&m=110511787707447&w=2 (mail)]. It's a "better sendfile()", it can take input from anything (not just file -> socket) that just has "splice_read()", and move it to anything else, without doing any extra copies of the data. For example, a digital video camera could stream to both a file and live video (or something else) without doubling the buffering and doing memcpy [http://lwn.net/Articles/178199/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5274f052e7b3dbd81935772eb551dfd0325dfa9d (commit)] * Add a new scheduler domain for representing multi-core with shared caches between cores. This makes possible to make clever cpu scheduling decisions on such systems, improving performance greatly for some cases (see commit) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1e9f28fa1eb9773bf65bae08288c6a0a38eef4a7 (commit)] * Lightweight robust futexes: if a process exits prematurely while holding a pthread_mutex_t lock shared with some other process (e.g. yum segfaults or it's kill -9-ed), then waiters for that lock need to be notified that the last owner of the lock exited in some irregular way. This creates a API to fix that [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/robust-futexes.txt Documentation], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/robust-futex-ABI.txt ABI documentation], [http://lwn.net/Articles/172149/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e9056f13bfcdd054a0c3d730e4e096748d8a363a (commit 1)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0771dfefc9e538f077d0b43b6dec19a5a67d0e70 (commit 2)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dfd4e3ec246355274c9cf62c6b04a1ee6fa3caba (commit 3)] * Block queue IO tracing support (blktrace). This allows users to see any traffic happening on a block device queue. In other words, you can get very detailed stadistics of what your disks are doing. User space support tools available in: git://brick.kernel.dk/data/git/blktrace.git [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2056a782f8e7e65fd4bfd027506b4ce1c5e9ccd4 (commit)] * Cpuset memory spread implementation: Alternative memory allocation policy, if enabled it spreads out these kinds of memory allocations over all the nodes allowed to a task, instead of preferring to place them on the node where the task is executing. All other kinds of allocations, including anonymous pages for a tasks stack and data regions, are not affected by this policy choice, and continue to be allocated preferring the node local to execution, as modified by the NUMA mempolicy [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=825a46af5ac171f9f41f794a0a00165588ba1589 (commit 1), [[http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=44110fe385af23ca5eee8a6ad4ff55d50339097a (commit 2)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4b6a9316fab51af611dc8671f296734089f6a22a (commit 3)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=101a50019ae5e370d73984ee05d56dd3b08f330a (commit 4)] * sync_file_range() syscall [http://lwn.net/Articles/178199/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f79e2abb9bd452d97295f34376dedbec9686b986 (commit)] * Introduce a user space interface for swsusp [http://lwn.net/Articles/153203/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6e1819d615f24ce0726a7d0bd3dd0152d7b21654 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f577eb30afdc68233f25d4d82b04102129262365 (commit)] * CONFIG_UNWIND_INFO: Generates frame unwind information [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=604bf5a216e7f2d97cdf62614ca1281921531040 (commit)] * Reduce the size of (struct fdtable) to exactly 64 bytes on 32bits platforms, lowering kmalloc() allocated space by 50% [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c9e63fd38a2fb2181668a0cdd622a3c23cfd567 (commit)] * Optimize select/poll by putting small data sets on the stack instead of using kmalloc for small fd sets, an old optimization from Linux 2.0 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=70674f95c0a2ea694d5c39f4e514f538a09be36f (commit)] * Implement /proc/slab_allocators [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=871751e25d956ad24f129ca972b7851feaa61d53 (commit)] * New /proc file /proc/self/mountstats, where mounted file systems can export information (configuration options, performance counters, and so on) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b4629fe2f094b719847f31be1ee5ab38300038b2 (commit)] * APIs * Deprecate the use of MS_VERBOSE and replace it with MS_SILENT [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9b04c997b1120feefa1e6ee8e2902270bc055cd2 (commit)] * Add API for flushing Anon pages [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=03beb07664d768db97bf454ae5c9581cd4737bb4 (commit)] * Add flush_kernel_dcache_page() API [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5a3a5a98b6422d05c39eaa32c8b3f83840c7b768 (commit)] * 2TB files: Add blkcnt_t as the type of inode.i_blocks. This enables you to make the size of blkcnt_t either 4 bytes or 8 bytes on 32 bits architecture with CONFIG_LSF. On h8300, i386, mips, powerpc, s390 and sh that define sector_t, blkcnt_t is defined as u64 if CONFIG_LSF is enabled; otherwise it is defined as unsigned long. On other architectures, it is defined as unsigned long [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a0f62ac6362c168754cccb36f196b3dfbddc3bc3 (commit)] * for_each_possible_cpu: defines for_each_possible_cpu, a for-loop over cpu_possible_map. for_each_online_cpu is for-loop cpu over cpu_online_map [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=631d6747e1d877a4baa924cb373b8b9511a53e5e (commit)] * unify page_to_pfn(),pfn_to_page(): There are 3 memory models, FLATMEM, DISCONTIGMEM, SPARSEMEM and each arch has its own page_to_pfn(), pfn_to_page() for each models [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a117e66ed45ac0569c039ea60bd7a9a61e031858 (commit)] * Notifier chain: Introduces three new, parallel APIs: one for blocking notifiers, one for atomic notifiers, and one for "raw" notifiers (which is really just the old API under a new name) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e041c683412d5bf44dc2b109053e3b837b71742d (commit)] * add EXPORT_SYMBOL_GPL_FUTURE(): This patch adds the ability to mark symbols that will be changed in the future, so that kernel modules that don't include MODULE_LICENSE("GPL") and use the symbols, will be flagged and printed out to the system log [http://lwn.net/Articles/171838/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f28bb7e1d0188a993403ab39b774785892805e1 (commit)] * Permit Dual-MIT/GPL licenses [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7529c301165079d0f149d0e54724829e602f8fc0 (commit)] * CFQ: * Seek and async performance tuning [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=206dc69b31ca05baac68c75b8ed2ba7dd857d273 (commit)] * Change cfq io context linking from list to tree: Improves performance on setups with many disks [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e2d74ac0664c89757bde8fb18c98cd7bf53da61c (commit)] * Generic RTC subsystem: This allows users to plug one or more RTCs to the system [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=drivers/rtc code)]. This removes a number of drivers under drivers/i2c which are implemented in this new subsystem [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6fc7f10cee28c7fa190920fefda8c696d5bf3074 (commit)]. * Remove RTC UIP synchronization [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=63732c2f37093d63102d53e70866cf87bf0c0479 (commit)] * debugfs: Add debugfs_create_blob() helper for exporting binary data [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dd308bc355a1aa4f202fe9a3133b6c676cb9606c (commit)] * relayfs: migrate from relayfs to a generic relay API [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b86ff981a8252d83d6a7719ae09f3a05307e3592 (commit)] * relay: add sendfile() support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=221415d76231d9012871e6e6abcbad906c46626a (commit)] * Enable mprotect on huge pages [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8f860591ffb29738cf5539b6fbf27f50dcdeb380 (commit)] * Introduce FMODE_EXEC file flag, to indicate that file is being opened for execution. This is useful for distributed filesystems to maintain consistent behavior for returning ETXTBUSY when opening for write and execution happens on different nodes [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b500531e6f5f234ed267bd7060ee06d144faf0ca (commit)] * strndup_user(): This patch series creates a strndup_user() function to easy copying C strings from userspace [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=96840aa00a031069a136ec4c55d0bdd09ac6d3a7 (commit)] * msync(): perform dirty page levelling [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9c50823eebf7c256b92b4e0f02b5fb30e97788c2 (commit)] * kbuild * Improved modversioning support for external modules [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=040fcc819a2e7783a570f4bdcdd1f2a7f5f06837 (commit)] * Support building individual files for external modules [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=06300b21f4c79fd1578f4b7ca4b314fbab61a383 (commit)] * Mark unwind info for signal trampolines using the new S augmentation flag in recent GCCs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=da2e9e1ff40c863a12803c32209baaded3512433 (commit)] * vt: Add TIOCL_GETKMSGREDIRECT needed by the userland suspend tool to get the current value of kmsg_redirect from the kernel so that it can save it and restore it after resume [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0ca07731e495584bd84dca15a0f065470d594ec4 (commit)] * Removes the support for pps [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5ddcfa878d5b10b0ab94251a4229a8a9daaf93ed (commit)] * '''Architecture-specific''' * x86 32/64 * SMP "alternatives" for x86-32. This features detects the configuration of the system at boot time, and patches certain instructions in the kernel image on the fly with optimized versions for UP or SMP, depending on what system is running. This is useful for distros, who can provide a single kernel which auto-optimizes itself for UP or SMP environments. The feature can patch both SMP->UP and UP->SMP. The UP->SMP case is useful for CPU hotplug (which may be useful in virtualized environments to hot-add/remove CPUs in virtualized guests in reaction to load changes in the host) [http://lwn.net/Articles/164121/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a0b5817ad97bb718ab85322759d19a238712b47 (commit)] * Make CONFIG_REGPARM enabled by default. With this option, GCC passes the first 3 function parameters in registers. It's a noticable win both for size and for performance, and gcc[34] handles it correctly [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b824eb605ccba995fd32c6590aed365f93d48002 (commit)] * Use -mtune=generic for generic kernels. The upcomming gcc 4.2 got a new option -mtune=generic to tune code for both common AMD and Intel CPUs. Use this option when available for generic kernels. On x86-64 it is used with CONFIG_GENERIC_CPU. On i386 it is enabled with CONFIG_X86_GENERIC. It won't affect the base line CPU support in any ways and also not the minimum supported CPU [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dca99a38bccceda9e079d4c95abefbd9028605fe (commit)] * Increase the variability of the process stack on x86-64 for now. 8 MB is not really very random, use 1GB (or more with larger page sizes) instead[http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=913bd906019514579b3c7ec5ab9c463e89207a57 (commit)] * Allow disabling the "sep" feature (X86_FEATURE_SEP) at boot. This forces use of the int80 vsyscall, useful mainly for testing or benchmarking the int80 vsyscall code [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4f88651125e2ca8b106b6f65b65ea45776517bf3 (commit)] * "make isoimage" support, FDINITRD= support. This adds a "make isoimage" to i386 and x86-64, which allows the automatic creation of a bootable CD image. It also adds an option FDINITRD= to include an initrd of the user's choice in generated floppy- or CD boot images [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=841b8a46bffec232377d2de157f971e812be4fe4 (commit)] * kprobes-booster [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=311ac88fd2d4194a95e9e38d2fe08917be98723c (commit)] * Remove the obsolete microcode_ioctl [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f45e4656ac0609437267b242953c07d523649f8d (commit)] * PPC * Numa: Support sparse online node map. The powerpc numa code unconditionally onlines all nodes from 0 to the highest node id found, regardless of whether cpus or memory are present in the nodes, which wastes 8K per node and complicates some cpu and memory hotplug situations, such as adding a resource that doesn't map to one of the nodes discovered at boot. Instead, this feature set nodes online as resources are scanned, and falls back to node 0 only when we're sure this isn't a NUMA machine [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=482ec7c403d239bb4f1732faf9a14988094ce08b (commit)] * Implement accurate task and cpu time accounting for 64-bit powerpc kernels. Instead of accounting a whole jiffy of time to a task on a timer interrupt because that task happened to be running at the time, we now account time in units of timebase ticks according to the actual time spent by the task in user mode and kernel mode, we also count the time spent processing hardware and software interrupts accurately. This is conditional on CONFIG_VIRT_CPU_ACCOUNTING, if that is not set, tick-based approximate accounting is done as before [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c6622f63db86fcbd41bf6fe05ddf2e00c1e51ced (commit)] * Support for the physmapped flash on m8xx [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=076d022c566fddde41fd4a858dd24bacad8304d7 (commit)] * Add PCI support for 8540 ADS [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8080d5497146d5d27d9e8e78229d1adc7fe280cf (commit)] * Add platform support for MPC834x USB controllers [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4b10cfd40e3fa1c1663b9c9fa22260d41e669c6f (commit)] * Add oprofile calltrace support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6c6bd754bf43d59756f094de144ecac239629dda (commit)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fa465f8c7008c6cab32b05f3f1af57f7c86e8873 (commit)] * Add hvc backend for rtas, needed to get console output on those boards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f4d1749e9570d3984800c371c6e06eb35b9718b1 (commit)] * spufs * Enable SPE problem state MMIO access [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6df10a82f8de89c66eb91c371d62d76e87b2cbba (commit)] * Allow SPU code to do syscalls. An SPU does not have a way to implement system calls itself, but it can create intercepts to the kernel. This uses the method defined by the JSRE interface for C99 host library calls from an SPU to implement Linux system calls. It uses the reserved SPU stop code 0x2104 for this, using the structure layout and syscall numbers for ppc64-linux [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2dd14934c9138c562d93c501e88c6d6f061eb8ba (commit)] * Adds support for the LITE5200B, the new development board for the Freescale MPC5200 processor. It has two PCI slots and so a different PCI IRQ routing [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f8dd311982c86141f4f2fd326c0edf0c2d9fd97b (commit)] * Adds support for the PCI hostbridge in MPC5200B [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5931c4350059ce9bd5fe398b628c478753a11e44 (commit)] * Implement mfc access for PPE-side DMA: This adds a new file called 'mfc' to each spufs directory. The file accepts DMA commands that are a subset of what would be legal DMA commands for problem state register access. Upon reading the file, a bitmask is returned with the completed tag groups set [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a33a7d7309d79656bc19a0e96fc4547a1633283e (commit)] * ARM * Add support for the new XScale v3 core. It's an ARMv5 ISA core with the following additions: L2 cache, I/O coherency support (on select chipsets), Low-Locality reference cache attributes (replaces mini-cache), supersections (v6 compatible), 36-bit addressing (v6 compatible), single instruction cache line clean/invalidate, LRU cache replacement (vs round-robin) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=23bdf86aa06ebe71bcbf6b7d25de9958c6ab33fa (commit)] * Add support for the Intel ixp23xx series of CPUs and support for the ADI Engineering Roadrunner, Intel IXDP2351, and IP Fabrics Double Espresso platforms. The ixp23xx is an XSC3 based CPU with 512K of L2 cache, a 64bit 66MHz PCI interface, two DDR RAM interfaces, QDR RAM interfaces, two gigabit MACs, two 10/100 MACs, expansion bus, four microengines, a Media and Switch Fabric unit almost identical to the one on the ixp2400, two xscale (8250ish) UARTs and a bunch of other stuff [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c4713074375c61f939310b04e92090afe29810dc (commit)] * proc-v6: page table walks with outer-cacheable attribute, and enable no-execute in page tables [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3747b36eeab93d8969e86987bbc1d44971229b26 (commit)] * Add support for the Cirrus ep93xx series of CPUs. The ep93xx is an ARM920T based CPU with two VICs, PL010 based UARTs, IrDA, Maverickcrunch floating point coprocessor, between 24 and 64 GPIOs, ethernet, OHCI USB and, depending on the model, pcmcia, raster engine, graphics accelerator, IDE controller and a bunch of other stuff. Add the core ep93xx support code, and support for the Glomation GESBC-9312-sx and the Technologic Systems TS-72xx SBCs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e7736d47a11a771ba87314be563b2cb6b8d11d14 (commit)] * ep93xx: Add GPIO interrupt support for the first 16 GPIO lines (port A and B ) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bd20ff5793b4ece4fa3e9e0fcf8e6bbd93526215 (commit)] * Add support for Intel's IXDP28x5 platform. This is just and IXDP2801 with a new CPU rev [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0328ad23cfd8a0501f44a1b83e49d5b0e47e2b3c (commit)] * s3c2410: Support for Simtec IM2440D20 CPU modules (Osiris) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=110d322b29c08d8cf1dba599fd45ad2b9752a4bb (commit)] * s3c24xx: Add USB bus clock source [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=36c64af4e013ddf44c44298f50ff138ef1e2e7b7 (commit)] * Battery support for sharp zaurus sl-5500 (collie). Collie slowly charges battery even with charging disabled, so fast charge is not enabled yet [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=48a03ae863e0031def037fc828d7ea1a29b6fb7b (commit)] * Add support for logicpd pxa270 card engine [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e9937d4b0a9382c4c78411d1c53e62be396ee9a9 (commit)] * Adds support for the Ethernet controller integrated in the Atmel AT91RM9200 SoC processor. [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d4b7780ea1d2e08410fcc9963a57254147ae577a (commit)] * Add Cirrus EP93xx AMBA PL010 serial support: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aee85fe8e8143d3f54d9e6d3c6cdd40ead563267 (commit)] * Add a driver for the on-chip watchdog on the cirrus ep93xx series of ARM CPUs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f52ac8fec8a13e207f675b0c16e0d5f800c1c204 (commit)] * Adds support for the LED(s) on the AT91RM9200-based boards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cc2832a1313340ff1de55f15fac5b7fe48fa2a72 (commit)] * Adds support for the I/O coherent cache available on the xsc3 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=23759dc6430428897a36c4d493f611eca55c9481 (commit)] * Add pci slave support for ixp23xx [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=532bda5d9cd2f94a9e374765c23858c7d8641f66 (commit)] * SD/MMC support for i.MX/MX1 SD/MMC controller [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=56ca904053ab14ba4067a72b69a5edf246771209 (commit)] * Support for 2.6 (MMC/SD driver) on the Atmel AT91RM9200 processor [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=65dbf34393f7b3d20e993d9651a825df0fa5376b (commit)] * Allow un-muxed syscalls to be available for everyone. It's been a while since the un-muxed socket and ipc syscalls were introduced, so make the unistd.h number definitions visible for non-EABI as well as EABI [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d53ace70052b5c0a08a4f92993c0614f84920abf (commit)] * nommu: Adds MPU support in boot/compressed/head.S [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=10c2df65060e1ab57b2f75e0749de0ee9b8f4810 (commit)] * nommu: Add nommu specific Kconfig and MMUEXT variable in Makefile [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f8c07de6beac55c3273cbd679bfa67555ef14ef5 (commit)] * backlight: Generalise to support other Sharp SL hardware, this enables the driver to support other Zaurus hardware, specifically the SL-6000x (Tosa) model [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2c0f5fb08e8ad59f396b1bda41ccd93cbb00a09f (commit)] * PARISC * Add PREEMPT support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=50a34dbd612925f2ec55b1781632835ef36b97d5 (commit)] * Enable ioremap functionality unconditionally [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=29ef8295327653ff09a56285c35213cd31fa54b3 (commit)] * Add CONFIG_HPPA_IOREMAP to conditionally enable ioremap [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b8ce0aadcdebbaf5ec013c57e2a0803060817bcc (commit)] * MIPS: * Add early console for Cobalt [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e87dddeb92618d9dbb8b9f946a193739a4447609 (commit)] * Remove obsoleted serial au1x00_uart driver as announced in feature-removal-schedule.txt [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=335bd9dff31d042b773591933d3ee5bd62d5ea27 (commit)] * UML: * Add hotplug memory support to UML, see details in the commit [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=02dea0875b0f9b331a65fd6097dfd6115ca4ef24 (commit)] * Implement {get,set}_thread_area for i386 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aa6758d4867cd07bd76105ade6177fe6148e559a (commit)] * Sparc64: Add support for the Niagara platform (CPU, PCI devices, hypervisor, hypervisor serial console, etc) which includes a big rewrite of some parts of the sparc64 architecture [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c4a1745aa09fc110afdefea0e5d025043e348bae (commit)] * IA64: * Support for cpu0 removal [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ff741906ad3cf4b8ca1a958acb013a97a6381ca2 (commit)] * Export cpu cache info by sysfs: Export 8 attributes of cpu cache info under /sys/devices/system/cpu/cpuX/cache/indexX: 1) level 2) type 3) coherency_line_size 4) ways_of_associativity 5) size 6) shared_cpu_map 7) attributes 8) number_of_sets: number_of_sets=size/ways_of_associativity/coherency_line_size [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f19180056ea09ec6a5d32e741234451a1e6eba4d (commit)] * S390: * Channel path measurements: Gather extended measurements for channel paths from the channel subsystem and expose them to userspace via a sysfs attribute [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=495a5b45ac33b8fe2c49780fdbcc8014cb6d6ddc (commit)] * '''Filesystems''' * Ext3 * Support for multiple block allocation in ext3-get-blocks() [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b47b24781c59565f45acd765dc995a752d561e96 (commit)] * "nobh" writeback support for filesystems blocksize < pagesize [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a0e9285233a32edf267d27cd03fe0056951422cf (commit)] * XFS * Introduces multi-level in-core file extent [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0293ce3a9fd1b34c933a96577a8ba737b681cf75 (commit)] * Reenable the noikeep (delete inode cluster space) option by default [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e15f195cfb2fb1f2af0fdfc21277643deb26c0df (commit)] * Reorganize some of the in-core file extent:[http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4eea22f01bb4fdba1aab4430c33adbe88d9d4985 (commit)] * JFS * Add uid, gid, and umask mount options. OS/2 doesn't initialize the uid, gid, or unix-style permission bits, the uid, gid, & umask mount options perform pretty much like those for the fat file system, overriding what is stored on disk. This is useful for users sharing the file system with OS/2 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=69eb66d7da7dba2696281981347698e1693c2340 (commit)] * Add ext2 inode attributes for jfs. To see the type of inode attributes implemented see the commit [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fa3241d24cf1182b0ffb6e4d412c3bc2a2ab7bf6 (commit)] * Reenable write barriers by default [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3bbcc8e3976f8bba2fd607c8850d7dfe7e332fda (commit)] * Provide support for the splice syscall [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1b895840ce93fd2d150a86c800a3085eaab4eb9e (commit)] * NFS * Add I/O performance counters [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=91d5b47023b608227d605d1e916b29dd0215bff7 (commit)] * Introduce mechanism for tracking NFS client metrics. Add a per-superblock performance counter facility to the NFS client. This facility mimics the counters available for block devices and for networking. Expose these new counters via the new /proc/self/mountstats interface [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d9ef5a8c26aab09762afce43df64736720b4860e (commit)] * Use UNSTABLE + COMMIT for NFS O_DIRECT writes [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fad61490419b3e494f300e9b2579810ef3bcda31 (commit)] * Add RPC I/O statistics to /proc/self/mountstats [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4ece3a2d18fd7fe1d4972284a8c98c569020093f (commit)] * SUNRPC: add a handful of per-xprt counters, monitor generic transport events [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=262ca07de4d7f1bff20361c1353bb14b3607afb2 (commit)] * SUNRPC: track length of RPC wait queues which will eventually be exported to userland via the RPC iostats interface [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e19b63dafdf7d615b0d36b90990a07e7792b9d3a (commit)] * SUNRPC: introduce per-task RPC iostats [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ef759a2e54ed434b2f72b52a14edecd6d4eadf74 (commit)] * SUNRPC: provide a mechanism for collecting stats in the RPC client [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=11c556b3d8d481829ab5f9933a25d29b00913b5a (commit)] * CIFS * Add posix (advisory) byte range locking support to cifs client: Samba (version 3) server support for this is also currently being done. This client code is in an experimental path (requires enabling /proc/fs/cifs/Experimental) while it is being tested [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=08547b036b8445e2318e14f1f03308105b01fc5b (commit)] * Readdir perf optimizations part 1 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d47d7c1a850b867047fe17140fabd0376894e849 (commit)] * NTFS: Add support for sparse files which have a compression unit of 0 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a0646a1f04f1ec4c7514e5b00496b54e054a2c99 (commit)] * SELinux/audit * Disable the automatic labeling of new inodes on disk when no policy is loaded. Discussion in https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=180296 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8aad38752e81d1d4de67e3d8e2524618ce7c9276 (commit)] * Add a slab cache for the SELinux inode security struct [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7cae7e26f245151b9ccad868bf2edf8c8048d307 (commit)] * Hardwire important SE Linux events to the audit system [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=af601e4623d0303bfafa54ec728b7ae8493a8e1b (commit)] * Audit string fields interface + consumer [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=93315ed6dd12dacfc941f9eb8ca0293aadf99793 (commit)] * Add tty to syscall audit records [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6c043a887a9db32a545539426ddfc8cc2c28f8f (commit)] * Add a little more information to the add/remove rule message emitted by the kernel [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5d3301088f7e412992d9e61cc3604cbdff3090ff (commit)] * More filter rule comparators. Currently, audit only supports the "=" and "!=" operators in the -F filter rules, add ">", ">=", "<", and "<=" [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b63862f46547487388e582e8ac9083830d34f058 (commit)] * Send an audit event when a network interface goes into promiscuous mode [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5bdb98868062c1b14025883049551af343233187 (commit)] * '''Networking''' * IPV6 * Add support for Router Preference (RFC4191) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ebacaaa0fdf4402cdf4c8e569f54af36b6f0aa2d (commit)] * Add Router Reachability Probing (RFC4191) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=270972554c91acd29412d8b6a10e606041012106 (commit)] * Add experimental support for Route Information Option in RA (RFC4191): [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=70ceb4f53929f73746be72f73707cd9f8753e2fc (commit)] * Add router_probe_interval sysctl [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=52e1635631b342803aecaf81a362c1464e3da2e5 (commit)] * Add accept_ra_pinfo sysctl. This controls whether we accept Prefix Information in RAs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c4fd30eb18666972230689eb30e8f90844bce635 (commit)] * Add accept_ra_rt_info_max_plen sysctl [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=09c884d4c3b45cda904c2291d4723074ff523611 (commit)] * Add accept_ra_defrtr sysctl: This controls whether we accept default router information in RAs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=65f5c7c1143fb8eed5bc7e7d8c926346e00fe3c0 (commit)] * Add accept_ra_rtr_pref sysctl [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=930d6ff2e2a5f1538448d3b0b2652a8f0c0f6cba (commit)] * DCCP * Initial feature negotiation implementation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=afe00251dd9b53d51de91ff0099961f42bbf3754 (commit)] * Initial CCID2 (TCP-Like) implementation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2a91aa3967398fb94eccc8da67c82bce9f67afdf (commit)], and make it the default as per the draft [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=93ce20928f6e197707add8f670ae0cd029107e8f (commit)] * Introduce sysctls for the default features, in /proc/sys/net/dccp/default/*: /proc/sys/net/dccp/default/ack_ratio, /proc/sys/net/dccp/default/rx_ccid, /proc/sys/net/dccp/default/send_ackvec, /proc/sys/net/dccp/default/send_ndp, /proc/sys/net/dccp/default/seq_window, /proc/sys/net/dccp/default/tx_ccid. Of course we also need the setsockopt for each app to tell its preferences, but for testing or defining something other than CCID2 as the default for apps that don't explicitely set their preference the sysctl interface is handy [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e55d912f5b75723159348a7fc7692f869a86636a (commit)] * Netfilter * Add H.323 conntrack/NAT helper [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5e35941d990123f155b02d5663e51a24f816b6f3 (commit)] * nf_conntrack, support for layer 3 protocol load on demand: x_tables matches and targets that require nf_conntrack_ipv[4|6] to work don't have enough information to load on demand these modules [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b9f78f9fca626875af8adc0f7366a38b8e625a0e (commit)] * Extend current iptables compatibility layer in order to get 32bit iptables to work on 64bit kernel. Current layer is insufficient due to alignment checks both in kernel and user space tools [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2722971cbe831117686039d5c334f2c0f560be13 (commit)] * Unify IPv4/IPv6 multiport match: This unifies ipt_multiport and ip6t_multiport to xt_multiport. As a result, this addes support for inversion and port range match to IPv6 packets [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a89ecb6a2ef732d04058d87801e2b6bd7e5c7089 (commit)] * Unify IPv4/IPv6 esp match: This unifies ipt_esp and ip6t_esp to xt_esp. Please note that now a user program needs to specify IPPROTO_ESP as protocol to use esp match with IPv6. This means that ip6tables requires '-p esp' like iptables [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dc5ab2faece3b7473931357db7f63f596678481d (commit)] * Add RFC2863 operstate. This adds a dormant flag to network devices, RFC2863 operstate derived from these flags and possibility for userspace interaction. It allows drivers to signal that a device is unusable for user traffic without disabling queueing (and therefore the possibility for protocol establishment traffic to flow) and a userspace supplicant (WPA, 802.1X) to mark a device unusable without changes to the driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b00055aacdb172c05067612278ba27265fcd05ce (commit)] * Allow 32 bit socket ioctl in 64 bit kernel [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89bbfc95d65839d6ae23ddab8a3cc5af4ae88383 (commit)] * Socket timestamp 32 bit handler for 64 bit kernel [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f0ac2614412e2b597e2d5bfbd3960b4f73718b41 (commit)] * IPSEC: Sync series - SA expires. This allows a user to insert SA expires [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=53bc6b4d29c07664f3abe029b7e6878a1067899a (commit)] * IPSEC: Sync series - acquire insert: This introduces a feature similar to the one described in RFC 2367: "... the application needing an SA sends a PF_KEY SADB_ACQUIRE message down to the Key Engine, which then either returns an error or sends a similar SADB_ACQUIRE message up to one or more key management applications capable of creating such SAs". An app such as OSPF could then use ipsec KM to get keys [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=980ebd25794f0f87ac32844e2c73e9e81f0a72ba (commit)] * TCP: MTU probing: Implementation of packetization layer path mtu discovery for TCP, based on the internet-draft currently found at http://www.ietf.org/internet-drafts/draft-ietf-pmtud-method-05.txt [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5d424d5a674f782d0659a3b66d951f412901faee (commit)] * TCP/UDP getpeersec: Enable a security-aware application to retrieve the security context of an IPSec security association a particular TCP or UDP socket is using [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2c7946a7bf45ae86736ab3b43d0085e43947945c (commit)] * TCP: sysctl to allow TCP window > 32767 sans wscale [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=15d99e02babae8bc20b836917ace07d93e318149 (commit)] * Introduce tunnel4/tunnel6: Move the generic tunnel protocol stuff out of xfrm4_tunnel/xfrm6_tunnel and moves it into the new files of tunnel4.c and tunnel6 respectively [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d2acc3479cbccd5cfbca6c787be713ef1de12ec6 (commit)] * BRIDGE * Use LLC to send STP [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=12ac84c4a9c505e3e30529563b04cc8f6d5ebbf3 (commit)] * Use LLC for the receive path of Spanning Tree Protocol packets (STP) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cf0f02d04a830c8202e6a8f8bb37acc6c1629a91 (commit)] * Allow show/store of group multicast address [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fda93d92d7824159d8532995072dde2bee4bc4b3 (commit)] * X25 * Allow use of the optional user facility to insert ITU-T (http://www.itu.int/ITU-T/) specified DTE facilities in call set-up x25 packets [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a64b7b936dcd926ace745c07c14f45ecfaddb034 (commit)] * Allow dte facility patch to use 32 64 bit ioctl conversion mechanism [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a6b9f2e763a1d1492e164f13c13b995a9b98d78 (commit)] * Allow 32 bit x25 module structures to be passed to a 64 bit kernel via ioctl using the new compat_sock_ioctl registration mechanism [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1b06e6ba25a37fe1c289049d0e0300d71ae39eff (commit)] * Wireless * WE-20, version 20 of the Wireless Extensions, it enables the full Wireless Extension API over RtNetlink [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=711e2c33ac9221a419a9e28d05dd78a6a9c5fd4d (commit)] * Add the hardware independent software MAC layer [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=370121e5190a86a2d8a717ecd6f33028c7dc6fd4 (commit)] * softmac: reduce default rate to 11Mbps [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2638fed7ccb07ff43cdc109dd78e821efb629995 (commit)] * softmac: reduce scan dwell time: It currently takes something like 8 seconds to do a scan, because we spend half a second on each channel. Reduce that time to 20ms per channel [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=16f4352733d19c2d496f682c08cff368ba0495d0 (commit)] * Add LEAP authentication type [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=24056bec086aaa99923b21c0e1a0e993bb1c7e2a (commit)] * Add flags for all geo channels [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d128f6c176bff9c4929476e13132804321a6d5c5 (commit)] * Add spectrum management information [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7bd64366044565d6861783613db191c8aaec691e (commit)] * Add 802.11h information element parsing: Added default handlers for various 802.11h DFS and TPC [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d1b46b0fba8c1049135ee5d60910b04463dccc95 (commit)] and TIM [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=41a25c616b3140c388ff6009a1cb0b6b06a10f29 (commit)] * '''Drivers''' * PCI: Scheduled removal of the obsolete PCI_LEGACY_PROC (/proc/pci) interface [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5eeca8e688b6affba4cd85262152fdd1b274ad33 (commit)] * ipmi * Add full driver model support for the IPMI driver. It links in the proper bus and device support. It adds an "ipmi" driver interface that has each BMC discovered by the driver (as a device) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=50c812b2b9513e3df34eae8c30cb2c221b79b2cb (commit)] * Add generic PCI handling [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b0defcdbd2b7da7694e2645da92716cea0a3c0ff (commit)] * AGP/DRM * ATI RS350 support: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9d1ef8a64e21e57109be45a7345b09cf913e4b0e (commit)] * Enable VIA AGP driver on x86-64 for VIA P4 chipsets, needed for some newer EM64T systems [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9d1f6b28ee2429a1f94a9f7074ffae7f918d33be (commit)] * Rework radeon memory map [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d5ea702f1e8e3edeea6b673a58281bf99f3dbec5 (commit)] * Add all the r300 and r400 PCI ids from DRM CVS [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f3dd5c37382472a8b245ad791ed768771594e60c (commit)] * libata * Turn on ATAPI by default [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=418dc1f5a805822fcf1118804ddc689a4156db4a (commit)] * Add per-device max_sectors [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b00eec1d58ee71131375bfeb86e64bceec3f5618 (commit)] * ahci: Now that libata is smart enought to handle both soft and hard resets, add softreset method [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4658f79bec0b51222e769e328c2923f39f3bda77 (commit)] * Add support for the Promise Fasttrak TX4300/TX4310 4-port PCI SATA controllers based on the PDC40719 chip to sata_promise driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e1fd263c772e89706dee28aa794399ac4bd6b9c1 (commit)] * Add a new PCI ID for SiI 3124 to sata_sil24 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4b9d7e04a8daaf3e5afe775ec9cbbfda5e32dd5b (commit)] * Add 6042 support to sata_mv driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e4e7b89280d1d666e2c09e5ad36cf071796c4c7e (commit)] * Make per-dev transfer mode limits per-dev. Now that each ata_device has xfer masks, per-dev limits can be made per-dev instead of per-port [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5a529139554f12cb265715117a2153c936286294 (commit)] * Simplex and other mode filtering logic. This provides the needed framework to support all the mode rules found in the PATA world [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5444a6f405618706eddbe1605ef8533b1b655764 (commit)] * Remove E.D.D [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aec5c3c1a929d7d79a420e943285cf3ba26a7c0d (commit)] * AHCI: add ATI SB600 PCI IDs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8b316a3973f05e572b4edeeda9072987f6bbaa44 (commit)] * SCSI * Allow displaying and setting of cache type via sysfs: This patch adds a scsi_disk class with the cache type and FUA parameters, so user land application can easily obtain them without having to parse dmesg. It also allows setting the cache type (use with care...) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6bdaa1f17dd32ec62345c7b57842f53e6278a2fa (commit)] * sas: add support for enclosure and bad ID rphy attributes [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a012564136a665f8d63443c057ba368572b483df (commit)] * mptsas: add support for enclosure and bay identifier attributes: Adds support to retrieve the enclosure and bay identifiers. This patch is from Eric with minor modifications from me, rewritten from a buggy patch of mine, based on the earlier CSMI implementation from Eric.. [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e3094447e013a59ccedcf60f6055f18225bd8465 (commit)] * qla2xxx: Add ISP54xx support, chip is similar in form to our ISP24xx offering [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=044cc6c8ec311c4ddeebfcc31c53dea282de70b7 (commit)] * Add big endian support to 3ware 9000 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=75913d9bb8328c4eca54cad39a5fb665b48383eb (commit)] * lpfc: Add support for FAN [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5024ab179c13d763f95c8391f45f22309609f479 (commit)] * lpfc: Add module parameter to limit number of outstanding commands per lpfc HBA [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b28485acb930f67c014024bc3b9c01129124e566 (commit)] * mptspi: Add transport class Domain Validation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c92f222e1f14588171e63b550ca8c85fa9130061 (commit)] * qla2xxx: Add VPD sysfs attribute [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6f6417905cf272337a9762e1f92a1fffa651fcd3 (commit)] * Input devices * Add support for Braille devices [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b9ec4e109d7a342e83e1210e05797222e36555c3 (commit)] * Add SNES mouse support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b157d55eef38f014015b8058a9f733d1c1c49cb4 (commit)] * USB devices * Add OHCI support for AU1200 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d5fb7f1b5b832946eaf450b2a695ec3e7fd2d351 (commit)] * Add EHCI support for AU1200 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=76fa9a240de4294a097235c9ddd470c21eb3449e (commit)] * Add support for OCHI on AT91rm9200 based boards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=39a269c09f854d3d98cbb755b3568175f04efa10 (commit)] * Add support for AT91 (rm9200, eventually also sam9261 or uClinux) platforms [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bae4bd848dc0b7e6defc7a5d62834a35d1eed06d (commit)] * Add a new device ID to the cp2101 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59224f5352542b968c41200954e56c26c4f0a075 (commit)] * Add Icom ID1 USB product and vendor ids to the ftdi_sio driver. The Icom ID-1 1.2 GHz band digital transceiver is a new radio that has a USB interface [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bf58fbd5e86a43466e638407ff8a4eb7766a3b68 (commit)] * Add support for Creativelabs Silvercrest USB keyboard [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2e56222ed52cec40427fa89f23b228232e3e327e (commit)] * Add navman GPS device driver (USB serial) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e9a66c64bb7033cb0180d419b2008acf7a141adc (commit)] * Add support for the Nokia ca42 version 2 cable to the cypress_m8 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a5c44e29e5637b5e6fe59d225eb4f438688b3849 (commit)] * Adds Linksys USBVPN1 support (http://www1.linksys.com/Products/product.asp?prid=3D543&scid=3D30) to the pegasus driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=efafe6fb72b2bbab40080a08f7946f1eadb9bad9 (commit)] * EHCI for Freescale 83xx. This driver supports both the Dual-Role (DR) controller and the Multi-Port-Host (MPH) controller present in the Freescale MPC8349 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=80cb9aee01245b38325dd84f1359b14a3f01f10d (commit)] * Add a Video4linux2 driver for ZC0301 Image Processor and Control Chip.[http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=60f780528f3ae603eb169a221628b93b6c6929f9 (commit)] * Adds support for three USB peripheral controllers: "musbhsfc" for peripherals only, as found in for example the IBM/AMCC 44EP processors; "musbhdrc" is OTG-capable (dual role), and is found in various products including OMAP 2430 and the new DaVinci SOCs. The full speed controller on the FreeScale MPC8272 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1c05ad4447e4ecbd61647c102fb6f2f5a6634ff3 (commit)] * Network devices * Driver for the Broadcom 43xx based wireless cards (from http://bcm43xx.berlios.de). This chip is embedded in lots of laptops: Apple (Airport Extreme), Acer, Asus, Dell, Compaq and [http://linux-bcom4301.sourceforge.net/go/hardware many others] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f222313a61a5e134de80767b35c672b91e78383c (commit)] * ipw2100 * Add LEAP authentication algorithm support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cbbdd03fadeddd02efec05ccfd4e6870ed913762 (commit)] * Add generic geo information [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=be6b3b15b511aededd89d1ebbc7b25d0edd1ccd3 (commit)] * ipw2200: * switch to the new ipw2200-fw-3.0 image format. You will also need to upgrade your firmware image to the 3.0 version, available from http://ipw2200.sf.net/firmware.php [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9006ea75cfaded82acbc34d03e9d4e86447f40a9 (commit)] * Support WE-18 WPA, used to advertise the WPA-related encryption options that it does really support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f1b50863aa6a96c61a57e3b3a5e76e67b38c5c3e (commit)] * Add LEAP authentication algorithm support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e234b4e5768b4f783fc45f20be8c6515b875f17 (commit)] * Bluetooth coexistence support. It adds a new module param "bt_coexist" which defaults to OFF [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=810dabd466fe70869b66ab64dd326b6153cef645 (commit)] * Add module parameter to enable/disable roaming [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4bfdb91dcff0dd4b70922de263ccffffb8fb1d16 (commit)] * Enable the "slow diversity" algorithm. This forces one antenna or the other, if the background noise is significantly quieter in one than the other [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=71de1f3dd14e3e39cef929506a9526779f5a447d (commit)] * Wireless extension sensitivity threshold support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=651be26f2daf31e61faf4b55ada709cf39ec76a2 (commit)] * TG3 * Add support for 5714S and 5715S [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d4d2c558fd3e1f5e386b153f194aa8f0be496c77 (commit)] * Add support for new chip 5755 which is very similar to 5787 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=af36e6b6d7f4ad7a5ccfd14dfa71ec941255f93d (commit)] * Add 5755 nvram support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d3c7b886978bef42f5ea487dec376c482d3cd7e3 (commit)] * Add basic support for 5787 and 5754 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d9ab5ad12b0d865bdb1b750d81192d34465541e9 (commit)] * Support additional nvrams and new nvram format for 5787 and 5754 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1b27777a9b9b2b6d1c06000b7a31262d198b4238 (commit)] * Support 5787 hardware TSO [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5a6f3074c2ea5a7b4ff5b18f0e1fd9b1257e1a29 (commit)] and ipv6 checksum support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9c27dbdf64cba05d0cacc343118a7fd01d4b82f7 (commit)] * Support one-shot MSI on 5787. In this mode, MSI disables itself automatically after it is generated, saving the driver a register access to disable it for NAPI [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fcfa0a32c767219c1bdad621ef4a3aff1904cbbd (commit)] * Forcedeth * Let FORCEDETH no longer depend on EXPERIMENTAL [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=827700866ad0996e8c0f5ce75d1c01ae9b034cd6 (commit)] * Add support for vlan stripping/inserting in hardware [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ee407b02f3f1992bc746876c26f8175c8783562b (commit)] * Add highdma support for tx/rx rings [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0832b25a75d128e4f9724156380ba071c4f3f20d (commit)] * Add support for MSI/MSIX interrupts [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d33a73c81241e3d9ab8da2d0558429bdd5b4ef9a (commit)] * e1000 * Add support for ESB2 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6418ecc68e1d9416451b6f78ebb2c0b077e0abf2 (commit)] * Add TSO workaround for 82573 controller support: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f68788856b134f93d9d10b19aa902924c61fc02 (commit)] * Added a performance enhancement - prefetch [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=30320be88fb9cae888eacf1f1eaae95a03720128 (commit)] * sky2 * Add MSI support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fb2690a9bfa330aff3de29cbdde526591ac90dce (commit)] * Remove support for untested Yukon EC/rev 0, the Yukon EC/rev0 (A1) chipset requires a bunch of workarounds [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=290d4de5b71f60bb5853a7ef9f0e8c817cd26892 (commit)] * Airo * Cache wireless scans [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9e75af30d529d54fc650586776c100d0665c0c93 (commit)] * Adds IWENCODEEXT and IWAUTH support for WEP and unencrypted operation, but no WPA [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4be757dd4c00ddabff2d6faf639466bb5d76bc79 (commit)] * S2io * Large Receive Offload (LRO) feature(v2) for Neterion 10GbE Xframe PCI-X and PCI-E NICs. More details in the commit [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7d3d0439f574a4857c97b3ad2e63b082b7382d7e (commit)] * BNX2: Add ETHTOOL_GREGS support (ethtool -d support) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=244ac4f446ac6a19caf5eb692c4844f29e6478bf (commit)] * natsemi * Converts the driver to use NAPI [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b27a16b7c4738ea16f6f0730caf382a3f57317bb (commit)] * Support oversized EEPROMs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a8b4cf42cf57e44e3c4a585e0f0a71e3a7efbf29 (commit)] * Starfire: Implement suspend and resume methods. It allows to put a computer with a starfire dual board into S4 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d4fbeabbc9e68c80738fe59135d201c3ed5fe40f (commit)] * sb1250-mac: Add support for the 4th port and other new features of the BCM1480 SOC [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f90fdc3cce3d8c8ed09615dc68cb789655078803 (commit)] * pcnet_cs: Add new id (Logitec LPM-LN100TE):[http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c96a34ec3bad5ba37ee4da4a188ad534b2fa4321 (commit)] * isdn4linux: Add drivers for the Siemens Gigaset 3070 family of ISDN DECT PABXes connected via USB, either directly or over a DECT link using a Gigaset M105 or compatible DECT data adapter. The devices are integrated as ISDN adapters within the isdn4linux framework, supporting incoming and outgoing voice and data connections, and also as tty devices providing access to device specific AT commands. Supported devices include models 3070, 3075, 4170, 4175, SX205, SX255, and SX353 from the Siemens Gigaset product family, as well as the technically identical models 45isdn and 721X from the Deutsche Telekom Sinus series. Supported DECT adapters are the Gigaset M105 data and the technically identical Gigaset USB Adapter DECT, Sinus 45 data 2, and Sinus 721 data (but not the Gigaset M34 and Sinus 702 data which advertise themselves as CDC-ACM devices). These drivers have been developed over the last four years within the project http://sourceforge.net/projects/gigaset307x . [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=drivers/isdn/gigaset Source code] * sis900 adm7001 PHY support: This is required to get a SIS964 based motherboard ethernet working (FSC D1875) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=494aced2cda34c186083f7d53c419426eea3d584 (commit)] * spidernet: enable tx checksum offloading by default [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8dfc914a3f2ae4e303e2bff89f28fc14cee8a9a6 (commit)] * bonding: support carrier state for master [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ff59c4563a8d1b39597aab4917959146c61f09b0 (commit)] * axnet_cs.c: Add hardware multicast support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b8ab2dc3e1a7c525ca73ba0af3518ec0b7654b3b (commit)] * ALSA * Driver for AdLib FM cards. An AdLib card is just an OPL2, the driver has been tested with an actual ancient 8-bit ISA AdLib cards and works fine, but given that AdLib cards don't have their own mixer, upping the volume from 0 might be a problem without the card driver already loaded and driving the OPL3 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cf40a310a7aaf1944eea3e01e9c120b31850c3b6 (commit)] * Make procfs & OSS plugin code optional (CONFIG_SND_VERBOSE_PROCFS, CONFIG_SND_PCM_OSS_PLUGINS) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=21a3479a0b606d36fe24093f70a1c27328cec286 (commit)] * Add Zoom Video support in the ES18xx driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=95b712965f0a50365cc0128dacc27acf562f2ff1 (commit)] * Add support for EDIROL UM-3ex [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e03173fce2f2c233b755f2d668d6d4247a717453 (commit)] * Add Leadtek Winfast tv 2000xp delux to whitelist in the bt848 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=abf58f095525c0e46b4ee64a4f9c2084b4c08f4c (commit)] * Add support of Prodigy-7.1LT to the ice1724 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=45fe722ba814dc50410729a473022c550dd96910 (commit)] * ac97: Added a codec patch for LM4550 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ba22429d3ea3b9945735b88d4dde74711171ffab (commit)] * HDA/ALC260: add 'acer' models [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0bfc90e95946ac420e2de049707232ce18ddeba9 (commit)] * via82xx - Add dxs entry for FSC Amilo L7300 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bd84b0cc99d267d6512f01a55af7dbb673f784af (commit)] * Add default entry for CTL Travel Master U553W [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c1fc8047310c9d3147f9521af651a5823a72d218 (commit)] * emu10k1 - Add the entry for Audigy4 SB0400 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4fcf0117d599965a5916985c9923776628e16779 (commit)] * via82xx - Add dxs entry for ASRock mobo [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=42611c02ac31e44abd53893209460ce60205cb8e (commit)] * Add more PCI subsystem IDs of DVB cards to the blacklist of cards to the bt87x driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0110f50b6eb7a833f0e1e4e9a58d04a03d58939c (commit)] * Add snd-als300 driver for Avance Logic ALS300/ALS300+ soundcards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b3a70d5ece60684c00d7d94ccc42741efdf99336 (commit)] * Add dxs entry for EPoX EP-8KRAI in via82xx driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c04d092bde6a5dce632dec595f3974a35ed2cc2a (commit)] * Add a mixer control which allows the user to switch the Aux playback between the internal Aux jack, Wavetable, and Rear Line-In on Aureon Universe cards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=af9b70ac0044d126b28d28894cd890447c0a9dc1 (commit)] * Add snd-riptide driver for Conexant Riptide chip [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=109a9638f0fe38915838b7b9acd98e7cfa91797f (commit)] * Add snd-miro driver for miroSOUND PCM [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1841f613fd2e73f09d3fa2beeccf2f8d978ec2db (commit)] * Add support of LG LW20 laptop with ALC880 codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d681518a56d25d21d73a421174d189242adc68c7 (commit)] * hda-codec * Add PCM for 2nd ADC on ALC260 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c5186ed6b25278df595edf2d355ee87b00c4426 (commit)] * Add missing model entries for Intel 945 boards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=353b9e667042d6faa15a41df022bf38c949a7b2f (commit)] * Added a new model 'laptop-eapd' to AD1986A codec for Samsung R65 and ASUS A6J laptops [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=825aa97241b46d2819c1db984c86a1a9df41b8e1 (commit)] * Add a model entry for Aopen i915GMm-HFS mobo with ALC880 codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ede3531e8ce2deb81e477e18d72ef10efeb20ebe (commit)] * Add support for VAIO FE550G and SZ110 laptops with Sigmatel codec (7661). The new model 'vaio' is added [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=db064e503419c32df463326a3891a973bb30582e (commit)] * Add model entry for FIC P4M-915GD1 with ALC880 codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a12606cff106335650f0e9382e87b0fb08733eff (commit)] * Added the support ASUS P4GPL-X with ALC880 codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=84f3430c7255668a0298d166605d27e3c96b5de4 (commit)] * Add HP model [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=18a815d7426986890b88078ea63b77732baca0b5 (commit)] * Add lg model for LG laptop (m1 express dual) with ALC880 codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ae6b813a4dbba2713df497c032798b845289653f (commit)] * Added the support for HP nx9420 (Angelfire) laptop with AD1981HD codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b2c2844c5a486020e5d564870d114a7f4cd5ea4f (commit)] * Add support for high definition audio on ATI SB600 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89be83f8eef781a801898c08a5317ed463fe872f (commit)] * usb-audio * Add a quirk entry for the Edirol PC-50 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=415b09e4559b0c95666af3cebe918386212aef98 (commit)] * Add Miditech Play'n Roll support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b2b8229dde970b95e407d90a140e8a8753e1f0f6 (commit)] * Add Roland G-70 support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cdca881d79dc4133b35db5c855b688ee9cba12a9 (commit)] * Add support for the Yamaha MDP-5 and EZ-J24 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4ccb4a4387b3ed8c5a03862ef1e6f7be484ade25 (commit)] * Add a quirk for the Casio AP-80R [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0243ef71acc0b5bd734b511ae6d9b4b481c1dc5e (commit)] * Add mixer control names for the Audiotrak Maya44 USB [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c7a93b852bf9ffcf466b304fa3cfac8823f9b932 (commit)] * Add a quirk entry for the Casio PL-40R. [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9808dc962f6780ce7eac47c82400fede7f4a08b3 (commit)] * V4L/DVB * Add new internal VIDIOC_INT commands for setting the tuner mode, for putting a chip into standby mode and to set/get the routing of inputs/outputs of audio or video of a chip. These new commands will replace older commands that are no longer up to the task [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=757d250518c4905c5d13c8974446e08a2e3cf244 (commit)] * Add IR support to KWorld DVB-T (cx22702-based) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=28ecc4490100488663f1a978846632800ab198d5 (commit)] * Add standard for South Korean NTSC-M using A2 audio, South Korea uses NTSC-M but with A2 audio instead of BTSC and several audio chips need this information in order to set the correct audio processing registers [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d97a11e091a0bf40f1cfb0bbf443ddd7b455b133 (commit)] * Hauppauge Grey Remote support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bf47e4e43e4dcf88fef61b1b4139ce2da20e1f73 (commit)] * Added terratec hybrid xs and kworld 2800rf support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4d17d0834a2e6a5cba096ea09592a4a096183300 (commit)] * Support for Galaxis DVB-S rev1.3 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8bd6301c2a33271b629ac1ef2088e110624d5665 (commit)] * Hauppauge HVR 900 Composite support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a94e95b443811c127734ef10f3b7d2220532c1d2 (commit)] * Add support for the Avermedia 777 DVB-T card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a78d0bfabda67dd40a5a97ba4c24265e1820e7ea (commit)] * Added signal detection support to tvp5150 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=19d7509c0531b0e08f52ab93070569e0aba54cdf (commit)] * Add initial support for KWorld HardwareMpegTV XPert [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=44256de13ecc72291b616fda5f2c7ca8b110feec (commit)] * Added support for the Tevion DVB-T 220RF, an analog/digital hybrid card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3dfb729f4513184d06a0c618179489ac7bb277e0 (commit)] * Add filtered Composite2 input to Pinnacle PCTV 40i: add filtered Composite2 input. This improves video quality for Composite signals on the S-Video connector of the card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cb46e3c28ef8055e82dfbc64ba64dda123833036 (commit)] * Add support for ELSA EX-VISION 700TV, which is the ELSA Japan's flagship model of the software encoding TV capture card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d0456d1d67044ff2987190d0d8148a88f1a775af (commit)] * Add support for Terratec Prodigy XS [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=282b7cb3e03d9ada4067083e61919d74197a1e5a (commit)] * Add radio support for KWorld HardwareMpegTV XPert [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e2798212e3ce0057336bc0807beb3213de1dc5be (commit)] * Add support for the Lifeview FlyDVB-T LR301 card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3d8466ece44c70555a101da73845955c443f4d18 (commit)] * Add DVB-T support for the Lifeview DVB Trio PCI card: only DVB-T support, no DVB-S yet [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=420f32fe4e3eed466a6563e15a89f4688134cc98 (commit)] * Add support for xc3028 analogue tuner (Hauppauge HVR900, Terratec Hybrid XS) to v4l [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0004fd59d57a5875db8897966c414a88b5dad481 (commit)] * Add support for Kworld ATSC110 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e1410adc7cc9e8511327179b5b86864be17b7f9 (commit)] * Add cpia2 camera support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ab33d5071de7a33616842882c11b5eb52a6c26a1 (commit)] * Add support for the FE6600 tuner used on the DViCO FusionHDTV DVB-T Hybrid board, and add support for the Zarlink ZL10353 DVB-T demodulator, which supersedes the MT352, used on the DViCO FusionHDTV DVB-T Hybrid and later model Plus boards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=780dfef37e2c941985b708f67aa0074edc922bea (commit)] * Add support for Satelco Easywatch DVB-S light [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=36f4f334a169e5d42721d74b5d92fda89f792b06 (commit)] * Add support for remote control in Lifeview FlyDVB-T Duo [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a8029170b907e7bfac5f6ea3fcd5d076e90beaf3 (commit)] * Add support for AVerMedia A169 Dual Analog tuner card (dual saa7134 decoders - only 1 working right now) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=68593af311aadb541b3b70acea175dea8e9cf7ca (commit)] * Added ID entries for the Genius VideoWonder DVB-T and the LifeView FlyTV Platinum Gold [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=42e6b3b476f89b08232d1c1efd2327665b9050c8 (commit)] * There seems to be a new version of the USB DVB-T stick from WideView with a new demod-revision inside and thus a new firwmare. This patch enables support for that [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d46e6451956df4bee829dfebd5b521d0ee4868d1 (commit)] * Added support for the new Lifeview hybrid cardbus modules [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d95b8942eed310759bc866a2a4c0f110578aaa69 (commit)] * Added keycodes for the DViCO FusionHDTV portable remote control in Cxusb driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c150178bff4ae76635ccb06abd5258933379ecc6 (commit)] * Remove VIDIOC_S_AUDIO from tvaudio: no longer used [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=11cda1075d8c40e536b77fce6dbf4cdbf8f77736 (commit)] * Add support for the Wolfson Microelectronics WM8739 stereo A/D converter from the ivtv driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=75c4570ca4849b089c4edfc14bf02b4720087aba (commit)] * Cx88 default picture controls values [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f9c907fdc331fc6062d758f46f65cb0d2dd11be (commit)] * Add PAL / SECAM support to LG TALN series [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f3629be8388a679590eb919919ee63e2715ec25e (commit)] * Add support for the uPD6408x NEC Electronics 3-Dimensional Y/C separation i2c device [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=add953cecba870f4ad7730bd0a6d5eaaabeac3bc (commit)] * Creates a virtual video device driver. The Virtual Video Device Driver (aka vivi) is a device that can be used to test core v4l functionalities or be a prototype for newer development. When loaded, it provides a video device that generates a standard color bar, with a timestamp placed at top left corner [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1e6dd65e17b8b584026334b16485365bab486422 (commit)] * Infiniband: * PathScale InfiniPath Verbs Driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cd5e25d93e6efeb93db7b6731b0a674495270621 (commit)] * Various updates [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=064c94f9da8845f12446ab37142aa10f3c6f66ac (commit)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ace48471736a4b00753c74633f430c4a3a7d89cb (commit)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=52aef8183fbedb0232b20127b089e85e7aa095e3 (commit)] * IRDA * TOIM3232 dongle support: Here goes a patch for supporting TOIM3232 based serial IrDA dongles [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0ac81ae34ec8898e7eb1388fe21e3cee7b626a88 (commit)] * nsc-ircc: support for yet another Thinkpad IrDA chipset, a variation of the nsc-ircc PC8739x chipset, found in some IBM Thinkpad laptops [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0ed79c9b7dea5cd9a55589a495cf96f00cd037d9 (commit)] * nsc-ircc: Enable PnP support for the nsc-ircc chipset [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ec4f32d550b94b4b66c9c7689bc09c6b32c8e82e (commit)] * Video: * vgacon: Add support for soft scrollback. The scrollback buffer of the VGA console is located in VGA RAM. This RAM is fixed in size and is very small. To make the scrollback buffer larger, it must be placed instead in System RAM. The feature and the size of the buffer are made as a kernel config option. Besides consuming kernel memory, this feature will slow down the console by approximately 20% [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=15bdab959c9bb909c0317480dd9b35748a8f7887 (commit)] * fbdev: Support the framebuffer driver for the display controller in AMD Geode GX processors (Geode GX533, Geode GX500 etc). Tested at 640x480, 800x600, 1024x768 and 1280x1024 at 8, 16, and 24 bpp with both CRT and TFT. No accelerated features currently implemented and compression remains disabled. This driver requires that the BIOS (or the SoftVG/Firmbase code in the BIOS) has created an appropriate virtual PCI header [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fc4effc7a98d0d320e478d1d42bc4a8a64380150 (commit)] * nvidiafb: Add suspend and resume hooks to make software suspend more reliable [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7a07cd786dbd0111b9dd977e114438220cb4eee5 (commit)] * Add ID for Quadro NVS280: Quadro NVS280 is a dual-head PCIe card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ed49843b897da9969e349c279ffc832efcb93213 (commit)] * fbdev: Make BIOS EDID reading configurable: DDC reading via the Video BIOS may take several tens of seconds with some combination of display cards and monitors [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59153f7d7effdb5b3c81eb6d03914a866157b319 (commit)] * fbdev: add modeline for 1680x1050@60 for the Philips 200W display. aty128fb does not do DDC, it picks 1920x1440 or similar. It works ok with nvidiafb because it can ask for DDC data. [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b0c87978216836455ef5fbcac6df1ce6679750b0 (commit)] * au1200fb: Add support for Alchemy Au1200 framebuffer driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f95ec3c6df271ae4e6290cd6b95c18a009c76dc9 (commit)] * w100fb: Add acceleration support in w100fb.c (i.e. ATI Imageons) for the copyarea and fillrect operations [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9b0e1c5dd2941aec566047e10a5cc929ca7f7d4f (commit)] * Remove old radeon driver, which has been obsoleted by the new one since a few releases [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=39451a73a2d190763ba8a98f486cf23d63d22582 (commit)] * i2c * Add support for the CS5535/CS5536 in the scx200_acb driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=16ffc5c99554bc1630bc3939e0950a75b2b1c811 (commit)] * Add Broadcom HT-1000 south bridge's PCI ID to i2c-piix driver. Note that at least on Supermicro H8SSL it uses non-standard SMBHSTCFG = 3 and standard values like 0 or 9 causes hangup [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5f7ea3c58c9aa571617a9d77dd2fbd4bd81cc50a (commit)] * Add the DS2482 I2C-to-w1 bridge driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=baf12ae29ab4cc6381e21b2e1a3af75a6a8f7566 (commit)] * acpiphp * Add dock event handling: These patches add generic dock event handling to acpiphp. If there are pci devices that need to be inserted/removed after the dock event, the event notification will be handed down to the normal pci hotplug event handler in acpiphp so that new bridges/devices can be enumerated. Because some dock stations do not have pci bridges or pci devices that need to be inserted after a dock, acpiphp will remain loaded to handle dock events even if no hotpluggable pci slots are discovered. You probably need to have the pci=assign-busses kernel parameter enabled to use these patches, and you may not allow ibm_acpi to handle docking notifications and use this patch [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=20416ea54087c25502d6fb973b8e119973e16341 (commit)] * Add new bus to acpi: If we add a new bridge with subordinate busses, we should call make sure that acpi is notified so that the PRT (if present) can be read and drivers who have registered on this bus will be notified when it is started. Also make sure to use the max reserved bus number for the starting the bus scan [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=15a1ae74879925d0d3f71ebc3f56d0a2c5db393a (commit)] * hwmon * Add support for the Intel Pentium M series to the hwmon-vid driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c537fb287e68b84df685f4730348e83a163367b (commit)] * Add support for the Winbond W83687THF chip to the w83627hf hardware monitoring driver. This new chip is almost similar to the already supported W83627THF chip, except for VID and a few other minor changes [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c2db6ce14a743ac5f8973124272cf425c4f86b90 (commit)] * pcmcia * Add support for Possio GCC AKA PCMCIA Siemens MC45 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=30bac7aa0e3678c79ff00fc9372f34712eeb34fc (commit)] * AT91RM9200 Compact Flash driver: This patch adds support for the Compact Flash controller integrated in he Atmel AT91RM9200 processor [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2c1f3b7a30286c16ba151fadb0abf0b20e2a1e45 (commit)] * Serial: * Add rs422 support to the Altix ioc4 serial driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=64b91379439ff0fb007bde90eb496299c14a9b2a (commit)] * serial_cs: Add Merlin U630 IDs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1de9cedfbdff1d8adb662cd3afc5bda66e393351 (commit)] * Allow 8250 PCI, PNP, GSC and HP300 support to be disabled with EMBEDDED enabled [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0cff260a42c051ee64c184ed05d96d18d243f7f6 (commit)] * mmc * Secure Digital Host Controller Interface driver: Driver for the Secure Digital Host Controller Interface specification [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d129bceb1d44ed3c23b99164849193703372bab4 (commit)] * Add OMAP MMC host driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=730c9b7e6630f786fcec026fb11d2e6f2c90fdcb (commit)] * udf: fix uid/gid options and add uid/gid=ignore and forget options: As Pekka Enberg pointed out, with the if still following the else, you can still get a null uid written to the disk if you specify a default uid= without uid=forget. In other words, if the desktop user is uid=1000 and the mount option uid=1000 is given ( which is done on ubuntu automatically and probably other distributions that use hal ), then if any other user besides uid 1000 owns a file then a 0 will be written to the media as the owning uid instead [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0e6b3e5e97e2e8a25bcfc528dad94edf5220dfeb (commit)] * aoe: support dynamic resizing of AoE devices: Allow the driver to recognize AoE devices that have changed size. Devices not in use are updated automatically, and devices that are in use are updated at user request [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3ae1c24e395b2b65326439622223d88d92bfa03a (commit)] * dm/md: * Raid5 reshaping support [http://lwn.net/Articles/169140/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ccfcc3c10b2a5cb8fd3c918199a4ff904fc6fb3e (commit)] * Infrastructure to allow normal IO to continue while array is expanding: We need to allow that different stripes are of different effective sizes, and use the appropriate size. Also, when a stripe is being expanded, we must block any IO attempts until the stripe is stable again [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7ecaa1e6a1ad69862e9980b6c777e11f26c4782d (commit)] * Following symlinks are created if dm-0 maps to sda: /sys/block/dm-0/slaves/sda --> /sys/block/sda, /sys/block/sda/holders/dm-0 --> /sys/block/dm-0 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f165921df46a977e3561f1bd9f13a348441486d1 (commit)] * Following symlinks are created if md0 is built from sda and sdb: /sys/block/md0/slaves/sda --> /sys/block/sda, /sys/block/md0/slaves/sdb --> /sys/block/sdb, /sys/block/sda/holders/md0 --> /sys/block/md0, /sys/block/sdb/holders/md0 --> /sys/block/md0 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5463c7904c952aa6b6804dd902c72a5332fa5221 (commit)] * LED * Adds an LED driver for LEDs exported by the Sharp LOCOMO chip as found on some models of Sharp Zaurus [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4d3cb35476903768541f79e61f171e79e6065098 (commit)] * Add NAND MTD activity LED trigger [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8fe833c1b010489b71b082e553b1dfa80ef81061 (commit)] * Adds LED drivers for LEDs found on the Sharp Zaurus c7x0 (corgi, shepherd, husky) and cxx00 (akita, spitz, borzoi) models [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3179108daaaccbf28b17d6d8b0e06abf0eee6d9f (commit)] * Add an LED trigger for IDE disk activity to the ide-disk driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2bfb646cdf348cb77c572f06d5b9d17ea205c7e2 (commit)] * Add an LED trigger for the charger status as found on the Sharp Zaurus series of devices [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=181bf8aa68a1d062d7f98abb0f1cb8871910320c (commit)] * Adds LED drivers for LEDs found on the Sharp Zaurus c6000 model (tosa) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6d0cf3e0480f6be9232854387794443d1a904d6d (commit)] * LED: class documentation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=75c1d31d9ea71025b73430c696b727e8aa15872d (commit)] * Add LED class [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c72a1d608dd0eb3d553a08bfdf1c0041bebaa8a0 (commit)] * add LED device support for ixp4xx devices [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6a0c51bfce5ae4058366017d861aea6564d25aee (commit)] * Add support for LED triggers to the LED subsystem. "Triggers" are events which change the state of an LED. Two kinds of trigger are available, simple ones which can be added to exising code with minimum disruption and complex ones for implementing new or more complex functionality [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c3bc9956ec52fb2c70f29aa894d8eec766116584 (commit)] * Add an example of a complex LED trigger in the form of a generic timer which triggers the LED its attached to at a user specified frequency and duty cycle [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6655c6fe575b720eb8cb6c143ae10995a7aa1916 (commit)] * Add driver support for general purpose I/O feature of the Synclink GT adapters [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0080b7aae88c75e2a6b38dfcb228b0f239e18e3c (commit)] * WATCHDOG at91_wdt.c Watchdog driver for the Atmel AT91RM9200 processor [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=853807fb500a9442d88646b7be92bfa51334f8e8 (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.8)>> |
Changes done in each Linux kernel release. Other places to get news about the Linux kernel are LWN kernel status, H-Online, or the Linux Kernel mailing list (there is a web interface in www.lkml.org). 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.8 has been released on Sun, 2 Aug 2020.
Summary: This release adds: memory management changes to improve the behaviour of systems under thrashing situations; a event notification mechanism built on top of standard pipes that splices messages from the kernel into pipes opened by userspace; support for having different procfs mounts with different mount options each one; a Kernel Concurrency Sanitizer that helps to find data race bugs; make it possible to use pidfds with setns(2) for easier attachment to the namespaces of a process; support for Shadow Call Stack and Branch Target Identification in ARM64 to prevent security exploits; support for Inline Encryption hardware; new CAP_BPF and CAP_PERFMON capabilities for BPF and performance monitoring programs; and IPv6 MPLS support. As always, there are many other new drivers and improvements.
Contents
-
Prominent features
- Better behavior in memory thrashing situations
- Kernel Concurrency Sanitizer
- Kernel event notification mechanism
- Private procfs instances
- Using pidfds to attach to namespaces
- Shadow Call Stack and Branch Target Identification for improved security on ARM64
- Support for Inline Encryption hardware
- Introduce CAP_BPF and CAP_PERFMON security capabilities
- IPv6 MPLS support
- bridge: Add support for Media Redundancy Protocol (MRP)
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing, perf and BPF
- Virtualization
- Cryptography
- Security
- Networking
- Architectures
-
Drivers
- Graphics
- Power Management
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- 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
- Non-Transparent Bridge (NTB)
- Thunderbolt
- Clock
- PHY ("physical layer" framework)
- EDAC (Error Detection And Correction)
- 1-Wire (W1)
- Firmware
- Various
- List of Pull Requests
- Other news sites
1. Prominent features
1.1. Better behavior in memory thrashing situations
The reclaim code that balances between swapping and cache memory reclaim tries to predict likely reuse of a memory page. When it fails it cannot detect when the cache is thrashing pathologically, or when the system is in the middle of a swap storm. This code has been tuned over time to a point where even in the presence of large amounts of cold anonymous memory and a capable swap device, the VM refuses to even seriously scan these pages, and can leave the page cache thrashing needlessly. The proliferation of fast random IO devices such as SSDs has made this undesirable behavior more noticeable.
This release sets out to address this. Since Linux 3.15, the kernel has exact tracking of refault IO - the ultimate cost of reclaiming the wrong pages. This allows to use an IO cost based balancing model that is more aggressive about scanning anonymous memory when the cache is thrashing, while being able to avoid unnecessary swap storms. This release base the LRU balance on the rate of refaults on each list, times the relative IO cost between swap device and filesystem (swappiness), in order to optimize reclaim for least IO cost incurred. The swapiness sysctl can also now be raised up to 200 to force the kernel to use swapping, which can be useful with in-memory swap, like zram or zswap.
1.2. Kernel Concurrency Sanitizer
The Kernel Concurrency Sanitizer (KCSAN) is a data race detector for the kernel. Key priorities in KCSAN's design are lack of false positives, scalability, and simplicity. KCSAN uses compile-time instrumentation to instrument memory accesses and it is supported in both GCC and Clang.
Documentation: The Kernel Concurrency Sanitizer (KCSAN)
Recommended LWN article: Concurrency bugs should fear the big bad data-race detector (part 1)
1.3. Kernel event notification mechanism
This release adds an event notification mechanism built on top of standard pipes, it splices notification messages from the kernel into pipes opened by userspace. The pipe is opened in a special mode, and its internal buffer is used to hold messages generated by the kernel, which are then read out by read(2). The owner of the pipe tells the kernel which sources it would like to watch through that pipe, and filters may also be emplaced on a pipe so that certain source types and subevents can be ignored if they’re not of interest. In this release, the only event source is for keys/keyrings, such as linking and unlinking keys and changing their attributes, which will be used by Gnome.
Documentation: General notification mechanism
Recommended LWN article: A kernel event notification mechanism
1.4. Private procfs instances
Procfs was historically tied to PID namespaces, this has the effect that all new procfs mounts are just a mirror of the internal one; any change, any mount option update, any new future introduction will propagate to all other procfs mounts in the same PID namespace.
This release allows to have several procfs mounts with different mounts options within the same PID namespace. The main aim of this work is to have on embedded systems one supervisor for apps. It also adds some convenient mount options that let a private procfs mount to show only ptraceable processes in the procfs, which allows to support lightweight sandboxes in Embedded Linux. Or a mount option that allows to hide non-pid inodes.
1.5. Using pidfds to attach to namespaces
This release makes it possible to use pidfds to attach to the namespaces of a process, i.e. they can be passed as the first argument to the setns(2) syscall. When a pidfd is passed, multiple namespace flags can be specified in the second argument and setns(2) will then attach the caller to all the specified namespaces all at once or to none of them. Eg: setns(pidfd, CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWNET);
These features support various use-cases where callers setns to a subset of namespaces to retain privilege, perform an action and then re-attach another subset of namespaces. Apart from reducing the number of syscalls needed to attach to all currently supported namespaces, this also allows to setns to a set of namespaces atomically, this is useful for a standard container manager interacting with a running container.
1.6. Shadow Call Stack and Branch Target Identification for improved security on ARM64
This release adds generic support for Clang's Shadow Call Stack on ARM64, which uses a shadow stack to protect function return control flow from buffer overruns on the main stack.
There is also support for ARMv8.5-BTI in both user- and kernel-space. This allows branch targets to limit the types of branch from which they can be called and additionally prevents branching to arbitrary code.
Recommended LWN article: Some near-term arm64 hardening patches
1.7. Support for Inline Encryption hardware
This release supports Inline Encryption in the block layer. Inline Encryption hardware allows software to specify an encryption context (an encryption key, crypto algorithm, data unit num, data unit size, etc.) along with a data transfer request to a storage device, and the inline encryption hardware will use that context to en/decrypt the data. The inline encryption hardware is part of the storage device, and it conceptually sits on the data path between system memory and the storage device.
Recommended LWN article: Inline encryption for filesystems
1.8. Introduce CAP_BPF and CAP_PERFMON security capabilities
Using BPF has required the CAP_SYS_ADMIN capability to run. This means that software that needs to use BPF needs that capability, which grants way too many privileges. This releases grants access to BPF functionality with a new CAP_BPF capability combined with CAP_PERFMON, CAP_NET_ADMIN and some of them kept under CAP_SYS_ADMIN. The user process has to have: CAP_BPF to create maps and do other sys_bpf() commands, CAP_BPF and CAP_PERFMON to load tracing programs, and CAP_BPF plus CAP_NET_ADMIN to load networking programs.
This release also adds the CAP_PERFMON capability for performance monitoring and observability.
Recommended LWN article: CAP_PERFMON — and new capabilities in general
1.9. IPv6 MPLS support
This release extends the Multi-Protocol Label Switching support to IPv6.
1.10. bridge: Add support for Media Redundancy Protocol (MRP)
This release adds support for the Media Redundancy Protocol is a data network protocol standardized by International Electrotechnical Commission as IEC 62439-2. It allows rings of Ethernet switches to overcome any single failure with recovery time faster than STP. It is primarily used in Industrial Ethernet applications.
2. Core (various)
(FEATURED) Add Kernel Concurrency Sanitizer (KCSAN) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Add a general notification queue concept and add an event source for keys/keyrings, such as linking and unlinking keys and changing their attributes. Key/keyring notifications are desirable because if you have your kerberos tickets in a file/directory, your Gnome desktop will monitor that and tell you if your credentials cache changes. The notification queue is built on top of a standard pipe. Messages are effectively spliced in. The pipe is opened with a special flag: pipe2(fds, O_NOTIFICATION_PIPE). The pipe is then configured and messages are read out of the pipe. LSM hooks are included: A set of hooks are provided that allow an LSM to rule on whether or not a watch may be set, and a hook to allow an LSM to rule on whether or not a particular message may be posted to a particular queue commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Add support for Clang's Shadow Call Stack mitigation, which uses a separately allocated shadow stack to protect against return address overwrites commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) namespaces: make it possible to use pidfds to attach to the namespaces of another process, i.e. they can be passed as the first argument to the setns(2) syscall. Multiple namespace flags can be specified in the second setns() argument and setns() will attach the caller to all the specified namespaces all at once or to none of them. The obvious example where this is useful is a standard container manager interacting with a running container: pushing and pulling files or directories, injecting mounts, attaching/execing any kind of process, etc. It also allows to switch to a set of namespaces atomically commit, commit, commit
- VFS
(FEATURED) procfs: support multiple private instances commit, commit, commit, commit, commit, commit, commit, commit
Add faccessat2(2) syscall. POSIX defines faccessat() as having a fourth "flags" argument, while the linux syscall doesn't have it. Glibc tries to emulate AT_EACCESS and AT_SYMLINK_NOFOLLOW, but AT_EACCESS emulation is broken. This release adds a new faccessat(2) syscall with the added flags argument and implement both flags commit
utimensat(2): AT_EMPTY_PATH support, this makes it possible to use utimensat on an O_PATH file (including symlinks) commit
Allow unprivileged whiteout creation commit
Have syncfs() return error when there are writeback errors commit, commit
Support setting sysctl parameters from kernel command line in the form of sysctl.vm.something=1 commit, commit, commit, commit, commit
cgroup: add cpu.stat file to root cgroup commit
dynamic_debug: add an option to enable dynamic debug for modules only commit
- EFI
GOP: Add the ability to use a command-line option to switch the gop's display mode. The options supported are: video=efifb:mode=n to choose a mode; video=efifb:<xres>x<yres>[-(rgb|bgr|<bpp>)] to specify mode by resolution and optionally color depth; and video=efifb:auto to let the EFI stub choose the highest resolution mode available commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Make initrd file loader configurable commit
Add a basic printf implementation for the EFI stub to use commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- io_uring
Add tee(2) support commit
Add support for enabling/disabling notifications on a registered eventfd commit, commit
Allow IORING_OP_POLL with double waitqueues commit
Enable closing of the ring itself commit
Export cq overflow status to userspace by adding new IORING_SQ_CQ_OVERFLOW flag commit
io_uring: call statx directly commit, commit, commit, commit
PM: allow to disable snapshot device commit
init: allow to configure the default init commit
kcov: collect coverage from usb soft interrupts commit, commit, commit, commit, commit, commit, commit
Introduce sysctl hung_task_all_cpu_backtrace to print all traces when a hung task is detected commit
panic: add sysctl oops_all_cpu_backtrace to dump all CPUs backtraces on oops event commit
panic: Add panic_on_taint boot option in order to provide a simple and generic way to stop execution and catch a coredump when the kernel gets tainted by any given taint flag commit
- Locking
Introduce the concept of local_locks, which are strictly per CPU and satisfy the constraints required by PREEMPT_RT commit, commit, commit, commit, commit, commit, commit
Prototype RCU usable from idle, exception, offline commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Build
Support 'userprogs' syntax commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add variables for compression tools, eg make GZIP=pigz BZIP2=pbzip2 commit
- objtool
Implement noinstr validation (no-instrument) to ensure critical code (entry for now, idle later) run no unexpected code commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support compressed debug info commit
Enable compilation of objtool for all architectures commit, commit, commit
Changes to check retpoline code commit, commit, commit, commit, commit, commit, commit
kgdb: Support late serial drivers; enable early debug w/ boot consoles commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
3. File systems
- BTRFS
Speedup dead root detection during orphan cleanup, eg. when there are many deleted subvolumes waiting to be cleaned commit
Read repair/direct I/O improvements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Snapshot creation with inherited qgroup will mark the qgroup inconsistent, requires a rescan commit
btrfs send will emit file capabilities after chown, this produces a stream that does not need postprocessing to set the capabilities again commit
Deal with a few ENOSPC corner cases commit, commit, commit, commit, commit
- CIFS
Add new parm nodelete, which allows standard permission checks on the server to work, but prevents on the client any attempts to unlink a file or delete a directory on that mount point commit
Add support for idsfromsid on create and also for chgrp/chown allowing ability to save owner information more naturally for some workloads. Improves getattr when SMB3.1.1 posix extensions are negotiated by using new query info level commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Ensure several mount parameters work properly on multiuser mounts for non-root users commit, commit, commit, commit, commit, commit
- FSCRYPT
- EXT4
- XFS
- F2FS
Introduce sysfs/data_io_flag to attach REQ_META/FUA commit
Support read iostat commit
Support partial truncation on compressed inode commit
Support fiemap on compressed inode commit
compress: support lzo-rle compress algorithm commit
Introduce F2FS_IOC_RESERVE_COMPRESS_BLOCKS commit and F2FS_IOC_RELEASE_COMPRESS_BLOCKS commit
Add compressed/gc data read IO stat commit
- OVERLAYFS
- PSTORE
- SQUASHFS
squashfs: migrate from ll_rw_block usage to BIO - decreases boot time by close to 40% when using squashfs for the root file-system commit
- AFS
Various improvements: Improve callback processing, improve keeping NAT or firewall channels open, improving detection of delayed or lost callbacks, determine aliasing of cells, improve the fileserver rotation commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- OCFS2
Mount shared volume without ha stack commit
- EROFS
Convert to use the new mount fs_context api commit
- EXFAT
Add boot region verification commit
- FAT
Improve the readahead for FAT entries commit
4. Memory management
(FEATURED) Balance LRU lists based on relative thrashing: The reclaim code that balances between swapping and cache reclaim tries to predict likely reuse based on in-memory reference patterns alone. The balancing code has been tuned over time to a point where it mostly goes for page cache and defers swapping until the VM is under significant memory pressure. Since commit a528910e12ec Linux has exact tracking of refault IO - the ultimate cost of reclaiming the wrong pages. This allows us to use an IO cost based balancing model that is more aggressive about scanning anonymous memory when the cache is thrashing, while being able to avoid unnecessary swap storms commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
swap: speed up swapoff by properly updating readahead statistics commit
swap: improve swap scalability reduce lock contention on swap cache from swap slots allocation commit
swap: improve swap scalability by trying to scan more free slots even when fragmented commit
memory_hotplug: Interface to add driver-managed system ram commit, commit, commit
Expand the atomic DMA pools for the various possible gfp requirements as a means to prevent an unnecessary depletion of lowmem. This allows devices that required unencrypted memory to do non-blocking allocations through the DMA API commit, commit, commit, commit, commit, commit, commit
Expand the cases khugepaged can handle and switch anon-THP copy-on-write handling to 4k commit, commit, commit, commit, commit, commit, commit, commit
- memcg
Expose root cgroup's memory.stat commit
Add workingset_restore in memory.stat commit
Slow down swap allocation as the available space gets depleted. It adds a memory.swap.high knob, which can be used to protect the system from SWAP exhaustion. The mechanism used for penalizing is similar to memory.high penalty (sleep on return to user space) commit, commit, commit, commit
Optimize memory.numa_stat like memory.stat commit
Reworks memcg to charge swapin pages directly at swapin time, rather than at fault time, which may be much later, or not happen at all commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Improvements about lowmem_reserve and /proc/zoneinfo commit, commit, commit
Change readahead 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
Parallelize deferred struct page init commit, commit, commit, commit, commit, commit, commit, commit
Add a new mmap locking API wrapping mmap_sem calls commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
5. Block layer
loop: Add LOOP_CONFIGURE ioctl. This allows userspace to completely setup a loop device with a single ioctl, removing the in-between state where the device can be partially configured commit
Add support for Inline Encryption to the block layer. Inline Encryption hardware allows software to specify an encryption context (an encryption key, crypto algorithm, data unit num, data unit size, etc.) along with a data transfer request to a storage device, and the inline encryption hardware will use that context to en/decrypt the data. The inline encryption hardware is part of the storage device, and it conceptually sits on the data path between system memory and the storage device commit, commit, commit, commit, commit
- Device Mapper
dm crypt: support using encrypted keys commit
Add emulated block size target. Its main purpose is to emulate 512 byte sectors on 4K native disks commit
dma-zoned: Add a new metadata version 2, which brings the following improvements: UUIDs and labels, extend random zones by an additional regular disk device, and tertiary superblock support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dm mpath: add Historical Service Time Path Selector. It keeps an exponential moving average of the service time for each path, and uses this along with the number of inflight requests to estimate future service time for a path commit
dm ebs: pass discards down to underlying device commit
dm bufio: implement discard commit
dm writecache: improve performance on DDR persistent memory (Optane) commit
dm-zoned: improve cache performance commit, commit, commit, commit, commit, commit
dm-zoned: multiple drive support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- CEPH
6. Tracing, perf and BPF
(FEATURED) Introduce CAP_PERFMON to secure system performance monitoring and observability commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- BPF
(FEATURED) Introduce CAP_BPF to split BPF operations that are allowed under CAP_SYS_ADMIN into combination of CAP_BPF, CAP_PERFMON, CAP_NET_ADMIN and keep some of them under CAP_SYS_ADMIN. The user process has to have: CAP_BPF to create maps and do other sys_bpf() commands, CAP_BPF and CAP_PERFMON to load tracing programs, and CAP_BPF plus CAP_NET_ADMIN to load networking programs commit, commit, commit
bpftool: Allow probing for CONFIG_HZ from kernel config commit
Add get{peer,sock}name cgroup attach types to the BPF sock_addr programs in order to enable rewriting sockaddr structs commit, commit, commit, commit
Add sk_msg and networking helpers to all networking programs with perfmon_capable() capabilities commit, commit, commit, commit, commit
Implement a new BPF ring buffer, as presented at BPF virtual conference. It presents an alternative to perf buffer, following its semantics closely, but allowing sharing same instance of ring buffer across multiple CPUs efficiently commit, commit, commit, commit, commit
The bpf iterator provides in-kernel aggregation abilities for kernel data. This can greatly improve performance compared to e.g., iterating all process directories under /proc commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce a new bpf_link type for attaching to network namespace commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add rx_queue_mapping to bpf_sock commit
Sharing bpf runtime stats with BPF_ENABLE_STATS commit, commit, commit
Add various observability APIs to bpf_link commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for XDP programs in DEVMAP entries commit, commit, commit, commit, commit
Extending bpf_setsockopt with SO_BINDTODEVICE sockopt commit, commit, commit
Allow TC programs to call BPF_FUNC_skb_change_head, it allows TC eBPF programs to modify and forward (redirect) packets from interfaces without ethernet headers (for example cellular) to interfaces with (for example ethernet/wifi) commit
Allow any port in bpf_bind helper commit, commit, commit, commit
Enable BPF programs to fetch sockets from SOCKMAP/SOCKHASH by doing a map lookup commit, commit, commit
Allow a bunch of existing sk lookup and skb cgroup id helpers, and adds two new bpf_sk_{,ancestor_}cgroup_id helpers to be used in cgroup skb programs commit, commit, commit, commit, commit
bpf_{g,s}etsockopt for struct bpf_sock_addr commit
Adjust uapi for devmap prior to kernel release commit, commit
Enable more helpers for BPF_PROG_TYPE_CGROUP_{DEVICE, SYSCTL, SOCKOPT} commit
Add bpf_ktime_get_boot_ns() as a mirror of bpf_ktime_get_ns() based around CLOCK_BOOTTIME instead of CLOCK_MONOTONIC commit
cgroup: allow multi-attach program to replace itself commit
libbpf: Add API to consume the perf ring buffer content commit
libbpf: Add BTF-defined map-in-map support commit, commit, commit
bpftool: Allow unprivileged users to probe features commit
- Perf:
perf annotate: Add basic support for bpf_image commit
- Add a benchmark for synthesis performance in a new benchmark collection called 'internals'
Add a multi-threaded version of the internals synthesize benchmark commit, commit, commit
perf bench: Add event synthesis benchmark commit, commit, commit, commit
Improvements for kallsyms__parse, which improve perf record startup time commit, commit, commit
Stitch LBR call stack commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf config: Add stat.big-num support commit
Make Perf tool aware of SELinux access control commit, commit, commit
perf list: Add metrics to command line usage commit
Share events between metrics commit, commit, commit, commit, commit, commit, commit
perf probe: Accept the instance number of kretprobe event commit
perf record: Add --num-thread-synthesize option to specify number of threads to run for event synthesis commit
perf record: Implement --switch-output-event commit, commit, commit, commit, commit, commit, commit, commit, commit
perf script: Add flamegraph.py script commit
perf stat: Support overall statistics for interval mode commit, commit, commit, commit, commit
perf tools: Add optional support for libpfm4 commit
perf tools: Support CAP_PERFMON capability commit
tracing: Make synthetic events a separate option commit, commit
tracing: histogram internals doc, hist_debug, and misc commit, commit, commit
7. Virtualization
VMBus channel interrupt reassignment. This feature can be used for load balancing or other purposes (e.g. CPU offlining) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- KVM
Add UAPIs to support migration for VFIO devices commit, commit, commit, commit, commit, commit, commit, commit
vfio-pci: Block user access to disabled device MMIO commit, commit, commit
vDPA: doorbell mapping commit, commit, commit, commit, commit
virtio-mem: Paravirtualized memory hot(un)plug commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
vmxnet3: upgrade to version 4 (with several new features which includes offload support for tunnel packets, support for new commands the driver can issue to emulation, change in descriptor fields, etc) commit, commit, commit, commit
8. Cryptography
9. Security
LSM: Add hook to set*gid syscalls commit
lockdown: Allow unprivileged users to see lockdown status commit
audit: log audit netlink multicast bind and unbind commit
apparmor: provides a /proc/self/attr/apparmor/ subdirectory. Enabling userspace to use the apparmor attributes without having to worry about collisions with selinux or smack on interface files in /proc/<pid>/attr commit
- SELinux
A number of improvements to various SELinux internal data structures to help improve performance commit, commit, commit
Add a new SELinux policy version which allows for a more space efficient way of storing the filename transitions in the binary policy. Given the default Fedora SELinux policy with the unconfined module enabled, this change drops the policy size from ~7.6MB to ~3.3MB. The kernel policy load time dropped as well commit
10. Networking
Make the number generation more random to complicate remote observations that could lead to guessing the network RNG's internal state commit
Add RFC 2863 Oper status testing support. An interface is placed into this state when a self test is performed using ethtool commit, commit, commit
Add infrastructure in ethtool and phylib support for triggering a cable test and reporting the results commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
New sysctl to turn off nexthop API compat mode which is on by default but provides the ability to turn off compatibility mode allowing systems to run entirely with the new routing API if they wish to. Old route API behaviour and support is not modified by this sysctl commit, commit, commit
(FEATURED) IPv6: add MPLS support commit, commit, commit, commit, commit
IPv6: Implement the upcoming rev of RFC4941 (IPv6 temporary addresses) commit
netlink: add infrastructure to expose policies to userspace commit
namespaces: enable to inherit devconf from current namespace. The goal is to be able to inherit the initial devconf parameters from the current netns, ie the netns where this new netns has been created. This is useful in a containers environment where /proc/sys is read only. For example, if a pod is created with specifics devconf parameters and has the capability to create netns, the user expects to get the same parameters than his 'init_net', which is not the real init_net in this case commit
Introduce netns_bpf for BPF programs attached to netnamespace commit
Relax SO_TXTIME CAP_NET_ADMIN check to allow QUIC/UDP applications to use EDT model so that pacing can be offloaded to the kernel (sch_fq) or the NIC commit
TCP: Allow traceroute -Mtcp for unprivileged users commit
IPv6: support RFC 6069 (TCP-LD) commit
Add IPv6 encapsulation support for ESP over UDP and TCP commit, commit
- XDP
Introduce AF_XDP buffer allocation API commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
XDP extend with knowledge of frame size commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
XDP: Add egress_ifindex to xdp context for bpf programs to see the Tx device commit
- bridge
(FEATURED) Add support for Media Redundancy Protocol(MRP), which allows rings of Ethernet switches to overcome any single failure with recovery time much faster than achievable with Spanning Tree Protocol commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow enslaving some DSA master network devices commit, commit, commit, commit
- 802.11
Initial definitions for S1G (802.11ah) commit, commit, commit, commit
Support bigger kek/kck key length commit
Support multicast RX registration commit
Allow SA-QUERY processing in userspace commit
Implement Operating Mode Notification extended NSS support commit
Support control port TX status reporting commit
Add support to configure TID specific Tx rate configuration commit
devlink: Add support for control packet traps commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Packet scheduler
- dsa
erspan: Add type I frame format version 0 commit
- inet_diag
- Netfilter
Support for fdb ECMP nexthop groups commit, commit, commit, commit, commit
qrtr: Add MHI transport layer commit
sit: handle userspace requests for various ioctls commit
- smc
Add event-based framework for LLC msgs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Preparations for SMC-R link failover commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add failover processing commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add and delete link processing commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Extent buffer mapping and port handling commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- TIPC
- Bluetooth
Add BT_MODE socket option commit
Experimental feature support commit, commit, commit, commit, commit, commit, commit
Add framework for Microsoft vendor extension commit
Add support for Read Local Simple Pairing Options commit
Add support for reading security information commit
Always request for user confirmation for Just Works (LE SC) commit
Always request for user confirmation for Just Works commit
Enable LE Enhanced Connection Complete event commit
L2CAP: add support for waiting disconnection resp commit
Add support to notify using SCO air mode commit
debugfs option to unset MITM flag commit
- RDMA
Add Enhanced Connection Established (ECE), a new negotiation scheme introduced in IBTA v1.4 to exchange extra information about nodes capabilities and later negotiate them at the connection establishment phase commit, commit, commit, commit, commit, commit
Enable asynchronous event FD per object commit, commit, commit, commit, commit, commit, commit
Add support for RTRS (RDMA Transport), a reliable high speed transport library which allows for establishing connection between client and server machines via RDMA. RTRS is multipath capable and provides I/O fail-over and load-balancing functionality. RNBD (RDMA Network Block Device) is a pair of kernel modules (client and server) that allow for remote access of a block device on the server over RTRS protocol commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
psample: Add tunnel support commit
11. Architectures
11.1. ARM
- Device Tree updates
The Renesas shmobile platform gains support for "RZ/G1H" (r8a7742), a high-end 32-bit industrial SoC and the iW-RainboW-G21D-Qseven-RZG1H board/SoM commit, commit, commit, commit, commit, commit, commit, commit
Add new SoC Realtek RTD1195, an older Cortex-a7 based relative of the RTD12xx chips commit
Add new SoCs Realtek RTD1395 and RTD1619, three SoCs used in both NAS devices and Android Set-top-box designs, along with the "Horseradish", "Lion Skin" and "Mjolnir" reference platforms; the Mele X1000 and Xnano X5 set-top-boxes and the Banana Pi BPi-M4 single-board computer commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add SoC Rockchips RK3326, low-end 64-bit SoC along with the Odroid-GO Advance game console commit, commit, commit
Add AMLogic S905D based Smartlabs SML-5442TW TV box commit, commit
Add AMLogic S905X3 based ODROID-C4 SBC commit
Add AMLogic S922XH based Beelink GT-King Pro TV box commit, commit, commit, commit
Add Allwinner A20 based Olimex A20-OLinuXino-LIME-eMMC SBC commit, commit
Add Aspeed ast2500 based BMCs in Facebook x86 "Yosemite V2" and YADRO OpenPower P9 "Nicole" commit, commit
Marvell Kirkwood based Check Point L-50 router commit
Mediatek MT8173 based Elm/Hana Chromebook laptops commit
Microchip SAMA5D2 "Industrial Connectivity Platform" reference board commit, commit
NXP i.MX8m based Beacon i.MX8m-Mini SoM development kit commit
Octavo OSDMP15x based Linux Automation MC-1 development board commit, commit
Qualcomm SDM660/SDM630 platform and the Xiaomi Redmi Note 7 (lavender) phone commit, commit, commit
STMicroelectronics STM32MP1 based Stinger96 single-board computer and IoT Box commit, commit
Samsung Exynos4210 based based Samsung Galaxy S2 phone commit, commit
TI am5729 based Beaglebone-AI development board commit
colibri: introduce device trees with UHS-I support commit
The PXA platform drops support for Compulab's pxa2xx boards that had rather unusual flash and PCI drivers but no known users remaining commit
- coresight
tegra: fuse: Add custom SoC attributes commit
qcom: cmd-db: Add debugfs dumping file commit
ti: add k3 platforms chipid module driver commit
perf arm-spe: Add support for synthetic events commit, commit, commit
- ARM64
Add missing 32 bit system registers (ID_PFR2, ID_DFR1 and ID_MMFR5) and add missing features bits on all existing system registers (32 and 64 bit) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
crash_core: Export KERNELPACMASK in vmcoreinfo commit, commit
(FEATURED) Branch Target Identification support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for protecting the kernel and vDSO with BTI including code compiled with the BPF JIT at runtime commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow the compat vdso (32b) to be compiled as either THUMB2 (default) or ARM commit
Support enabling dirty log gradually in small chunks commit
11.2. MIPS
Identify Loongson-2K processors commit
Add page soft dirty tracking commit
ingenic: Add support for GCW Zero prototype commit
CPUCFG emulation future-proofing & HWCAP addition commit, commit, commit
Loongson-3: Add some unaligned instructions emulation commit
Loongson: Add support for perf tool commit
perf: Add hardware perf events support for new Loongson-3 commit
Prepare MIPS-arch code for Baikal-T1 SoC support commit, commit, commit, commit, commit, commit, commit, commit, commit
KVM: Add Loongson-3 support (Host Side) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Remove support for LASAT commit
Remove PMC MSP71xx platform commit
Remove NEC MARKEINS/EMMA commit
11.3. X86
Fixes for the new SRBDS security issue. SRBDS is an MDS-like speculative side channel that can leak bits from the random number generator (RNG) across cores and threads. New microcode serializes the processor access during the execution of RDRAND and RDSEED. This ensures that the shared buffer is overwritten before it is released for reuse. This is equivalent to a full bus lock, which means that many threads running the RNG instructions in parallel have the same effect as the same amount of threads issuing a locked instruction targeting an address which requires locking of two cachelines at once commit, commit, commit, commit
Add an initrdmem= option to specify initrd physical address commit
- platform
Add Elkhart Lake SCU/PMC support commit
Add Slim Bootloader firmware update signaling driver commit
ISST: Add new PCI device ids commit
thinkpad_acpi: Add support for dual fan control commit
touchscreen_dmi: Add info for the MP-man MPWIN895CL tablet commit
touchscreen_dmi: Add info for the ONDA V891 v5 tablet commit
touchscreen_dmi: Add info for the Trekstor Yourbook C11B commit
touchscreen_dmi: Add touchscreen info for techBite Arc 11.6 commit
touchscreen_dmi: add Vinga J116 touchscreen commit
Remove CONFIG_DOUBLEFAULT on 32 bits commit
Drop deprecated DISCONTIGMEM support for 32-bit commit
amd_nb: Add AMD family 17h model 60h PCI IDs commit
Introduce TPAUSE instruction that suspends execution in a lower power state until the TSC (Time Stamp Counter) exceeds a certain value commit, commit, commit
binfmt_elf: Update READ_IMPLIES_EXEC logic for modern CPUs commit, commit, commit, commit, commit, commit
Support XSAVES supervisor states in preparation for new features that will make use of supervisor xstates commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mce: Add mce=print_all option commit
resctrl: Support wider MBM counters commit, commit, commit, commit, commit, commit, commit
split_lock: Add Icelake microserver and Tigerlake CPU models commit
tsc: Add tsc_early_khz command line parameter commit
- intel_th
iommu/vt-d: Add page request draining support commit, commit, commit, commit, commit
- perf
rapl: Add AMD Fam17h RAPL support commit
rapl: Add Ice Lake RAPL support commit
perf: Add hardware performance events support for Zhaoxin CPU commit
perf intel-pt: Sampling improvements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf intel-pt: Add support for synthesizing branch stacks for regular events commit, commit, commit, commit, commit, commit, commit, commit, commit
powercap/intel_rapl: add support for ElkhartLake commit
efi: Support builtin command line commit
- KVM
VMX: enable X86_FEATURE_WAITPKG in KVM capabilities commit
Improve latency for single target IPI fastpath commit
nSVM: migration 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, commit, commit, commit
Add module param to force TLB flush on root reuse commit
Support full width counting commit
Interrupt-based mechanism for async_pf 'page present' notifications commit, commit, commit, commit, commit, commit, commit
Nested Shared Virtual Address (SVA) VT-d support: Shared virtual address (SVA), a.k.a, Shared virtual memory (SVM) on Intel platforms allow address space sharing between device DMA and applications. SVA can reduce programming complexity and enhance security. This enables SVA virtualization, i.e. enable use of SVA within a guest user application commit, commit, commit, commit, commit, commit, commit, commit
hyper-v: add support for synthetic debugger commit, commit, commit, commit, commit, commit, commit, commit
11.4. POWERPC
crypto/nx: Enable GZIP engine and provide userpace API commit, commit, commit, commit, commit, commit, commit, commit, commit
powerpc/papr_scm: Add support for reporting nvdimm health commit, commit, commit, commit, commit, commit
Initial Prefixed Instruction support: A future revision of the ISA will introduce prefixed instructions. A prefixed instruction is composed of a 4-byte prefix followed by a 4-byte suffix. This series enables prefixed instructions and extends the instruction emulation to support them commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
powerpc/32: Disable KASAN with pages bigger than 16k commit
Modernise powerpc 40x commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Use hugepages to map kernel mem on 8xx commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Base support for POWER10 commit, commit, commit, commit, commit, commit
hv-24x7: Expose chip/sockets info to add json file metric support for the hv_24x7 socket/chip level events commit, commit, commit, commit, commit
Enables memory hot-remove after reboot on pseries guests commit
Track and expose idle PURR and SPURR ticks commit, commit, commit, commit, commit
xmon: Support 2nd DAWR commit
Add stress_slb kernel boot option to increase SLB faults and stress test some code commit
11.5. RISCV
Add KGDB and KDB support commit, commit, commit, commit, commit
Allow device trees to be built into the kernel commit
K210: Add a built-in device tree commit
Use 16KB kernel stack on 64-bit commit
11.6. S390
Expose new port attribute for PCIe functions commit
Add pci=norid} when on, disallow the use a new firmware field, RID commit
qeth: add debugfs file for local IP addresses commit
vfio-ccw: Channel Path Handling commit, commit, commit, commit, commit, commit, commit, commit
vfio-ccw: Enable transparent CCW IPL from DASD commit
11.7. ARC
11.8. M68K
mcf5441x: add support for esdhc mmc controller commit
11.9. SH
Remove sh5 support commit
11.10. PARISC
Add sysctl file interface panic_on_stackoverflow commit
12. Drivers
12.1. Graphics
Managed DRM resources, a little internal framework for managed resources tied to the drm_device lifetime commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Intel
Global sseu pinning commit
Per-engine default property values in sysfs commit
- Tigerlake GEN12 enabled.
Cherryview full-ppgtt support commit
Add new PCI IDs to TGL commit
Add YUV444 packed format support for skl+ commit
Port sync for skl+ commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add debugfs entry for DP phy compliance commit
Add connector debugfs for all connectors commit
Add i915_lpsp_capability debugfs commit
Add i915_lpsp_status debugfs attribute commit
Drop stage_pool debugfs commit
- amdgpu
Introduce secure buffer object support (trusted memory zone) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support FP16 pixel format commit
Introduces ACQUIRE_MEM packet submission at the begining of each gfx IB if requested by user mode client. This is helpful in solving issues with cache coherency during amdgpu_test and Vulkan CTS tests commit, commit, commit, commit
FRU chip access support commit
VCN DPG (powergating) enablement commit
Add autodump debugfs node for gpu reset commit
Add HDCP caps debugfs commit
p2p dma-buf support commit
gfx10 soft recovery commit
- amdkfd
- nouveau
- adv7511
HDMI SPDIF support commit
- lima
- MSM
- vkms
Enable cursor by default commit
- rockchip
Add support for afbc commit
- bridge
- panel
Add ASUS TM5P5 NT35596 panel driver commit
Add Starry KR070PE2T commit
Add panel driver for Leadtek LTK050H3146W commit
Add support for rm69299 visionox panel commit
Support for boe,tv105wum-nw0 dsi video mode panel commit
nt39016: Add support for 50 Hz refresh rate commit
nt39016: Add support for multiple modes commit
simple: Add BOE NV133FHM-N61 commit
simple: Add BOE NV133FHM-N62 commit
simple: Add Ivo M133NWF4 R0 commit
simple: Add support for AUO G121EAN01.4 panel commit
simple: Add support for AUO G156XTN01.0 panel commit
simple: Add support for AUO G190EAN01 panel commit
backlight: qcom-wled: Add support for WLED5 peripheral that is present on PM8150L PMICs commit
12.2. Power Management
ACPI: Add support for DPTF (Dynamic Platform and Thermal Framework) battery participant device support commit, commit
cpuidle: Make cpuidle governor switchable to be the default behaviour commit, commit, commit, commit, commit, commit
Improve SBS battery support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- thermal
12.3. Storage
nvme-fc/nvmet-fc: Add FC-NVME-2 disconnect association 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
nvme-rdma/nvmet-rdma: Add metadata/T10-PI support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- SCSI
dh: Add Fujitsu device to devinfo and dh lists commit
qedi: Add modules param to enable qed iSCSI debug commit
scsi_debug: random doublestore verify commit, commit, commit, commit, commit, commit, commit, commit
scsi_debug: Add ZBC support commit, commit, commit, commit, commit, commit, commit
sd: Add zoned capabilities device attribute commit
Introduce Zone Append for writing to zoned block devices commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ufs: Add write booster feature support commit, commit, commit
ufs: Allow WriteBooster on UFS 2.2 devices commit
ufs: support LU Dedicated buffer mode for WriteBooster commit, commit, commit, commit, commit, commit, commit, commit
hisi_sas: Add SAS_RAS_INTR0 to debugfs register name list commit
12.4. Drivers in the Staging area
media: imx: imx7-mipi-csis: Add missing RAW formats commit, add support for 10-bit YUV 4:2:2 commit
atomisp: add support for different PMIC configurations commit
tegra-video: Add Tegra210 Video input driver commit
wfx: allow to join IBSS networks commit
wfx: add support for hardware revision 2 and further commit
12.5. Networking
- Bluetooth
btbcm: Add 2 missing models to subver tables commit
btbcm: Added 003.006.007, changed 001.003.015 commit
btrtl: Add support for RTL8761B commit
btusb: Add support for Intel Bluetooth Device Typhoon Peak (8087:0032) commit
Add BTUSB and quirk support for the driver to confirm that the reported LE_states can be trusted commit, commit, commit
btusb: Enable MSFT extension for Intel ThunderPeak devices commit
hci_qca: Add support for Qualcomm Bluetooth SoC QCA6390 commit
hci_qca: Enable WBS support for wcn3991 commit
Infiniband: hfi1: Accelerated IP using the rdma netdev mechanism commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- RDMA
- ath10k
- ath11k
- atlantic
ax88179_178a: Implement ethtool_ops set_eeprom commit
bcmgenet: add support for Wake on Filter commit, commit, commit, commit, commit, commit, commit
brcmfmac: adds the second p2p connection support commit, commit
carl9170: remove P2P_GO support commit
cxgb4: Improve and tune TC-MQPRIO offload commit, commit, commit
- dpaa2-eth:
- dsa
felix: tc taprio and CBS offload support commit, commit, commit
mv88e6xxx: 88e6390 10G serdes support commit
Traffic support for dsa_8021q in vlan_filtering=1 mode commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
tc-gate offload for SJA1105 DSA switch commit, commit, commit, commit, commit, commit
sja1105: offload the Credit-Based Shaper qdisc commit
- ena
- enetc:
dwmac: add ethernet glue logic for NXP imx8 chip commit
- hinic
- hns3
- ice
- igc
Add ECN support for TSO commit
Add partial generic segmentation offload (GSO partial) support commit
Enable NETIF_F_HW_TC flag by default commit
Add Receive Error Counter commit
Add new device IDs for i225 part commit
Enable NFC rules based on source MAC address commit, commit, commit, commit
Add support to eeprom, registers and link self-tests commit
ionic: add more ethtool stats commit
- iwlwifi
Add ACPI DSM support commit
Add new cards for AX family commit
Add support for range request command version 9 commit and version 10 commit
Support version 9 of WOWLAN_GET_STATUS notification commit
Enable A-MSDU in low latency mode commit
Remove iwlmvm's tfd_q_hang_detect module parameter commit
Stop supporting swcrypto and bt_coex_active module parameters commit
pcie: add n_window/ampdu to tx_queue debugfs commit
Remove fw_monitor module parameter commit
ks8851: Implement Parallel bus operations commit
lan743x: Added fixed link and RGMII support commit
- mac80211_hwsim
- mlx5
Driver part of the RDMA-CM ECE series commit, commit, commit, commit, commit, commit, commit, commit
Add support for drop action in DV steering commit
Add steering support for default miss commit, commit, commit, commit
Support TX port affinity for VF drivers in LAG mode commit
Add support for COPY steering action commit
Add support for RDMA TX FT headers modifying commit
Add support to get xmit slave commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Set flow_label and RoCEv2 UDP source port for datagram QP commit, commit, commit, commit, commit, commit, commit
Introduce IPsec Connect-X offload hardware bits and structures commit
Introduce TLS RX offload hardware bits commit
- mlx5e
New mlx5 kconfig flag for TC support commit, commit, commit, commit
Support for MPLS over UPD encap and decap TC offloads commit, commit, commit, commit
Support for self looback to allow communication between ipoib pkey child interfaces on the same host commit, commit
Support VM traffics failover with bonded VF representors and e-switch egress/ingress ACLs commit, commit, commit, commit, commit, commit, commit
- mscc:
- mt76
Add MediaTek IEEE 802.11ax devices - MT7915E commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enable TDLS support commit
Enable p2p support commit
Introduce WoW support to mt7663 driver commit, commit, commit, commit, commit, commit, commit
hw scan, scheduled scan and noise floor estimation commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mt7615: add more useful Tx mib counters commit
mt7615: add passive mode for hw scan commit
mt7615: add support for MT7611N commit
mt7615: disable aspm by default commit
mt7615: enable MSI by default commit
mt7615: enable scs for mt7663 driver commit
mt7663: add support to sched scan with randomise addr commit
mt7663: add the possibility to load firmware v2 commit
mt7663u: enable AirTimeFairness commit
mt76x02u: Add support for newer versions of the XBox One wifi adapter commit
mt76x0: pci: add mt7610 PCI ID commit
mt76x2u: introduce Mercury UD13 support commit
MT7915: add TxBF support commit, commit, commit, commit, commit, commit, commit
Add rx queues info to mt76 debugfs commit
mt7915: add spatial reuse support commit
Add the driver for the MediaTek STAR Ethernet MAC currently used on the MT8* SoC family commit
mvneta: Add 2500BaseX support for SoCs without comphy commit
mwifiex: Add support for NL80211_ATTR_MAX_AP_ASSOC_STA commit
p54usb: add AirVasT USB stick device-id commit
- PHY
Add Broadcom BCM54140 support commit
at803x: add cable diagnostics support commit
at803x: add cable diagnostics support for ATH9331 and ATH8032 commit
at803x: add downshift support commit
at803x: add support for AR8032 PHY commit
broadcom: cable tester support commit, commit, commit, commit
bcm54140: add hwmon support commit
broadcom: Add support for BCM53125 internal PHYs commit
broadcom: add support for BCM54811 PHY commit
Raw PHY TDR data commit, commit, commit, commit, commit, commit, commit
micrel: add phy-mode support for the KSZ9031 PHY commit
tja11xx: add cable-test support commit
tja11xx: add initial TJA1102 support commit
Provide support for PHY master/slave configuration commit, commit
ptp: Add adjust_phase to ptp_clock_caps capability commit
qed/qede: critical hw error handling commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
qed*: Add support for pcie advanced error recovery commit, commit
qed: Add EDPM mode type for user-fw compatibility commit
qmi_wwan: add support for Quectel EG95 LTE modem commit
rt2800: enable MFP support unconditionally commit
- rtw88
- stmmac
ti: k3: introduce common platform time sync driver - cpts commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
wlcore: Add support for IGTK key commit
12.6. Audio
fireface: add support for RME FireFace 802 commit
fireface: add support for RME Fireface UFX commit
firewire-motu: add support for MOTU UltraLite-mk3 (FireWire only model) commit
- hda
realtek: Add LED class support for micmute LED commit
realtek: Enable headset mic of Acer TravelMate B311R-31 with ALC256 commit
realtek: enable headset mic of ASUS ROG Zephyrus G14(G401) series with ALC289 commit
Add ElkhartLake HDMI codec vid commit
Intel: add missing PCI IDs for ICL-H, TGL-H and EKL commit
Add autodetection for SoundWire commit
Add sienna_cichlid audio asic id for sienna_cichlid up commit
Adds support for polling and non-blocking read for hwdep interface commit, commit
usb-audio: Add duplex sound support for USB devices using implicit feedback commit
usb-audio: Add Pioneer DJ DJM-900NXS2 support commit
usb-audio: RME Babyface Pro mixer patch commit
- ASoC
Add initial ZL38060 driver commit
Intel: Skylake: Automatic DMIC format configuration according to information from NHLT commit
Intel: boards: sof-wm8804: support for Hifiberry Digiplus boards commit
Intel: boards: support Elkhart Lake with rt5660 commit
Add Renoir ACP driver commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
da7213: Add regulator support commit
max98390: Added Amplifier Driver commit
max9867: add digital microphone controls commit
max9867: add mono playback switch commit
mmp-sspa: Make sound work on DT-based MMP2 machines commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rt1016: Add the rt1016 support commit
snd-sof-intel-hda-common: add hda_model parameter and pass it to HDA codec driver commit
tlv320adcx140: Add controls for PDM clk commit
tlv320adcx140: Add support for configuring GPI pins commit
nau8810: add AUX related dapm widgets and routes commit
- SOF
Add support for SOF on i.MX8M commit, commit, commit, commit, commit
Intel: add PCI ID for CometLake-S commit
Intel: add PCI ID for ElkhartLake commit
Intel: add PCI IDs for ICL-H and TGL-H commit
Support for an extended firmware manifest, which helps retrieve capabilities directly from the firmware file instead of the current IPC mechanism 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 probe support extend data commit
soundwire: bus_type: add sdw_master_device support commit, commit, commit, commit, commit
ac97: Remove sound driver for ancient platform commit
12.7. Tablets, touch screens, keyboards, mouses
Add driver for the Cypress CY8CTMA140 touchscreen commit
Add support for Azoteq IQS269A commit
elan_i2c: add more hardware ID for Lenovo laptops commit
i8042: add Lenovo XiaoXin Air 12 to i8042 nomux list commit
mms114: add extra compatible for mms345l commit
synaptics: enable InterTouch for ThinkPad X1E 1st gen commit
Delete unused GP2AP002A00F driver commit
Remove msm-vibrator driver commit
- HID
12.8. TV tuners, webcams, video capturers
Add V4L2_CAP_IO_MC to indicate that input and output are controlled by the Media Controller instead of V4L2 commit, commit, commit, commit, commit
Add support for the CODA960 JPEG decoder to the coda-vpu driver commit, commit
Report camera properties commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
media: rockchip: Add the rkvdec driver commit, commit, commit, commit
coda: add RC enable controls commit
coda: jpeg: support optimized huffman tables commit
si2157: Analog tuning and optimizations commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dvb-usb: Add Cinergy S2 PCIe Dual Port support commit
i2c: Add ov2740 image sensor driver commit
ov8856: Add devicetree support commit
vimc: Make use of V4L2_CAP_IO_MC commit
vimc: Add support for {RGB,BGR,GBR}888 bus formats on debayer source pad commit, commit, commit
sh_veu: Remove driver commit
12.9. Universal Serial Bus
roles: Enable role-switch uevent reporting commit
chipidea: Enable user-space triggered role-switching commit
chipidea: introduce imx7d USB charger detection commit
chipidea: udc: add software sg list support commit
dwc3: gadget: Handle streams commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dwc3: meson: add OTG support for GXL/GXM commit, commit, commit, commit, commit, commit, commit, commit
dwc3: Add support for DWC_usb32 IP commit
dwc3: pci: add support for the Intel Jasper Lake commit
dwc3: pci: add support for the Intel Tiger Lake PCH -H variant commit
gadget: tegra-xudc: Add Tegra194 support commit
Add XHCI, EHCI and OHCI support for Broadcom STB SoS's commit, commit, commit, commit
renesas-xhci: Add the renesas xhci driver commit
serial: ch341: add new Product ID for CH340 commit
serial: cypress_m8: enable Simply Automated UPB PIM commit
serial: option: add GosunCn GM500 series commit
serial: option: add Quectel EG95 LTE modem commit
serial: option: add Telit LE910C1-EUX compositions commit
serial: qcserial: add DW5816e QDL support commit
typec: mux: intel_pmc_mux: Support for static SBU/HSL orientation commit
xhci: Add support for Renesas controller with memory commit
12.10. Serial Peripheral Interface (SPI)
bcm-qspi: add support for MSPI sys clk 108Mhz commit
dw: Add Elkhart Lake PSE DMA support commit
dw: Add support for DesignWare DWC_ssi commit
dw: Add support for Intel Keem Bay SPI commit
dw-apb-ssi: Add Intel Keem Bay support commit
pxa2xx: Add support for Intel Tiger Lake PCH-H commit
spi-amd: Add AMD SPI controller driver support commit
spi-rockchip: add support for spi slave mode commit
spidev: Add support for Octal mode data transfers commit
stm32-qspi: Add pm_runtime support commit
12.11. Real Time Clock (RTC)
12.12. Pin Controllers (pinctrl)
intel: Add Intel Jasper Lake pin controller support commit
qcom: Add sm8250 pinctrl driver commit
sh-pfc: r8a7790: Add r8a7742 PFC support commit
12.13. Multi Media Card (MMC)
Export device/vendor ids from Common CIS for SDIO cards commit
Expose info about enhanced rpmb support commit
host: add Coldfire esdhc support commit
host: meson-mx-sdhc: new driver for the Amlogic Meson SDHC host commit
sdhci: arasan: Add support for Versal Tap Delays commit
sdhci-esdhc-imx: Add HS400 support for i.MX6SLL commit
sdhci-of-arasan: Add support for Intel Keem Bay commit
sdhci-of-dwcmshc: add suspend/resume support commit
sdhci-pci-gli: Add Genesys Logic GL9763E support commit
12.14. Memory Technology Devices (MTD)
MLC in SLC mode commit, commit, commit, commit, commit, commit, commit, commit
rawnand: Remove the cmx270 NAND controller driver commit
rawnand: arasan: Add new Arasan NAND controller commit
rawnand: arasan: Support the hardware BCH ECC engine commit
rawnand: brcmnand: support v2.1-v2.2 controllers commit
spi-nor: Add support for Cypress cy15x104q commit
spi-nor: Add support for s25fs128s1 commit
spi-nor: macronix: Add support for mx25l51245g commit
spi-nor: macronix: Add support for mx25u51245g commit
spi-nor: spansion: Enable dual and quad read for s25fl256s0 commit
12.15. Industrial I/O (iio)
Add SEMTECH SX9310/9311 sensor driver commit
accel: Add bma150 family support to bma180 commit, commit, commit, commit, commit, commit, commit
accel: st_sensors: add support for LIS2HH12 commit
adi-axi-adc,ad9647: Add support for AD9467 ADC commit, commit, commit, commit, commit, commit, commit, commit
adc: Add MAX1241 driver commit
adc: Add scaling support to exynos adc driver commit
adc: ad7476: Add AD7091 support commit
adc: mp2629: Add support for mp2629 ADC driver commit
bmg160: Add support for BMI088 chip commit
chemical: Add support for external Reset and Wakeup in CCS811 commit
chemical: add atlas-ezo-sensor initial support commit
chemical: atlas-sensor: add RTD-SM module support commit
imu: Add support for adis16475 commit
imu: inv_mpu6050: add debugfs register r/w interface commit
imu: st_lsm6dsx: Add sensor hub device LIS3MDL commit
light: cm32181: Add support for ACPI enumeration commit
light: cm32181: Add support for the CM3218 commit
magnetometer: ak8974: add Alps hscdtd008a commit
proximity: Add driver support for vcnl3020 proximity sensor commit
vcnl: Add interrupts support for VCNL4010/20 commit, commit, commit, commit, commit
12.16. Multi Function Devices (MFD)
Add Gateworks System Controller core driver commit
Add support for PMIC MT6360 commit
mp2629: Add support for mps battery charger commit
12.17. Pulse-Width Modulation (PWM)
Add support for Azoteq IQS620A PWM generator commit
jz4740: Add support for the JZ4725B commit
sun4i: Support direct clock output on Allwinner A64 commit
tegra: Support dynamic clock frequency configuration commit
12.18. Inter-Integrated Circuit (I2C + I3C)
Add Qualcomm CCI I2C driver commit
cadence: Added slave support commit
designware: Add Baikal-T1 System I2C support commit
designware: Allow slave mode for PCI enumerated devices commit
iproc: add support for SMBUS quick cmd commit
mediatek: Add i2c ac-timing adjust support commit
npcm7xx: Add Nuvoton NPCM I2C controller driver commit
npcm7xx: Add support for slave mode for Nuvoton commit
pxa: implement generic i2c bus recovery commit
slave-eeprom: add support for 24c512 EEPROMs commit
tegra: Add support for the VI I2C on Tegra210 commit
12.19. Hardware monitoring (hwmon)
Add amd_energy driver to report core and package energy sensors, based on RAPL MSR for AMD family 17h and above CPUs commit, commit
ina2xx: Implement alert functions commit
k10temp: Add AMD family 17h model 60h PCI match commit
lm70: Add support for ACPI commit
lm90: Add max6654 support to lm90 driver commit
nct7904: Add watchdog function commit
pmbus: Driver for Maxim MAX16601 commit
Add Gateworks System Controller support commit
hwmon: Add Baikal-T1 SoC Process, Voltage and Temp sensor support commit, commit
Add Baikal-T1 PVT sensor driver commit
12.20. General Purpose I/O (gpio)
12.21. Leds
Add aw2013 driver commit
Add sgm3140 driver commit
ariel: Add driver for status LEDs on Dell Wyse 3020 commit
12.22. DMA engines
idxd: export hw version through sysfs commit
12.23. Cryptography hardware acceleration
chcr: support for 48 byte key_len in aes-xts commit
chtls: IPv6 support for inline TLS commit
crypto/nx: Enable GZIP engine and provide userpace API commit, commit, commit, commit, commit, commit, commit
ccp: Add support for SEV-ES to the PSP driver commit
hisilicon: add debugfs for DFX commit, commit, commit, commit, commit, commit, commit
hisilicon: add controller reset support commit, commit, commit, commit, commit
hisilicon: add vfs_num module parameter for hpre/sec commit
12.24. PCI
Add Loongson PCI Controller support commit
Add endpoint driver for R-Car PCIe controller commit, commit, commit, commit, commit, commit, commit, commit
P2PDMA: Add AMD Zen Raven and Renoir Root Ports to whitelist commit
aardvark: Add PHY support commit
rcar: Add endpoint mode support commit
rcar: Add suspend/resume commit
uniphier: Add Socionext UniPhier Pro5 PCIe endpoint controller driver commit
12.25. Non-Transparent Bridge (NTB)
intel: Add Icelake (gen4) support for Intel NTB commit
12.26. Thunderbolt
Add support for Intel Tiger Lake commit
12.27. Clock
Add Baikal-T1 SoC Clock Control Unit support commit, commit, commit, commit
Ingenic: Add CGU driver for X1830 commit
clk-si5341: Add support for the Si5345 series commit
intel: Add CGU clock driver for a new SoC commit
mediatek: Add MT6765 clock support commit
mmp2: Enable Audio and GPU on MMP2 and MMP3 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mmp2: Add audio clock controller driver commit
- Add the missing clock drivers and dts nodes to enable the GPU on both SM8150 and SM8250
qcom: gcc-msm8939: Add MSM8939 Generic Clock Controller commit
qcom: gcc: Add GPU and NPU clocks for SM8150 commit
qcom: gcc: Add missing UFS clocks for SM8150 commit
renesas: cpg-mssr: Add R8A7742 support commit
socfpga: agilex: add clock driver for the Agilex platform commit
tegra: Add custom CCLK implementation commit
tegra: Implement Tegra210 EMC clock commit
vc5: Add support for IDT VersaClock 5P49V6965 commit
timer-ti-dm: Add clockevent and clocksource support commit
12.28. PHY ("physical layer" framework)
Add driver for Qualcomm IPQ40xx USB PHY commit
cadence: salvo: add salvo phy driver commit
intel: Add driver support for ComboPhy commit
qcom-qmp: Add QMP V3 USB3 PHY support for SC7180 commit
qcom-qmp: Add SM8150 QMP USB3 PHY support commit
qcom-snps: Add SNPS USB PHY driver for QCOM based SOCs commit
ti: am654: add support for USB super-speed commit, show up in regmap debugfs commit
12.29. EDAC (Error Detection And Correction)
amd64: Add AMD family 17h model 60h PCI IDs commit
12.30. 1-Wire (W1)
- w1_therm
12.31. Firmware
xilinx: Add xilinx specific sysfs interface commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
SCMI Notifications Core Support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
imx: support SCU channel type commit, commit, commit, commit
12.32. Various
- habanalabs
Add GAUDI ASIC support. Similar to GOYA, GAUDI includes a set of eight TPC cores, a GEMM engine and DMA channels to move data between host and different memories of the ASIC. Each engine has a hardware queue manager (QMAN) attached to it, which exposes 4 streams to allow complex programs with control flows (in GOYA you had 1 stream per QMAN) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add INFO IOCTL opcode for time sync information commit
Support hwmon_reset_history attribute commit
Add signal/wait to CS IOCTL operations commit, commit, commit, commit
Enable trace data compression (profiler) commit
Add Baikal-T1 SoC APB/AXI/L2 drivers commit, commit, commit, commit, commit
bus: Add driver for Integrator/AP logic modules commit
fpga: dfl: fme: add performance reporting support commit, commit
fpga: dfl: support multiple opens on feature device node commit
interconnect: Add imx support via devfreq commit, commit, commit, commit, commit
irqchip: Three Loongson irqchip support commit, commit, commit, commit, commit, commit
iommu: Add Allwinner H6 IOMMU driver commit
irqchip: RISC-V per-HART local interrupt controller driver commit
mailbox: Add support for Qualcomm IPCC commit
mailbox: imx: Support runtime PM commit
mailbox: qcom: Add ipq6018 apcs compatible commit
mailbox: sprd: Add Spreadtrum mailbox driver commit
mei: me: add tiger lake point device ids for H platforms commit
mfd: Add support for the MediaTek MT6358 PMIC commit
misc: pci_endpoint_test: Add Device ID for RZ/G2E PCIe controller commit
mptcp: add new sock flag to deal with join subflows commit
of: reserved-memory: Support lookup of regions by name commit
of: reserved-memory: Support multiple regions per device commit
opp: Add support for parsing interconnect bandwidth commit
opp: Expose bandwidth information via debugfs commit
pinctrl: imx: Add imx8dxl driver commit
ptp: Add adjphase function to support phase offset control commit
remoteproc: qcom: Add callbacks for remoteproc events commit, commit, commit
remoteproc: Add PAS and MSA based Modem support commit, commit, commit, commit, commit, commit, commit
remoteproc: Add support for runtime PM commit
remoteproc: ingenic: Added remoteproc driver commit
remoteproc: qcom: pas: Add SM8250 PAS remoteprocs commit
reset: hi6220: Add support for AO reset controller commit
reset: imx7: Add support for i.MX8MP SoC commit
scs: Add support for Clang's Shadow Call Stack (SCS) commit
spi: spidev_test: Add support for Octal mode data transfers commit
- tee
13. List of Pull Requests