82338
Comment:
|
1055
Linux 5.12 released
|
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]. If you're going to add something here look first at LinuxChangesRules! | #pragma keywords Linux, Kernel, Operating System, Linus Torvalds, Open Source, drivers, filesystems, network, memory management, scheduler, preemption, locking #pragma description Summary of the changes and new features merged in the Linux Kernel during the 2.6.x and 3.x development Changes done in each Linux kernel release. Other places to get news about the Linux kernel are [[http://lwn.net/Kernel/|LWN kernel status]] or the Linux Kernel mailing list (there is a web interface in [[http://www.lkml.org|www.lkml.org]] or [[https://lore.kernel.org/lkml/|lore.kernel.org/lkml]]). The lore.kernel.org/lkml/ archive is also available via NTTP if you prefer to use a newsreader: use `nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel` for that. List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules! |
Line 3: | Line 5: |
'''Older releases''' * Previous stable release [http://wiki.kernelnewbies.org/Linux_2_6_17 Linux 2.6.17], next release: [http://wiki.kernelnewbies.org/Linux_2_6_19 2.6.19] (still not released); see Linux26Changes for other versions. |
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.18''' [[TableOfContents()]] == Short overview (for new sites) == This release includes lightweight user space priority inheritance support (http://lwn.net/Articles/178253/), a "lock validator" debugging tool (http://lwn.net/Articles/185666/), a new power saving policy for multicore systems, SMPnice (http://lwn.net/Articles/186438/), a much improved SATA layer (http://lwn.net/Articles/183734/), swapless page migration (http://lwn.net/Articles/160201/), per-zone VM counters, per-task delay accounting, a new per-packet access control for SELinux called 'secmark' (http://james-morris.livejournal.com/11010.html), randomized i386 vDSO, a few new drivers, additional device support for many existing drivers, many bugfixes and many other small improvements. == Important things (AKA: ''the cool stuff'') == === Lightweight user space priority inheritance (PI) === PI is a critical feature for RT-ish apps. Currently (without PI), if a high-prio and a low-prio task shares a lock, even if all critical sections are coded carefully to be deterministic (i.e. all critical sections are short in duration and only execute a limited number of instructions), the kernel cannot guarantee any deterministic execution of the high-prio task: any medium-priority task could preempt the low-prio task while it holds the shared lock and executes the critical section, and could delay it indefinitely. User-space PI helps to achieving/improving determinism for user-space applications in those cases. Detailed [http://lwn.net/Articles/178253/ LWN article], glibc patch can be found [http://people.redhat.com/mingo/PI-futex-patches/ here], justification for this feature and design documentation: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6537be9324c67b41f6d98f5a60a1bd5a8e02861 (commit)]; code: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e2970f2fb6950183a34e8545faa093eb49d186e1 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b29739f902ee76a05493fb7d2303490fc75364f4 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=23f78d4a03c53cbd75d87a795378ea540aa08c86 (commit)] === Lockdep, a kernel lock validator === Linux's locking style is know for being ''simple'' compared with other Unix SMP-friendly derivatives. Still, locking is a neccesary evil that is hard to get right for most of normal programmers (most of us), and locking bugs can be very difficult to find, specially in drivers, that don't get the solid review that core kernel has. The kernel lock validator is a debugging tool that tries to makes such things easier, it's [http://lwn.net/Articles/185666/ (LWN article)] ''a complex infrastructure to the kernel which can then be used to prove that none of the locking patterns observed in a running system could ever deadlock the kernel''. If you want to help to make Linux stabler, give it a run and report the backtraces printed on dmesg at linux-kernel@vger.kernel.org or http://bugzilla.kernel.org. Design documentation: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f3e97da38e1d69d24195d76f96b912323f5ee30c (commit)], code: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fbb9ce9530fd9b66096d5187fa6a115d16d9746c (commit)] === Process scheduler === New power saving policy:: In machines with several multi core/smt "packages" (which will become increasingly common in the future), the power consumption can be improved by letting some packages idle while others do all the work, instead of spreading the tasks over all CPUs, so a optional power saving policy has been developed to make this possible. When this power savings policy is enabled - set to 1 the sysfs entry 'sched_mc_power_savings' or 'sched_smt_power_savings' placed under /sys/devices/system/cpu/cpuX/ when enabled CONFIG_SCHED_MC / CONFIG_SCHED_SMT - and under light load conditions, the scheduler will minimize the physical packages/cpu cores carrying the load and thus conserving power, but impacting the performance depending on the workload characteristics (when there's lot of work to do all CPUs will be used, to completely disable individual CPUs use the already available CPU hot plugging feature by writing 0 to the "online" file in that sysfs directory). For more details on the effect of this policy read the "Chip Multi Processing(CMP) aware Linux Kernel Scheduler" talk from [http://www.linuxsymposium.org/2005/linuxsymposium_procv2.pdf the OLS 2005] (page 201 and onwards) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5c45bf279d378d436ce45825c0f136696c7b6109 (commit)] SMPnice:: (A.K.A. 'take priority into account when balancing processes between CPUs'): One of the design principles of the new 2.6 scheduler (aka, "Ingo's O(1) scheduler") was the idea of having a separate run queue of processes for each CPU present on the system, instead of a single run queue for all CPUs, for scalability reasons. Periodically, the scheduler would balance the per-cpu run queues to distribute all the jobs and keep all the CPUs busy. However, priority levels were not taken into account at the time of doing this balance and it was possible recreate scenarios where the kernel was being unfair, when mixing processes with different priorities. "SMPnice" is a implementation of a solution for this problem [http://lwn.net/Articles/186438/ (LWN article)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2dd73a4f09beacadde827a032cf15fd8b1fa3d48 (commit)] === Memory management === Swapless page migration:: Being able to migrate pyshical pages between nodes in NUMA-like systems - to improve the [http://en.wikipedia.org/wiki/Locality_of_reference locality of reference] - was introduced in [http://wiki.kernelnewbies.org/Linux_2_6_16 Linux 2.6.16], but it didn't use a very clean method: pages were swapped out in purpose, and then the next time those pages would be faulted, they'd be swapped in to the node where you wanted to move those pages instead of the old one. This trick was used but now the feature has been completed with "direct page migration": Now pages are moved directly from one node to another, without using swap. This feature includes a new system call which allows to move individual pages of a process from one node to another: ''long move_pages(pid, number_of_pages_to_move, addresses_of_pages[], nodes[] or NULL, status[],lags)'' - the swap-based migration had already added a migrate_pages() syscall and a MPOL_MF_MOVE option to the set_mempolicy() syscall). For full details, read this [http://lwn.net/Articles/160201/ (LWN article)]. Code: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0697212a411c1dae03c27845f2de2f3adb32c331 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6c5240ae7f48c83fcaa8e24fa63e7eb09aba5651 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d75a0fcda2cfc71b50e16dc89e0c32c57d427e85 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=04e62a29bf157ce1edd168f2b71b533c80d13628 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8d3c138b77f195ca0eee6fb639ae73f5ea9edb6b (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=742755a1d8ce2b548428f7aacf1758b4bba50080 (commit)] Per-zone VM counters:: Zone based VM statistics are necessary to be able to determine what the state of memory in a zone is. The counters that we currently have for the VM are split per processor, but the processor has not much to do with the zone these pages belong to: we cannot tell f.e. how many pages on a particular node are dirty - if we knew then we could put measures into the VM to balance the use of memory between different zones and different nodes in a NUMA system. It would allow the development of new NUMA balancing algorithms that may be able to improve the decision making in the scheduler of when to move a process to another node - and hopefully will also enable automatic page migration through a user space program that can analyze the memory load distribution and then rebalance memory use in order to increase performance. This feature allows to have such info. The zone_reclaim_interval sysctl vanishes (since VM stats can now determine when it is worth to do local reclaim), and there're accurate counters in /sys/devices/system/node/node*/meminfo (current counters are not very accurate). Other detailed VM counters are available in more /proc and /sys status files [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f6ac2354d791195ca40822b84d73d48a4e8b7f2b (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2244b95a7bcf8d24196f8a3a44187ba5dfff754c (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f3dbd34460ff54962d3e3244b6bcb7f5295356e6 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=65ba55f500a37272985d071c9bbb35256a2f7c14 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b1e7a8fd854d2f895730e82137400012b509650e (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ce866b34ae1b7f1ce60234cf65855886ac7e7d30 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=df849a1529c106f7460e51479ca78fe07b07dc8c (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=34aa1330f9b3c5783d269851d467326525207422 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a865ffa34b6117a5e0b67640a084d8c2e198c93 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ca889e6c45e0b112cb2ca9d35afc66297519b5d5 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fd39fc8561be33065306bdac0e30414e1e8ac8e1 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d2c5e30c9a1420902262aa923794d2ae4e0bc391 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9614634fe6a138fd8ae044950700d2af8d203f97 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f8891e5e1f93a128c3900f82035e8541357896a7 (commit)] === Per-task delay accounting === This feature collects information on time spent by a task waiting for system resources like cpu, synchronous block I/O completion and swapping in pages. Until now, it was only possible to know that a process was not runnning, but it was not possible to obtain detailed information in what was making the process spend the time. The data is exported throught netlink and /proc/<tgid>stats [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f9fd8914c1acca0d98b69d831b128d5b52f03c51 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c8924363da07aec213e5d359f23eeae1fff91951 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6f44993fe1d7b2b097f6ac60cd5835c6f5ca0874 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fb0ba6bd021248b6bdc58a7b1213a55a6776a38a (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ad4ecbcba72855a2b5319b96e2a3a65ed1ca3bfd (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=25890454667b3295f67b3372352be90705f8667c (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9e06d3f9f6b14f6e3120923ed215032726246c98 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c757249af152c59fd74b85e52e8c090acb33d9c0 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ca74e92b4698276b6696f15a801759f50944f387 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0ff922452df86f3e9a2c6f705c4588ec62d096a7 (commit)] === Big libata (SATA) update === [http://lwn.net/Articles/183734/ (LWN article)] Mainstream libata has been missing some features like NCQ and hot plug. The code had been written a while ago (more than a year ago in the case of NCQ) but only now it has been considered stable. The features included in this update are: a revamped error handling across all the libata code, which makes libata more robust to errors and failures, and makes easier to debug problems [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=022bdb075b9e1f224088a0b268de56268d7bc5b6 (commit)]; NCQ ([http://en.wikipedia.org/wiki/Native_command_queueing Native Command Queuing]) which improves the performance greatly for many workloads) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3dc1d88193b9c65b01b64fb2dc730e486306649f (commit)], hotplug [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=084fe639b81c4d418a2cf714acb0475e3713cb73 (commit)], warmplug [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=83c47bcb3c533180a6dda78152334de50065358a (commit)], and bootplug - boot probing via hotplug path - support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e706399b03bd237d087d731d4b1b029e546b33d (commit)], interrupt-driven PIO mode (instead of the inefficient poll method), [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=312f7da2824c82800ee78d6190f12854456957af (commit)], add MCP61 support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c5c81613b0eb0dba97a8f312a2f1162f39fd47b (commit)] === Change the default IO scheduler to 'CFQ' === 2.6 features modular I/O schedulers: There're several I/O schedulers with different performance properties (that you can change at runtime with /sys/block/hda/queue/scheduler). The [http://www.cs.rice.edu/~ssiyer/r/antsched/ Anticipatory Scheduler] (AS) has been the default one since then, but the CFQ (Complete Fair Queuing) scheduler has been gaining adoption since then, to the point that it's the default I/O scheduler for RHEL 4, Suse, and other distros. One of the coolest things about CFQ is that it features (since 2.6.13) "io priorities": That means you can set the "I/O" priority of a process so you can avoid that a process that does too much I/O (daily updatedb) starves the rest of the system, or give extra priority to a process that shouldn't be starved by other processes, by using the "ionice" tool included in schedutils (1.5.0 and onwards). Now CFQ is the default scheduler [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b17fd9bceb99610f6dc7998c9a4ed6b71520be2b (commit)] (after some performance tweaks that should improve the performancein many workloads) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=caaa5f9f0a75d1dc5e812e69afdbb8720e077fd3 (commit)]. If you want to continue using the AS scheduler, you can change it at runtime in /sys/block/hda/queue/scheduler, or use the "elevator=as" boot option. === Secmark: Add security markings to packets via iptables === [http://james-morris.livejournal.com/11010.html (article from James Morris, a SELinux developer)] SELinux already has methods to "mark" network packets, but they're not as expressive or powerful as the controls provided by Netfilter/iptables. So Netfilter/iptables has been leveraged for packet selection and labeling, so that now SELinux can have more powerful and expressive network controls for adding security markings to packets. This also allows for increased security, as the policy is more effective, allowing access to the full range of iptables selectors and support mechanisms. The feature includes a SECMARK target allowing the admin to apply security marks to packets via both iptables and ip6tables, a CONNSECMARK target used to specify rules for copying security marks from packets to connections and for copying security marks back from connections to packets, and secmark support to conntrack. Examples of policies and rulesets, and patches for libselinux can be found [http://people.redhat.com/jmorris/selinux/secmark/ here]. [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=29a395eac4c320c570e73f0a90d8953d80da8359 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4e5ab4cb85683cf77b507ba0c4d48871e1562305 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=984bc16cc92ea3c247bf34ad667cfb95331b9d3c (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4e5ab4cb85683cf77b507ba0c4d48871e1562305 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5e6874cdb8de94cd3c15d853a8ef9c6f4c305055 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=100468e9c05c10fb6872751c1af523b996d6afa9 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c9728c393dceb724d66d696cfabce82151a78e5 (commit)] === Add binding/unbinding support for the VT console === This feature adds the ability to detach and attach the framebuffer console to and from the vt layer. With this change, it is possible to detach fbcon from the console layer. If it is detached, it will reattach the boot console driver (which is permanently loaded) back to the console layer so the system can continue to work. Similarly, fbcon can be reattached to the console layer without having to reload the module. Attaching and detaching fbcon is done via sysfs attributes. A class device entry for fbcon is created in /sys/class/graphics. The two attributes that controls this feature are detach and attach. Two other attributes that are piggybacked under /sys/class/graphics/fb[n] that are fbcon-specific, 'con_rotate' and 'con_rotate_all' are moved to fbcon. They are renamed as 'rotate' and 'rotate_all' respectively. Overall, this feature is a great help for developers working in the framebuffer or console layer as there is not need to continually reboot the kernel for every small change. It is also useful for regular users who wants to choose between a graphical console or a text console without having to reboot [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e795de7631b2366d7301182c8d91f6d2911467b (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5428b04405af1bb441aa8aabd314e48b870bc58e (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a17917671d407d37bf23a527aa55acca3cb4735 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=50ec42edd9784fad6a37b05be03064ea24098db6 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6db4063c5b72b46e9793b0f141a7a3984ac6facf (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=13ae66458971b4967350765a8bfaf2a636442e5f (commit)] === New drivers === Here are some important drivers that have been added to the linux tree - note that it says 'drivers', only new important drivers are listed today. Other small drivers are listed below; the already available drivers also add support for new devices and some are listed below but support for new devices is added so fast that it's impossible to keep track of all of them. * ZyDAS ZD1211 USB-WLAN driver: there are 60+ USB wifi adapters available on the market based on the ZyDAS ZD1211 chip, based on ZyDAS's own GPL driver, additionally, the firmware is redistributable and they have provided device specs. Kudos to ZyDAS. If you support "open hardware", you know what to do the next time you need a wifi adapter ;) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e85d0918b54fbd9b38003752f7d665416b06edd8 (commit)] * Add new ioatdma driver for the Intel(R) I/OAT DMA engine [http://lwn.net/Articles/162966/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0bbd5f4e97ff9c057b385a1886b4aed1fb0300f1 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=624d1164730d58a494cc5aa4afa37d02c41e83a7 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=97fc2f0848c928c63c2ae619deee61a0b1107b69 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=de5506e155276d385712c2aa1c2d9a27cd4ed947 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c13c8260da3155f2cefb63b0d1b7dcdcb405c644 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9593782585e0cf70babe787a8463d492a68b1744 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=db21733488f84a596faaad0d05430b3f51804692 (commit)] * imacfb driver for Intel-based Macintosh machines [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=90b4f9aca4d124d114e02bbb3d1d4f3d1d47138f (commit)] * hptiop SCSI driver for Highpoint RocketRAID 3220/3320 series 8 channel PCI-X SATA RAID Host Adapters [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ede1e6f8b43246a9796583346839669b1f4b77d4 (commit)] * Myri-10G Ethernet driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0da34b6dfe55810ae60db57e08e2af8a808c0a55 (commit)] * Echoaudio sound drivers (darla20, darla24, echo3g, gina20, gina24, indigo, indigodj, indigoio, layla20, lala24, mia, mona) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dd7b254d8dd3a9528f423ac3bf875e6f0c8da561 (commit)] * smc911x driver which supports the SMSC LAN911x line of ethernet chips [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0a0c72c9118c4e63080eb409f0cfdf15808d23a4 (commit)] * New driver, to control the brightness of an Apple Cinema Display over USB [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=069e8a65cd7970b15672825541be59218d9a8a0f (commit)] * ACPI dock driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a5e1b94008f2a96abf4a0c0371a55a56b320c13e (commit)] === Generic IRQ layer === Yet More Generalization of the IRQ handling layer. Not all architectures were using the current IRQ layer (specially ARM) and the current one had some shortcomings. From this [http://lwn.net/Articles/184750/ LWN article]: ''These patches attempt to take lessons learned about optimal interrupt handling on all architectures, mix in the quirks found in the fifty (yes, fifty) ARM sub architectures, and create a new IRQ subsystem which is truly generic, and more powerful as well''. Design documentation: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=11c869eaf1a9c97ef273f824a697fac017d68286 (commit)]; code: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6a6de9ef5850d063c3d3fb50784bfe3a6d0712c6 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=94d39e1f6e8132ea982a1d61acbe0423d3d14365 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6550c775cb5ee94c132d93d84de3bb23f0abf37b (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a4633adcdbc15ac51afcd0e1395de58cee27cf92 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dd87eb3a24c4527741122713e223d74b85d43c85 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e76de9f8eb67b7acc1cc6f28c4be8583adf0a90c (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3418d72404e35eb19e7995cbf3e7a76ba8fefbce (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ba9a2331bae5da8f65be3722b9e2d210f1987857 (commit)] === Generic core time subsystem === The time work is done in a architecture-dependent way. This work tries to provide a core time subsystems that can be used for all architectures, avoiding lots of code duplication. Detailed analysis in this [http://lwn.net/Articles/120850/ LWN article]; [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=734efb467b31e56c2f9430590a9aa867ecf3eea1 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ad596171ed635c51a9eef829187af100cbf8dcf7 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=260a42309b31cbc54eb4b6b85649e412bcad053f (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5eb6d20533d14a432df714520939a6181e28f099 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cf3c769b4b0dd1146da84d5cf045dcfe53bd0f13 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8d016ef1380a2a9a5ca5742ede04334199868f82 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=539eb11e6e904f2cd4f62908cc5e44d724879721 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=539eb11e6e904f2cd4f62908cc5e44d724879721 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6f84fa2f3edc8902cfed02cd510c7c58334bb9bd (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=61743fe445213b87fb55a389c8d073785323ca3e (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5d0cf410e94b1f1ff852c3f210d22cc6c5a27ffa (commit)] === Randomize the i386 vDSO === Move the i386 VDSO down into a vma and thus randomize it. Besides the security implications (attackers cannot use the predictable high-mapped VDSO page as syscall trampoline anymore) this feature also helps debuggers, and it's good for hypervisors (Xen, VMWare) too. There's a new CONFIG_COMPAT_VDSO option, which provides support for older glibcs that still rely on a prelinked high-mapped VDSO. Newer distributions (using glibc 2.3.3 or later) can turn this backwards-compatibility option off (recommended, for security reasons, as the features makes harder certain types of attacks). There is a new vdso=[0|1] boot option as well, and a runtime /proc/sys/vm/vdso_enabled sysctl switch, that allows the VDSO to be turned on/off [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e6e5494cb23d1933735ee47cc674ffe1c4afed6f (commit)] === Various core stuff === * Driver model, sysfs, etc: Add a "enable" sysfs attribute to the pci devices to allow userspace to enable and disable devices without having to do foul direct access [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f125d30487cea72542a84b4835c037163c7f3d5 (commit)], add a sysfs file to determine if a kexec kernel is loaded [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c330dda908b5a46469a997eea90b66f2f9f02b34 (commit)], add new uevent for dock so that user space can be notified of dock and undock events [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6a888b3c20cf559c8a2e6e4d86c570dda2ef0f5 (commit)], add SYS_HYPERVISOR config option and a /sys/hypervisor subsystem when set by architecture dependent hypervisors (e.g. s390 or Xen) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4039483fd3065920f035eed39ec59085421c0a4f (commit)], add sysfs ISA bus, needed for proper support of ISA sound cards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a5117ba7da37deb09df5eb802dace229b3fb1e9f (commit)], bus Parity Status sysfs interface, which adds the 'broken_parity_status' sysfs attribute file to a PCI device [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bdee9d98d281d84718eaff6bf0dd2b6ad418b36f (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bd8481e1646d7649fa101ee57a5139b9da3c2436 (commit)] * Finally remove devfs from the kernel tree [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d8deac5094988c7ad1127ee61f52c59a952fcabb (commit)] * Allow the ability to have height 0 radix trees. On 64-bit machines this causes nearly 600 bytes to be used for every <= 4K file in pagecache (huge savings) and pagecache lookup, insertion, and removal speed for small files will also be improved [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=612d6c19db2fd0dc97b0fa370613ecd4a305ffc3 (commit)] * Implement AT_SYMLINK_FOLLOW flag for linkat [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=45c9b11a1d07770cabb48cb0f7960a77650ffc64 (commit)] * 64bit resources [http://lwn.net/Articles/187490/ (LWN article)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6550e07f41ce8473ed684dac54fbfbd42183ffda (commit)] * Support for panic at OOM - panic_on_oom sysctl under sys.vm. If set to 1, the kernel will panic on OOM [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fadd8fbd153c12963f8fe3c9ef7f8967f286f98b (commit)] * Add: page_mkwrite() new VMA operation to notify a filesystem or other driver about the MMU generating a fault because userspace attempted to write to a page mapped through a read-only PTE [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9637a5efd4fbe36164c5ce7f6a0ee68b2bf22b7f (commit)], implement kasprintf, a kernel version of asprintf [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e905914f96e11862b130dd229f73045dad9a34e8 (commit)], strstrip() API for removing leading and trailing whitespace from a string [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=481fad483487ea967fe20bbc9e565d787f7bf20f (commit)] * inotify: Introduces a kernel API for inotify, making it possible for kernel to benefit from inotify's mechanism for watching inodes without being forced to compile in the support for userspace [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2d9048e201bfb67ba21f05e647b1286b8a4a5667 (commit)] * kconfig: allow loading multiple configurations [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=669bfad906522e74ee8d962801552a8c224c0d63 (commit)]. integrate split config into silentoldconfig [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2e3646e51b2d6415549b310655df63e7e0d7a080 (commit)], add symbol option config syntax [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f6a88aa86027bdecfc74ef7c6bf6c68233e86bb3 (commit)] * kbuild: 'make headers_install': A make target which exports a subset of kernel headers which contain definitions which are useful for system libraries and tools [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8d730cfb50cc77da6d00f941daef440918a1922f (commit)], 'make headers_check' [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=684753599afc76aa8f66c731bafb7204b39265b8 (commit)] * Temporarily add EXPORT_UNUSED_SYMBOL and EXPORT_UNUSED_SYMBOL_GPL. These will be used as a transition measure for symbols that aren't used in the kernel and are on the way out [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f71d20e961474dde77e6558396efb93d6ac80a4b (commit)] * tcrypt: Add speed tests (benchmarks) for digest algorithms [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e805792851bcb0bb42f0c8a352be64564c13e374 (commit)] * WATCHDOG: add WDIOC_GETTIMELEFT ioctl: you can now read the time left before the watchdog would reboot your system [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=58b519f3e5e491d5a3e320dc525f58ac439bdde4 (commit)] * MD: merge raid5 and raid6 code [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=16a53ecc35f2a80dc285be2e769768847d89ca37 (commit)], allow re-add to work on array without bitmaps [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=07d84d109d8beedd68df9da2e4e9f25c8217e7fb (commit)], allow rdev state to be set via sysfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=45dc2de1e53a29f898b81326b8a16e6192d52e4e (commit)], allow raid 'layout' to be read and set via sysfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d4dbd0250ea1d24bb3d2d13559432fa069d795e2 (commit)], set/get state of array via sysfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9e653b6342c94016f5cc9937061ef99e9c4b4045 (commit)], allow the write_mostly flag to be set via sysfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f655675b3fe09c4d0506d357527fe07544623009 (commit)], allow resync_start to be set and queried via sysfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a94213b1fa7b26dcc271bf4b4f9eebf1f1af33a2 (commit)], support stripe/offset mode in raid10 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c93983bf517c100a31e40ef087e19bd3d7aa2d28 (commit)] * Turn off chmod() on the /proc/<pid>/ files, since there is no good reason to allow it [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6d76fa58b050044994fe25f8753b8023f2b36737 (commit)] * symlink nesting level change: It's way past time to bump it to 8. Everyone had been warned - for months now [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=737bebd137561e184f0a8b4332d9bb0238d8b639 (commit)] * ramdisk blocksize Kconfig entry [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bef317e364f065717819fbbe7965d4401820286c (commit)] * Fix and enable EDAC sysfs operation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=49c0dab7e6000888b616bedcbbc8cd4710331610 (commit)] * FDPIC: Add coredump capability for the ELF-FDPIC binfmt [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6d8c4e3b0150ff537902477ed62f8a8e9e70007b (commit)] * blktrace: readahead support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=40359ccb836866435b03a0cb57345002b587d875 (commit)] == Other stuff == === Architecture-specific changes === ==== x86 32/64 ==== Make powernow-k7 work on SMP kernels [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=436fe7b8b4a5016ef1fcb32bff77bde84003e15d (commit)], a cache pollution aware update to copy_from_user_ll() [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c22ce143d15eb288543fe9873e1c5ac1c01b69a1 (commit)], a x86-64 version of the [http://lwn.net/Articles/164121/ "alternatives"] feature in x86-32 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d167a51877e94dda73dd656c51f363502309f713 (commit)], nmi watchdog support for new Intel CPUs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0080e667550db5ae8c9318181500c413b99ff164 (commit)], reliable stack trace support for x86-64 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4552d5dc08b79868829b4be8951b29b07284753f (commit)], x86_64 stack overflow debugging [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4961f10e2205d0ededa291e12ec634efc58aa93c (commit)] ==== PPC ==== Add cpufreq support to Xserve G5 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e272a2853459b1e7282a7d0b54114ffaa7b3980f (commit)], use the device tree for the iSeries vio bus probe [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=95a1ca6cd8e702a19ee56efae522a5816a56a205 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e10fa77368dff31140451fac04d78d9f51f0f3ac (commit)], add support for PCI-Express nodes in the device tree [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bb53bb3dcb12d79efdee3d82bff46a204af377f3 (commit)], oprofile support for POWER6 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e78dbc800c37f035d476c4fdebdf43cdecfcb731 (commit)], add cell RAS support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=acf7d76827a577059636e949079021e6af6dd702 (commit)], support for Time-Of-Day-Clock [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c220153654ede57b41900159eb8d1f6029d85642 (commit)], base support for the Freescale MPC8349E-mITX eval board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=00280166993af8469dbfee24b779b61d3dd326c3 (commit)], 85xx CDS board support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=591f0a4287d0de243493fd0c133c862e1d1f1c97 (commit)], 86xx HPCN platform support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4ca4b6274c30d53d22014fb6974efe2b3e52cfdc (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b809b3e86f39651475b30ceb1caf535071534d4d (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c9b484b5c1201321f40b04870e8b417033b6fe76 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9674ed38d8e4a9ce15c61b4306ef803cad0e1dc0 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=96abe9358becb543c21121699c711897374bcbdf (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6b543404058a5ffdca8c48e95e0b8a69bb4bdba9 (commit)], Freescale mpc7448 (Taiga) board support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c5d56332fd6c2f0c7cf9d1f65416076f2711ea28 (commit)] ==== ARM ==== Initial uCLinux support for MMU-based CPUs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d090dddaba7c8da6401bb259340dce05ca32f564 (commit)], add the base support for Hilscher's netX network processors [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bb6d8c8828123e01e2ae6c9d9c4870477889fd94 (commit)], add AMBA CLCD support in lpd7a40x [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=903e2bbda92e5a14f8050154046a14230abb800b (commit)], add support for Philips PNX4008 ARM platform [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=78818e477bf785391b02672d053fdbb2e111fb50 (commit)], add spi support to lubbock platform [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9df5db80a781c1a1c67388c82f64f835093c3cc3 (commit)], add support for NXDKN development board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=693532dcff871543639743e9c2e2b99c492f8f8d (commit)], core support for the Samsung s3c2442, and its serial port [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=96ce2385dd2817da549910001a69ac0a2762a1b9 (commit)], framebuffer driver for Hilscher netX [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3095faf5295f2da9118469c925d2cfb7775ad287 (commit)], add support for NXDB500 development board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=af614ba072dab2940471fec1f30bd59b8272fc6b (commit)], add support for NXEB500HMI development board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2697c5e1f799f201366d5fd7d25e96a21587f1a9 (commit)], add support for Trizeps4 SoM and ConXS-evalboard [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=326764a85b7676388db3ebad6488f312631d7661 (commit)], add cirrus logic edb9315 support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=87c01737b1ccf821b93f74a26a0dc991dba16d19 (commit)], add ajeco 1arm sbc support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b184a4c9a4e542890265b4cdd3ff7908f4adc9c4 (commit)] ==== MIPS ==== Add: support for the S3c2412 core cpu [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=68d9ab394f06f95fd4ca612c08edf13e410fd8d0 (commit)], APM emu support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=952fa954a61cee43de5afba91ae605e30ed2586c (commit)], the R5500-based NEC EMMA2RH Mark-eins board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=355c471f2ff324c21f8a1fb8e2e242a0f2a4aa68 (commit)]. the GT-64120-based Wind River 4KC PPMC evaluation board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a240a469649eaab03f0c4c7fbb21ea5041bf5572 (commit)], the RM9000-based Basler eXcite smart camera platform [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=35189fad3cb5f6e3ab66c8321928a851de0cd2b1 (commit)], cirrus logic edb9315 support to ep93xx [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=87c01737b1ccf821b93f74a26a0dc991dba16d19 (commit)] and for edb9302 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1100c257ad11954416df5fcf4bcfcab43de54f57 (commit)], MIPS32/MIPS64 secondary cache management [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9318c51acd9689505850152cc98277a6d6f2d752 (commit)], remove support for NEC DDB5476 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=470b160364db5b8096b8e557a23c97eb6612be67 (commit)] and DDB5074 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eaff3888742155bd397e45a1c3323c0173042e5b (commit)], add core support for the TI F-Sample Board (OMAP 850) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=495f71db30e279a5a696fa6622fc75451caa8366 (commit)], readd Amstrad Delta USB support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0711615290510bfba11c3f4eabcde6ac92c0766e (commit)], add GPMC support for OMAP2 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4bbbc1adc2095c6504a556819dd8842135df300b (commit)], add bitbank SPI driver for Innovator 1510 touchscreen [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c15e5d10b160ca0fe71f5865c771bf4ad0e7ed85 (commit)] and add oprofile Support VSMP on 34K [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=92c7b62fd1a6898fbfaf1db790ba4e70e90f39d2 (commit)] ==== SPARC64 ==== Use the OBP to obtain information avout the system [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=690c8fd31f1e35985d0f35772fde514da59ec9d1 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=372b07bb5a13f8a1b8a3ce49cd76d39a79dbd3bd (commit)] ==== IA64 ==== MSI support for Altix [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=83821d3f558dc651e555d62182ed0c95651f41a6 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fd58e55fcf5568e51da2ed54d7acd049c3fdb184 (commit)] ==== S390 ==== S390 Hypervisor Filesystem [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=24bbb1faf3f0420eb252dd0fdc1e477b1d4d73bd (commit)], add support for parallel-access-volumes to the dasd driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=405455734e1cdec09c37233216f9240cb1a058e5 (commit)] ==== m68k ==== Coldfire 532x support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c99df64f0be6763bf5079560ccd96911c231b7b (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=76aa698f331475147825ae135eae98bfd457825b (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6b2652936b9e61df47664a8dde46872a74d7dba2 (commit)] === Filesystems === * Ext3: Add "-o bh" option to force use of buffer_heads [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ade1a29e168ba08b699a418ff5e762315fa33f70 (commit)] * FUSE: Add POSIX file locking support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7142125937e1482ad3ae4366594c6586153dfc86 (commit)], synchronous request interruption [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a4d27e75ffb7b8ecb7eed0c7db0df975525f3fd7 (commit)] and a control filesystem to fuse, replacing the attributes currently exported through sysfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bafa96541b250a7051e3fbc5de6e8369daf8ffec (commit)] * JFFS2: XATTR support including POSIX-ACL and SELinux support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aa98d7cf59b5b0764d3502662053489585faf2fe (commit)], and allow alternate JFFS2 mount variant for root filesystem, details in the commit link [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e9482b4374e2596e6f3f1ab30c4ea469f4ac6311 (commit)] * CIFS: NTLMv2 authentication support (stronger authentication than default NTLM) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f64b23ae4aef9f69d71ea41529a188acd5ab4930 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6d027cfdb19c26df3151a519ed55acfe2c4cb7c3 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a8ee03441f66e0674e641c0cbe1a9534cdee968f (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1717ffc58850dfa9e08b4977f8d0323cb3336863 (commit)], support for setting up SMB sessions to legacy lanman servers such as OS/2 and Windows 95 (but such mounts may be insecure) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3979877e5606ecc58c5a31bd0078c6d80ba9cbe7 (commit)], support for older servers which require plaintext passwords (disabled by default) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bdc4bf6e8ac8cc29c61c2f0dc61d9776ef9a8ed4 (commit)], [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=254e55ed03e2e8d23089b4a468eec2fd2e1ead9b (commit)], enable sec flags on mount [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=189acaaef81b1d71aedd0d28810de24160c2e781 (commit)] === SELinux === Add security class for appletalk sockets so that they can be distinguished in SELinux policy [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e3ff15e6d8ba931fa9a6c7f9fe711edc77e96e5 (commit)], execve argument logging [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=473ae30bc7b1dda5c5791c773f95e9424ddfead9 (commit)], ppid logging [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f46038ff7d23ae092d61b366332c05aab8227b48 (commit)], filtering by ppid [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3c66251e573219a0532a5a07381b2f60a412d9eb (commit)], path-based rules using internally the inotify API [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f368c07d7214a7c41dfceb76c8db473b850f0229 (commit)], SELinux hooks to support the access key retention subsystem within the kernel [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d720024e94de4e8b7f10ee83c532926f3ad5d708 (commit)], support for a rule key, which can be used to tie audit records to audit rules. This is useful when a watched file is accessed through a link or symlink, as well as for general audit log analysis [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5adc8a6adc91c4c85a64c75a70a619fffc924817 (commit)], support for object context filters based on the elements of the SELinux context [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6e5a2d1d32596850a0ebf7fb3e54c0d69901dabd (commit)], audit syscall classes: Allow to tie upper bits of syscall bitmap in audit rules to kernel-defined sets of syscalls [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b915543b46a2aa599fdd2169e51bcfd88812a12b (commit)], add security hooks to {get,set}affinity to enable security modules to control these operations between tasks with task_setscheduler and task_getscheduler LSM hooks [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e7834f8fccd791225a1cf91c2c3e740ad8e2e145 (commit)], add a security hook call to enable security modules to control the ability to attach a task to a cpuset [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=22fb52dd736a62e24c44c50739007496265dc38c (commit)], implement an LSM hook for setting a task's IO priority [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=03e68060636e05989ea94bcb671ab633948f328c (commit)], add security_task_movememory calls to mm code to enable security modules to mediate this operation between tasks [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=86c3a7645c05a7d06b72653aa4b2bea4e7229d1b (commit)], add task_movememory hook to be called when memory owened by a task is to be moved [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=35601547baf92d984b6e59cf3583649da04baea5 (commit)], add sockcreate node to procattr API - /proc/self/attr/sockcreate. A process may write a context into this interface and all subsequent sockets created will be labeled with that context [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=42c3e03ef6b298813557cdb997bd6db619cd65a2 (commit)], add rootcontext= option to label root inode when mounting [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0808925ea5684a0ce25483b30e94d4f398804978 (commit)] === Networking === * Since [http://wiki.kernelnewbies.org/Linux_2_6_13 2.6.13], the linux networking stack has a [http://lwn.net/Articles/128681/ pluggable interface for TCP congestion algorithms], so it's possible to choose between different congestion algorithms (configurable through /proc/sys/net/ipv4/tcp_congestion_control) or even choose between different congestion algorithms in a per-socket basis [[http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5f8ef48d240963093451bcf83df89f1a1364f51d through setsockopt()]. To the 8 already available algorithms (Reno, BIC, Cubic, Westwood, H-TCP, High Speed TCP, Hybla, Scalable TCP) this release is adding two new congestion control algorithms: TCP Veno, which aims to improve TCP performance over wireless networks [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=76f1017757aa0c308a0b83ca611c9a89ee9a79a4 (commit)] and TCP "Low Priority" [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c106d7e782bd4805f39da30e81018f861b4b8c5 (commit)], * Add Generic Segmentation Offload (GSO), a feature that can improve the performance in some cases, for now it needs to be enabled through ethtool [http://marc.theaimsgroup.com/?l=linux-netdev&m=115079480721337&w=2 (announcement)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f6a78bfcb141f963187464bac838d46a81c3882a (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f83ef8c0b58dac17211a4c0b6df0e2b1bd6637b1 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f4c50d990dcf11a296679dc05de3873783236711 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=adcfc7d0b4d7bc3c7edac6fdde9f3ae510bd6054 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=576a30eb6453439b3c37ba24455ac7090c247b5a (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b0da8537037f337103348f239ad901477e907aa8 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=37c3185a02d4b85fbe134bf5204535405dd2c957 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=09b8f7a93efd4b2c4ef391e2fbf076f28c6d36d6 (commit)] * Add SIP protocol support to Netfilter [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ae5b7d8ba2c28d7d9835856fe0ca5f6ec95ea768 (commit)], a statistic match which is a combination of the nth and random matches [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f3389805e53a13bd969ee1c8fc5a4137b7c6c167 (commit)], a quota match [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=62b7743483b402f8fb73545d5d487ca714e82766 (commit)], and support for Call Forwarding to the H.323 netfilter module [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c0d4cfd96dd0cc0dbf49435898808b5553af4822 (commit)] * TCP Probe congestion window tracing for capturing the changes to TCP connection state in response to incoming packets [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a42e9d6ce89cfd19aee9f990b7231ce697f0d00f (commit)], limited slow start for Highspeed TCP (RFC3742 limited slow start) congestion control module [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=738980ffa658c86bd494ebb242ce8e44aff16a9e (commit)], remove net.ipv4.ip_autoconfig sysctl [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bdeb04c6d9a957ae2a51c3033414467b82b2a736 (commit)], add basic netlink support to the Ethernet bridge for link management including dump interfaces in bridges, monitor link status changes and change state of bridge port [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=11dc1f36a6701b502ecb695f308aae46ede8bac6 (commit)], add multicast support for datagrams in LLC [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bc0e646796928918e45b6465e02616f2fe65c3c1 (commit)], add a sysctl (ip_conntrack_checksum) to disable checksumming [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=39a27a35c5c1b5be499a0576a35c45a011788bf8 (commit)], add a tcp_slow_start_after_idle sysctl that provides RFC2861 behavior if enabled [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=35089bb203f44e33b6bbb6c4de0b0708f9a48921 (commit)], basic sysfs support for ATM devices [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=656d98b09d57d4e1185c5d2436a42600d48fbcb5 (commit)], add datagram getpeersec for AF_UNIX, which allows to enable a security-aware application to retrieve the security context of the peer of a Unix datagram socket [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=877ce7c1b3afd69a9b1caeb1b9964c992641f52a (commit)], add 64-to-32 ioctl compatibility for X.25 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1b06e6ba25a37fe1c289049d0e0300d71ae39eff (commit)] * Wireless softmac: add SIOCSIWMLME wext [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a1771e86756212041b32d80b850cc4c8063360a (commit)] and complete the shared key authentication implementation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=76ea4c7f4cd319dee35934ecab57745feae58fa5 (commit)] === Drivers and other subsystems === ==== Video ==== Add i945G support to the intelfb driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9639d5ec07a490134f05ac890506a367aaf8663b (commit)] and i945GM aswell [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a90603f65dd5046ddcd586158abcad7784892b6 (commit)], add suspend/Resume support for nVidia nForce AGP [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c5f2f261e7a47e4c72723cdcbe99e1bd771a81ea (commit)], update radeon driver and add r200 vertex program support (R200_EMIT_VAP_PVS_CNTL) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d6fece051a4ef330922bfafb9d64e3e133e3a8a6 (commit)], add support for Geforce 6100 and related chipsets to nvidiafb [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fe610671d7a88e363e8cebcb7e2f32078b0151ce (commit)], add support for Display Update Module and RGB framebuffer device on Philips PNX4008 ARM board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=36c9366efd63e4bab82d46e166140bddf3acc4cf (commit)], add frame buffer driver for the 2700G LCD controller present on Compulab CM-X270 computer module [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=22caf04297896e515c6d5cdfb8e08a79a523946c (commit)] ==== Sound ==== hda-codec: Add support for: Apple Mac Mini (early 2006) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=62fe78e90dc25b269362034487dc450cd8453e8c (commit)], Sony Vaio VGN-A790 laptop with ALC260 codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5e1b1518a53fc62d9f39a13819c849336c6d8dd4 (commit)], Sony Vaio VGN-S3HP with ALC260 codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3206b9ca9fba8dc8d6ddd371a3ff455c67ad137f (commit)], Thinkpad X60/T60/Z60 laptops with AD1981HD codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=01686c5fce4682350849f9f2c262fcaf67ec73c3 (commit)], LG S1 laptop [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=886da8677d2e4e942fc8984b22bfb8da45e810ec (commit)], ATI RS600 HDMI audio device [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=778b6e1b2da260adf3d3254aaa35bffd1eb05b42 (commit)], 9227/9228/9229 sigmatel hda codecs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a59524faf3a2050e14a1c9038eb006ce96025394 (commit)], HP nx6320 with AD1981HD codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f8e9f340da753c021c071f318f97ac9046c1316a (commit)], ALC888, ALC660 (ALC861-compatible) codecs and HP xw4400/6400/8400/9400 (model=hp-bpc) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9c7f852e8b2cc37da5dc5e1ba416238166a37d0f (commit)], Intel D965 boards with STAC9227 codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=19039bd0079f282b1023e61212285b5653e3a8ad (commit)] Add support for SB Live! 24-Bit External remote control [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4d1a70dad0e1c44dc0725de6de25aceead48599e (commit)], for Audigy4 (not Pro) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=21fdddea8e4cc54341d389916d0c17db8c1ca452 (commit)], for Turtle Beach Roadie [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e217e30c359edafce3225d2c4fbbda06ae5a408b (commit)], for oss sound support in au1200 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bb12b76e2d795431fa9fd306eb274c69e5054dc7 (commit)], for iMac G5 iSight [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c6feefd03ed12d89af591345fb9c26de7098764d (commit)], for power management in the cs5535audio [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9ac25594e68a4b61516e7c1140d8c0f7ef449e20 (commit)] and azt3328 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ca54bde3634360afecd0dada9c59399bbe88bd32 (commit)] drivers, Add O_APPEND flag support to PCM to enable shared substreams among multiple processes [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0df63e44c3e315ec0fe427ae62558231864108bd (commit)] ==== SCSI ==== Create libiscsi [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7996a778ff8c717cb1a7a294475c59cc8f1e9fb8 (commit)], expose the bus setting to sysfs in aic7xxx driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b2d8bfe18578c4e50e8ba52011c9b260a1b51dac (commit)], add DMI (Diagnostics Monitoring Interface) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=88729e53a4798df20e7a7ef68e0a816f4a268da4 (commit)] and NVRAM 'Disable Serdes' bit support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d4c760c2119fca982f335d83ff9095479c5d6737 (commit)] in qla2xxx driver, wide port support in mptsas [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=547f9a218436ea35baf9a52e981753e44d9cff1f (commit)], and add 1078 ROC (Raid On Chip) Support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=87cf89866790a373edcf88c12b64d6d38560acdd (commit)] ==== Input ==== Add mapping for Wistron MS 2111 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9000195bb7ea959939b1e5fdad336e5bac59c9e9 (commit)], add support for Intellimouse 4.0 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b0c9ad8e0ff154f8c4730b8c4383f49b846c97c4 (commit)], and add input device support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9e8e30a0cc0ccb43773d14d8b8b84bcc585e9cc1 (commit)] ==== USB ==== Add: Macbook Pro touchpad support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9effa978f1d51f6d0426ebabcf6cb32336bb3153 (commit)], new driver for Cypress CY7C63xxx mirco controllers [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4255e6f6d98ad092c27fa2b83ac314cbe8a0c56f (commit)], add support for Kyocera Wireless KPC650/Passport EV-DO/1xRTT PC Cards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=34ab86e140e9810d6c5162971b6dcf01fcc0f11c (commit)] and for Sierra Wireless MC5720 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b10cee9d035db54d0bf5a9f9fa622dcfc3f740c6 (commit)], add support for ASIX 88178 chipset USB Gigabit Ethernet adaptor [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7327413c745c2f8e8d4b92f76759821263b095c1 (commit)], add support for Yost Engineering Servocenter3.1 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eb79b4fda4654eaa7e6421ad41b0a75c7b4f0608 (commit)], add support for VIA VT8251 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bf2af2a2027e52b653882fbca840620e896ae081 (commit)], add support for WiseGroup., Ltd Smartjoy Dual PLUS Adapter [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b857c651e7e369c12098007772549f817b3bf961 (commit)], add ZyXEL vendor/product ID to rtl8150 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b6c2799dec0c9f6f6de35c2161b246c910108204 (commit)], add driver for non-composite Sierra Wireless devices [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=69de51fdda3fd984541978313b66e4f2c44cc23e (commit)], add ohci bits for the cirrus ep93xx [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a5b7474a0364507d168c7ff473e2d82deb676b08 (commit)], add support for Susteen Datapilot Universal-2 cable in pl2303 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3b92847425a98d26ad9d2b8682d3ce6020c90752 (commit)], ==== Network drivers ==== Add new SMSC LAN83C185 10BaseT/100BaseTX PHY driver for the PHY subsystem [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c9e055ac4fdbb52622437e0dbfdbc1d4897d2775 (commit)], add VLAN (802.1q) support to the sis900 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d269a69fbbbb7ddd2081af7a768feac754b8357a (commit)], enable (via the IPW2200_PROMISCUOUS config option) the creation of a second interface prefixed 'rtap' for RF promiscuous mode in the ipw2200 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d685b8c226727bf5db907c7241f55461e7f1f008 (commit)], add TRENDnet TE-CF100 ethernet adapter support in pcnet_cs driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cf393ebed0abb1186c34b21f3d1d939ac2b5568a (commit)], add support for the Cicada 8201 PHY [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c639b31068e8e111ec330a3634d95e20c11aab6 (commit)]; expose several configuration knobs configurable through ethtool in the forcedeth driver - ring sizes [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eafa59f6bcc6e46b756198a5388d195c4f0e671a (commit)] WOL [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c42d9df932ce3732044dc1394114380140ccffe0 (commit)] rx and tx checksum offloads [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5ed2616f621b41d3477d4f4ae2ba0e0a0e80bdce (commit)] flow control [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b6d0773fa7943fd93d564056395a7ff29b81213b (commit)] diagnostic tests [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9589c77a0de19c0c95370d5212eb1f9006d8abcb (commit)] and hardware statistic counters [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=52da35789c305f6f44d0e85b294a9845c1271898 (commit)] and add new device ids [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c99ce7ee75db7836e2faba932affd2aadd1e942f (commit)]-; convert au1000_eth driver to use PHY framework [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0638dec01e89059c853515ab71c55fd13ba5a8ea (commit)], enable shared key authentication [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4359219425a0918a72775480e125fbb077de338d (commit)] in the bcm43xx driver and add ipv6 TSO feature [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b0026624f1aa3e38a887cb483de61f104d600b97 (commit)] in the TG3 driver, allow WoL settings on new 5708 chips [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=160882722cb21cbe5cead55cf38a5e70fc3af63e (commit)] and add firmware decompression [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fba9fe911bb4213c3de1d142fe0ee127cd361a78 (commit)] in the BNX2 driver, add ethtool eeprom support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=722fdb33591bc7308a661913fb2f829128236b6f (commit)] in 8139cp driver, add WOL support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=52cafd965507b7a7bb962486539f6d7422552692 (commit)] in the b44 driver, add netpoll support to the s2io driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=612eff0e3715a6faff5ba1b74873b99e036c59fe (commit)], and add support for the Cicada 8201 PHY [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c639b31068e8e111ec330a3634d95e20c11aab6 (commit)]; add ich8lan core functions [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d37ea5d56293b7a883d2a993df5d8b9fb660ed3b (commit)], smart power down code [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a53a2029885e0088e9149679215b95d04deb57b (commit)] and integrate ich8 support into driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cd94dd0b648ceb64ca5e41d9ccfa99c1e30e92ef (commit)] in e1000 driver ==== V4L/DVB ==== Cx88 driver: added support for KWorld MCE 200 Deluxe [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b3038304c91aa710fe651c7f42568e252fc54908 (commit)], IR remote support for DTV2000H [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2de873e630b9385c6cd5896753335c5bf4829f0c (commit)], basic support for Leadtek Winfast DTV2000H card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4bd6e9d968af68c73bee92bd93cd56937e2e80d8 (commit)], support for the new cx88 card #50: NPG Tech RealTV, including it's remote [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=680543c5d2756ad3496f8ef197ba8825b78d6840 (commit)], support for FusionHDTV 3 Gold (original revision) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=65271bff0fb11557d04d389df728d12dfba75dc3 (commit)], support for Geniatech Digistar / Digiwave 103g [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c02a34f4e3e65a7b1fb64507ec5c093e8328335e (commit)] Add support for pcHDTV HD5500 ATSC/QAM [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=da215d22d82d547c5312f61ac9881ad571e67eea (commit)], add support for DViCO FusionHDTV DVB-T Lite 2nd revision in the Dvb-bt8xx driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8c99024b88b5da3a73f0575dad98527c9a278d1b (commit)], enable Blackbird MPEG encoder support in KWorld HardwareMpegTV XPert: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3febc04d42d4a0bda64af0c929fdb871370e2a7a (commit)], add support for the TCL M2523_3DB_E tuner [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=00819f87d883bb4aff97aecc7cc722ba27bd183a (commit)], implement v4l2 driver for the Hauppauge PVR USB2 TV tuner [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d855497edbfbf9e19a17f4a1154bca69cb4bd9ba (commit)], add v4l2 compatibility to the pwc driver, include the decompressor, export to userland compressed stream, more cameras supported etc [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2b455db6d456ef2d44808a8377fd3bc832e08317 (commit)], add support for the Texas Instruments TLV320AIC23B audio codec [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=88ca8ed0b7f2f04a055ff3c389f398ba3ad3d27d (commit)], Genpix 8PSK->USB driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9bbe076f364aa7ba8c2e49e417a76d628ffb164c (commit)], add support for Samsung TCPG 6121P30A PAL tuner [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c344933af5a8610d71bd0d92fe43a1519ed72ed8 (commit)], add support for Avermedia 6 Eyes AVS6EYES [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fbe60daac4c34e39d1ca69684bcb76e62461ac21 (commit)], add support for the cx25836/7 video decoder [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e2b8cf4ced47465b24d6fe911714827475fb0412 (commit)], add support for VP-3250 ATSC card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ed3d1065a4aa7b1e8e5d35ece0eeeafa5bfa6bd1 (commit)], add support for DViCO FusionHDTV DVB-T Dual USB based on zl10353 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c9ce394017162a90d79a4abc99eed3c7b2aed606 (commit)], add CX2341X MPEG encoder module [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5d1a9ae6d9d7fc14b2259cd550eb87364a21190a (commit)], add support for the DNTV Live! mini DVB-T card [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=442d15d5d8ba6a39d0c883585d68503e949a2fe1 (commit)] ==== RNG ==== Remove old HW RNG support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59f5d35f83738bf07e66f8cdcff32a433df804a3 (commit)], and add a new generic HW RNG core [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=844dd05fec172d98b0dacecd9b9e9f6595204c13 (commit)], Geode HW RNG driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ef5d862734b84239e0140319a95fb0bbff5ef394 (commit)], AMD HW RNG driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=96d63c0297ccfd6d9059c614b3f5555d9441a2b3 (commit)], VIA HW RNG driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=13523363577d49b9af3cad06fcb757126bedc61b (commit)], Intel HW RNG driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ca644bd5039566725b7c71a559e65ea91b7abfb5 (commit)], bcm43xx HW RNG driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=71c0cd7042672fce2463d82183d20bfb574f4cb5 (commit)], ixp4xx HW RNG driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d7174bcb919c15b295271e37c3f65c716710715c (commit)], TI OMAP CPU family HW RNG driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ebc915ad26d881ddcafbe4e0975203d23289f36f (commit)] ==== RTC ==== Add: driver for ARM AMBA PL031 RTC [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8ae6e163c1b637e1cb125613726ffbd31ca44fdf (commit)], AT91RM9200 RTC driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=788b1fc619a31ebdbadd3a8863631f59a4bd2944 (commit)], rtc-dev UIE emulation for UIE-less rtc drivers [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=655066c3835e7b51794c4d56f042eb78b5a79f53 (commit)], v3020 RTC support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=362600fe60fd18a25b4de8ec544b9e24e77e1484 (commit)], rtc-ds1742 driver for the Dallas DS1742 RTC chip [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5ec3e4b7aefbb8613b27ec4449fa8f9916ab9099 (commit)], rtc-ds1553 driver for the Dallas DS1553 RTC chip [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9bf5b4f5f53707aee5813f373279d03920ba6f65 (commit)], rtc-rs5c348 driver for the Ricoh RS5C348 RTC chip [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e0ac4761fa52acda90f9f53819c81474b511e3af (commit)], class driver for Samsung S3C series SoC [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1add6781c85d7e2ee512315113a16193b3e3937d (commit)], "RTC-framework" driver for DS1307 and similar RTC chips [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1abb0dc92d706e8c73c7a62ca813738fe2259a7f (commit)], max6902 RTC support for the MAX6902 SPI RTC chip [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8e12ecc2b5a4521a338d7681e7d5547080fc6f71 (commit)], port of the driver for the pcf8583 i2c rtc controller to the generic RTC framework [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9c0c570576d02000063e28faadcce8c07396755d (commit)], support for the I2C-attached Intersil ISL1208 RTC chip [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7e56a7dcbb974d9725d80e50d70c6eed7f71110b (commit)] ==== Various drivers ==== * Initial support for MCS7780 based dongles in IRDA [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c6ae522e3a50fc1ec483d7f03ece9c7a25e6de95 (commit)] * Kernel connection management agent over Infiniband that connects based on IP addresses [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e51060f08a61965c4dd91516d82fe90617152590 (commit)] and add an address translation service that maps IP addresses to Infiniband GID addresses using IPoIB [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7025fcd36bd62af2c6ca0ea3490c00b216c4d168 (commit)] * ieee1394: Add support for the following types of hardware: nodes that have a link speed < PHY speed, 1394b PHYs that are less than S800 capable, and 1394b/1394a adapter cable between two 1394b PHYs [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=647dcb5fae0ebb5da1272ed2773df0d3f152c303 (commit)] * hwmon: add sysfs interface for individual alarm files [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=400b48ecd95a7fac6b126042d37b7efe0202b582 (commit)], new hwmon driver which supports voltage and temperature measurement features of SMSC LPC47M192 and LPC47M997 chips [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59ac83677f72ea2cc25b5426e7df9589aa7a5384 (commit)], add support for Intel Core and Conroe [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6af586dc58820d052aa538abef4d4d15c2a9e33e (commit)], add new hardware monitoring driver abituguru for the Abit uGuru [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f2b84bbcebfdbe4855bab532909eef6621999f9f (commit)], add LM82 temperature sensor support (similar to the LM83, but less featureful) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=43cb7ebee2f478d3f987ad773d4e6b07fc23c631 (commit)], new hardware monitoring driver for the National Semiconductor LM70 temperature sensor [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e1a8e913f97e36cc5a23a24a8b4717e84998f13c (commit)], new hardware monitoring driver for the Winbond W83791D [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9873964d6eb24bd0205394f9b791de9eddbcb855 (commit)] * w1: add userspace communication protocol over connector [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=12003375acd879e498c6c511faf27531296f9640 (commit)]; replace dscore and ds_w1_bridge with ds2490 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=81f6075ebcf3b0800321b7d81e4845d6ad9566d8 (commit)] * Bluetooth: add automatic sniff mode support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=04837f6447c7f3ef114cda1ad761822dedbff8cf (commit)], add suspend/resume support to the HCI USB driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dcdcf63ef12dc3fbaa17a6d04f16ada8e63bb4d0 (commit)] * I2C: Add support for the ST m41t81 and m41t85 i2c rtc chips [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5e9f4f2e5a02bb6908278a819952aa31fffefaa2 (commit)], add ATI IXP200/300/400 support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=02e0c5d5c2e00374b6808a42f8eea4ea9baaa216 (commit)], add support for the new nForce4 MCP51 (also known as nForce 410 or 430) and nForce4 MCP55 to the i2c-nforce2 driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5c7ae65899a4c5b05b6277f856018d1eeeb98907 (commit)], and new bus driver for the Opencores I2C controller [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=18f98b1e3147afdb51e545cc6ff2b016c7d088a7 (commit)] * pcmcia: TI PCIxx12 Cardbus controller support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59e35ba1257903eaff5203f62f77554da02f5b63 (commit)] * synclink_gt: add GT2 adapter support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6f84be84b4cde72fa2a2f0d10ac284a31e923200 (commit)] * AX88796 parallel port driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ad4063b0b2ffd7c8359b62c830e88152fc39ab20 (commit)] * Add Specialix IO8+ card support hotplug support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7691030bc9732f7d535522dda78cfdd36716def1 (commit)] * Add Computone Intelliport Plus serial hotplug support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eb0e71c7f388bfcb3f74897f23d0cf09310fc05b (commit)] * LED: Support for Amstrad Delta [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9becde79d2c5e382d955167c07017b5e34b142f0 (commit)], add a LED heartbeat trigger [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=891c668b90ded38cec36f0852c4983573597170d (commit)], class support for Soekris net48xx [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1a87d9425e0347c0e880254816d8e9f41a0e2b0c (commit)] |
<<Include(Linux_5.12)>> |
Changes done in each Linux kernel release. Other places to get news about the Linux kernel are LWN kernel status or the Linux Kernel mailing list (there is a web interface in www.lkml.org or lore.kernel.org/lkml). The lore.kernel.org/lkml/ archive is also available via NTTP if you prefer to use a newsreader: use nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel for that. List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules!
You can discuss the latest Linux kernel changes on the New Linux Kernel Features Forum.
Linux 5.12 has been released on Sun, 25 Apr 2021.
Summary: This release allows to map an UID to a different one in a mount; it also adds support for selecting the preemption model at runtime; support for a low-overhead memory error detector designed to be used in production; support for the ACRN hypervisor designed for embedded systems; Btrfs initial support for zoned devices, subpage blocks sizes and performance improvements; support for eager NFS writes; support for a Thermal Power Management to control the surface temperature of embedded devices in an unified way; the NAPI polling can be moved to a kernel thread; and support for non-blocking path lookups. As always, there are many other features, new drivers, improvements and fixes.
Also see the LWN release
Contents
-
Prominent features
- ID mapping in mounts
- Allow selecting preempting model at boot and run time
- KFENCE memory error detector
- Support for the ACRN hypervisor
- Btrfs initial support for zoned devices and subpage block size
- Eager NFS writes
- Non-blocking path lookup while opening a file
- Kernel thread-based NAPI polling
- Dynamic Thermal Power Management
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing, perf and BPF
- Virtualization
- Cryptography
- Security
- Networking
- Architectures
-
Drivers
- Graphics
- Power Management
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Watchdog
- Serial
- CPU Frequency scaling
- Device Voltage and Frequency Scaling
- Voltage, current regulators, power capping, power supply
- Real Time Clock (RTC)
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Multi Function Devices (MFD)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C + I3C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Cryptography hardware acceleration
- PCI
- Non-Transparent Bridge (NTB)
- Thunderbolt
- Clock
- PHY ("physical layer" framework)
- CXL (Compute Express Link)
- Various
- List of Pull Requests
- Other news sites
1. Prominent features
1.1. ID mapping in mounts
This release adds a new system call, mount_setattr(2), which allows to map the permission IDs of one mount to a completely different one. Simply put, different mounts can expose the same file or directory with different ownership. This solves a wide range of use cases that weren't possible before:
- Allow users to efficiently changing ownership on a per-mount basis without having to (recursively) chown(2) all files. In contrast to chown (2) changing ownership of large sets of files is instantenous with idmapped mounts. This is especially useful when ownership of a whole root filesystem of a virtual machine or container is changed. With idmapped mounts a single syscall mount_setattr(2) syscall will be sufficient to change the ownership of all files.
- It is now possible to share files from the host with unprivileged containers without having to change ownership permanently through chown(2).
- It is possible to idmap a container's rootfs and without having to mangle every file. For example, Chromebooks use it to share the user's Download folder with their unprivileged containers in their Linux subsystem.
- It is possible to share files between containers with non-overlapping idmapping
- It is possible to easily share files between multiple users or multiple machines especially in complex scenarios. For example, idmapped mounts will be used in the implementation of portable home directories in systemd-homed.service(8) where they allow users to move their home directory to an external storage device and use it on multiple computers where they are assigned different uids and gids. This effectively makes it possible to assign random uids and gids at login time.
- Filesystem that lack a proper concept of ownership such as fat can use idmapped mounts to implement discretionary access (DAC) permission checking.
- Idmapped mounts always take the current ownership into account as idmappings specify what a given uid or gid is supposed to be mapped to. This contrasts with the chown(2) syscall which cannot by itself take the current ownership of the files it changes into account.
Recommended LWN article: ID mapping for mounted filesystems
1.2. Allow selecting preempting model at boot and run time
Linux supports different preemption models. Currently, using one preempt model (none/voluntary/model) is a build-time configuration option. This release adds the preempt=none/voluntary/full boot options (default: full), to allow distributions to build a PREEMPT kernel but fall back to close to PREEMPT_VOLUNTARY (or PREEMPT_NONE) runtime scheduling behavior via a boot-time selection. There's also the /debug/sched_debug switch to do this runtime. This feature is implemented via runtime patching (a new variant of static calls).
1.3. KFENCE memory error detector
Kernel Electric-Fence (KFENCE) is a new low-overhead sampling-based memory safety error detector. It detects heap out-of-bounds access, use-after-free, and invalid-free errors.
Linux already has a memory error detector, KASAN. KFENCE is not as thorough as KASAN, but unlike KASAN it has near zero performance overhead - it trades performance for precision. Because of the low overhead, it is designed to be enabled and used in production kernels.
Documentation: Kernel Electric-Fence (KFENCE)
1.4. Support for the ACRN hypervisor
This release adds support for the ACRN hypervisor. ACRN is a Type 1 reference hypervisor stack, running directly on the bare-metal hardware, and is suitable for a variety of IoT and embedded device solutions. It implements a hybrid VMM architecture, using a privileged Service VM. The Service VM manages the system resources (CPU, memory, etc.) and I/O devices of User VMs. Multiple User VMs are supported, with each of them running Linux, Android OS or Windows. Both Service VM and User VMs are guest VM.
Documentation: ACRN documentation
1.5. Btrfs initial support for zoned devices and subpage block size
This release adds initial support for Btrfs in zoned devices, which are storage devices divided in zones that can only be written sequentially.
This release also adds support for block sizes smaller than the size of a memory page, which is a requirement sharing file systems between machines with different page sizes.
There are also several many performance improvements.
Recommended LWN article: Btrfs on zoned block devices
1.6. Eager NFS writes
This release adds support for eager writes: When enabled, writes will be sent immediately to the server, instead of letting the kernel send asynchronously in the background. This can help in some cases, like for example ensuring that a NFS client sees ENOSPC errors immediately.
A set of mount options for NFS file systems is added to control how write() system calls react. writes=lazy is the default, and keeps the current behaviour. writes=eager means we send off the write immediately as an unstable write to the server. writes=wait means we send off the write as an unstable write, and then wait for the reply.
1.7. Non-blocking path lookup while opening a file
This release supports path name lookups that will not block under any circumstance. This means that the kernel will try to resolve the path with the cached data, but if it needs to do I/O, it will return an error. This is needed for io_uring(), but support in openat2() with the RESOLVE_CACHED flag has been added, too.
Recommended LWN article: Avoiding blocking file-name lookups
1.8. Kernel thread-based NAPI polling
NAPI is a networking feature that polls the network device instead of waiting for IRQs, because it benefits performance in high-throughput loads. That polling, however, runs in softirq context, where the task scheduler can't see it, and it makes hard to tune the system for maximum performance.
In this release, the polling can be configured to be done by a kernel thread. These kernel threads are managed by the task scheduler, which can make better scheduling decisions, and because they are visible by userspace administrators can pin a kernel threads to specific CPUs.
Recommended LWN article: NAPI polling in kernel threads
1.9. Dynamic Thermal Power Management
The density of components greatly increased the last decade bringing a numerous number of heating sources which are monitored by more than 20 sensors on recent SoC. The skin temperature, which is the case temperature of the device, must stay below approximately 45°C in order to comply with the legal requirements.
The skin temperature is managed as a whole by an user space daemon, which is catching the current application profile, to allocate a power budget to the different components where the resulting heating effect will comply with the skin temperature constraint. This technique is called the Dynamic Thermal Power Management.
This series provides a Dynamic Thermal Power Management framework to provide an unified way to act on the power of the devices.
Documentation: Dynamic Thermal Power Management framework
2. Core (various)
(FEATURED) idmapped mounts commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) openat(): Support non-blocking open with LOOKUP_CACHED / RESOLVE_CACHED flags commit, commit, commit, commit
(FEATURED) Allow selecting preemption flavour on boot commit, commit, commit, commit, commit, commit, commit
Enable fw_devlink=on by default (create device links between consumer and supplier devices by scanning the firmware to infer the consumer/supplier relationships). It cuts down deferred probes commit, commit, commit, commit, commit, commit, commit
fs-verity: Add an ioctl FS_IOC_READ_VERITY_METADATA which allows reading verity metadata from a file that has fs-verity enabled, including the merkle tree, the fsverity_descriptor, and the built-in signature. This is useful when a file with fs-verity enabled needs to be served somewhere, and the other end wants to do its own fs-verity compatible verification of the file. There is interest in using this ability in Android to export APK files (which are protected by fs-verity) to "protected VMs" commit, commit, commit, commit, commit, commit
- io_uring
Request recycling and task_work optimizations, which net anywhere from 10-20% of speedups on workloads that mostly are inline commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enable non-blocking path resolution for filename lookups commit
Support for skip entries in file registration commit
Flag new native workers with IORING_FEAT_NATIVE_WORKERS commit
Converts the io-wq workers to be forked off the tasks in question instead of being kernel threads that assume various bits of the original task identity merge
- Locking
- Task scheduler
vt: drop old FONT ioctls commit
- Build
Add support for LTO in Clang commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
kunit: support running subsets of test suites from kunit.py commit, commit, commit
Make the kcmp syscall available independently of checkpoint/restore. commit
Add support for never printing hashed addresses commit, commit, commit
3. File systems
- Btrfs
(FEATURED) Support subpage block size (currently read-only support) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Zoned mode, first working version but with limitations commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Do not block on deleted block group mutex in the cleaner, avoids some long stalls. Also less lock contention related to running delayed refs, let just one thread do the flushing when there are many inside transaction commit commit, commit, commit, commit, commit, commit, commit, commit
Improve Preemptive background flushing: separate the logic from ticket reservations, improve the accounting and decisions when to flush in low space conditions commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dbench workload improvements: avoid unnecessary work when logging inodes, fewer fallbacks to transaction commit and thus less waiting for it (+7% throughput, -20% latency) commit, commit, commit, commit, commit, commit, commit
- XFS
Speed up file fsyncs by reducing iolock cycling commit, commit
Increase the default parallelism levels of pwork clients. On fast systems this will speed up quotacheck by a large factor commit
Allow sysadmins to tweak the CPU affinities and maximum concurrency levels of quotacheck and background blockgc worker pools commit
Expose inobtcount in xfs geometry commit
- F2FS
- NFS
(FEATURED) Add mount options supporting eager writes writes=lazy/eager/wait. The mount option basically controls how the write() system call works. writes=lazy is the default, and keeps the current behaviour. writes=eager means we send off the write immediately as an unstable write to the server. writes=wait means we send off the write as an unstable write, and then wait for the reply commit, commit, commit
Support the -owrite option in /proc/self/mounts and mountinfo commit
Report per-export stats commit
Remove unused stats counters commit
- CIFS
- GFS2
- exFAT
Improve performance of exfat_free_cluster when using dirsync mount option commit
- RAMFS:
Support O_TMPFILE commit
- Ceph
Remove osdtimeout option entirely commit
4. Memory management
(FEATURED) Add KFENCE: A low-overhead sampling-based memory safety error detector commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
inotify: account inotify instances to kmemcg commit
- KASAN
Make the HW_TAGS mode more efficient. With this change, the overhead of HW_TAGS annotations excluding setting and checking memory tags is ~3%. As a side-effect, this patchset speeds up generic KASAN by ~15% commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
stackdepot: Add support to configure STACK_HASH_SIZE commit, commit
Overhaul multi-page lookups for future THP commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Count CMA pages per zone and print them in /proc/zoneinfo commit
memcg: add swapcache stat for memcg v2 commit
dma-buf: Add debug option commit
5. Block layer
block/keyslot-manager: Introduce passthrough keyslot manager commit
block/keyslot-manager: Introduce functions for device mapper support commit
blk-mq: Improve performance of non-mq IO schedulers with multiple HW queues commit
block, bfq: replace mechanism for evaluating I/O intensity commit
block: introduce zone_write_granularity limit commit
block: Add n64 cart driver commit
virtio-blk: support per-device queue depth commit
block: remove skd driver commit
dm integrity: introduce the "fix_hmac" argument commit
dm crypt: support using trusted keys commit
dm: add support for passing through inline crypto support commit
dm: support key eviction from keyslot managers of underlying devices commit
dm: set DM_TARGET_PASSES_CRYPTO feature for some targets commit
6. Tracing, perf and BPF
- BPF
Add atomic operations to the eBPF instruction set commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
New approach for BPF MTU handling commit, commit, commit, commit, commit, commit, commit
Misc improvements commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow the BPF ringbuffer to be used in sleepable programs (tracing and lsm) commit, commit
Allow rewriting to ports under ip_unprivileged_port_start commit
Allow to retrieve sol_socket opts from sock_addr progs commit
Allow variable-offset stack access commit, commit, commit, commit
Expose bpf_{g,s}etsockopt to more bpf_sock_addr hooks commit, commit, commit, commit
Expose bpf_get_socket_cookie to tracing programs commit
Misc performance improvements for cgroup hooks commit, commit, commit
Support kernel module ksym variables commit, commit, commit, commit, commit, commit, commit
Add support of pointer to struct in global functions commit, commit, commit, commit
- Perf
New 'perf daemon' command to run long running sessions while providing a way to control the enablement of events without restarting a traditional 'perf record' session commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf auxtrace: Automatically group aux-output events commit
perf build: Support build BPF skeletons with perf commit
perf buildid-cache: Add --debuginfod option to specify a server to fetch debug files commit
Add the page size in the perf record (user tools) commit, commit, commit, commit, commit, commit
perf record: Add --buildid-mmap option to enable PERF_RECORD_MMAP2's build id commit
perf script: Support DSO filter like in other perf tools commit
perf script: Support filtering by hex address commit
perf stat: Add Topdown metrics events as default events commit
perf tools: Allow to enable/disable events via control pipe commit, commit, commit, commit
perf tools: Add support to display build ids when available in PERF_RECORD_MMAP2 events commit
tracing: Add the latency-collector to tools directory. It is intended to work around the fact that the preemptoff, irqsoff, and preemptirqsoff tracers only work in overwrite mode. The idea is to act randomly in such a way that we do not systematically lose any latencies, so that if enough testing is done, all latencies will be captured. If the same burst of latencies is repeated, then sooner or later we will have captured all the latencies commit
Remove oprofile and dcookies commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
7. Virtualization
KVM: Allow parallel MMU operations with TDP MMU commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- UM
Introduce vdpa management tool commit, commit, commit, commit, commit, commit
virtio-input: add multi-touch support commit
(FEATURED) HSM driver for ACRN hypervisor commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
xen: add per-xenbus device event statistics and settings commit
hv: vmbus: Add /sys/bus/vmbus/hibernation commit
8. Cryptography
blake2b: sync with blake2s implementation commit
rmd128: remove RIPE-MD 128 hash algorithm commit
rmd256: remove RIPE-MD 256 hash algorithm commit
rmd320: remove RIPE-MD 320 hash algorithm commit
salsa20: remove Salsa20 stream cipher algorithm commit
tgr192: remove Tiger 128/160/192 hash algorithms commit
9. Security
10. Networking
(FEATURED) Implement kthread based napi poll, moving the napi poll process out of softirq context commit, commit, commit
- IP
Add support for route offload failure notifications via a new flag (RTM_F_OFFLOAD_FAILED) in the RTM_NEWROUTE message. Upon such a notification a routing daemon may decide to withdraw the route from the FIB commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
IPv6: Allow user to set metric on default route learned via Router Advertisement commit
UDP: allow forwarding of plain (non-fraglisted) UDP GRO packets commit, commit
- TCP
- Multi-path TCP
Add genl events for connection info commit, commit, commit, commit, commit, commit, commit
Add MP_PRIO support and rework local address IDs commit, commit, commit, commit, commit, commit, commit, commit
ADD_ADDR enhancements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Re-enable sndbuf autotune commit, commit, commit, commit, commit
IPv4-mapped IPv6 addressing for subflows commit, commit, commit, commit, commit
Add local addr info in mptcp_info commit
- netfilter: Add table ownership infrastructure, this new infrastructure allows users to bind a table (and its content) to a process through the
- bonding
- bridge
- Wireless
Support disabling HE mode commit
Add Extended MCS Phyrate Conversion Support on 60GHz commit
Add VHT rate entries for MCS-10 and MCS-11 commit
Add rx decapsulation offload support commit
Enable QoS support for nl80211 ctrl port commit
Introduce aql_enable node in debugfs commit
Replace minstrel with minstrel_ht commit, commit, commit, commit, commit, commit, commit, commit, commit
minstrel_ht: show sampling rates in debugfs commit
- dsa
Link aggregation support commit, commit, commit, commit, commit
Extends MRP switchdev to allow the SW to have a better understanding if the HW can implement the MRP functionality commit, commit, commit, commit, commit, commit, commit, commit
Add stats64 support commit
Add HSR offloading support for DSA switches commit, commit, commit, commit
ethtool: Support setting lanes commit, commit, commit, commit, commit, commit, commit, commit
Add support for dissecting PTP L2 packet header commit, commit
hsr: add support for EntryForgetTime commit
Add support for ip generic checksum offload for gre commit, commit
Add notifications when route hardware flags change commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ipvs: add weighted random twos choice algorithm commit
sched: cls_flower add CT_FLAGS_INVALID flag support commit
Enable TSO on xfrm interfaces commit
Bluetooth: MSFT offloading support for advertisement monitor commit, commit, commit, commit, commit, commit, commit
11. Architectures
11.1. x86
iommu/amd: Add Generic IO Page Table Framework Support. The framework allows callable implementation of IO page table. This allows AMD IOMMU driver to switch between different types of AMD IOMMU page tables (e.g. v1 vs. v2) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- perf
core PMU support for Sapphire Rapids commit, commit, commit, commit, commit
intel: Remove Perfmon-v4 counter_freezing support commit
perf core PMU support for Sapphire Rapids (User tools) commit, commit, commit, commit, commit, commit, commit, commit, commit
perf intel-pt: Add PSB events commit, commit, commit, commit
perf intel-pt: Add limited support for tracing guest kernels commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- platform
chrome: cros_ec_sysfs: Add cold-ap-off to sysfs reboot commit
surface: Add support for Microsoft Surface System Aggregator Module commit, commit, commit, commit, commit, commit, commit, commit, commit
surface: Add Surface Hot-Plug driver commit
surface: Add platform profile driver for Surface devices commit, commit, commit, commit
intel-uncore-freq: Add Sapphire Rapids server support commit
ideapad-laptop: keyboard backlight and "always on USB charging" control support, reenable touchpad control commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Remove driver for deprecated platform: intel_mid_powerbtn commit, intel_mid_powerbtn commit, intel_mid_thermal commit, intel_mid_thermal commit
thinkpad_acpi: Add platform profile support commit, commit, commit
thinkpad_acpi: set keyboard language commit
Retire arch/x86/platform/goldfish commit
- tools/power/x86/intel-speed-select
apb_timer: Remove driver for deprecated platform commit
crypto: aesni: implement support for cts(cbc(aes)) commit
Introducing Linux root partition support for Microsoft Hypervisor commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- KVM
Convert kvm_x86_ops to use static_call. Shows good performance gains for cpuid loop micro-benchmark commit, commit, commit
Conditional Hyper-V emulation enablement commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Advertise INVPCID by default commit
Add minimal support for Xen HVM guests commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add new ability named KVM_CAP_X86_BUS_LOCK_EXIT, which is used to handle bus locks detected in guest. It allows the userspace to do custom throttling policies to mitigate the 'noisy neighbour' problem commit, commit, commit, commit
Guest Last Branch Recording Enabling. Last branch recording (LBR) is a performance monitor unit (PMU) feature on Intel processors that records a running trace of the most recent branches taken by the processor in the LBR stack commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Handle #GP for SVM execution instructions commit, commit, commit, commit
Add support for SEV attestation command commit
11.2. ARM
- New device support
- Renesas
- Intel SoCFPGA
eASIC N5X board (N5X) commit
- ST-Ericsson Ux500
Samsung GT-I9070 (Janice) phone (u8500) commit
- TI OMAP
MYIR Tech Limited development board (AM335X) commit
- Allwinner/sunxi
- Broadcom
Netgear R8000P router (BCM4906) commit
- AMLogic
- Qualcomm
Snapdragon 888 / SM8350 high-end phone SoC commit, commit, commit, commit
Snapdragon MTP reference board (SM8350) commit
Snapdragon MTP reference board (SDX55) commit
Sony Kitakami phones: Xperia Z3+/Z4/Z5 (APQ8094) commit
Alcatel Idol 3 phone (MSM8916) commit
ASUS Zenfone 2 Laser phone (MSM8916) commit
BQ Aquaris X5 aka Longcheer L8910 phone (MSM8916) commit
OnePlus6 and OnePlus6T (SDM845) commit
Alfa Network AP120C-AC access point (IPQ4018) commit
mt8183: Add krane-sku0 board commit
Add 8devices Jalapeno commit
- NXP i.MX6 (32-bit)
- NXP i.MX8 (64-bit)
Beacon i.MX8M Nano development kit (imx8mn) commit
Boundary Devices i.MX8MM Nitrogen SBC (imx8mm) commit
Gateworks Venice i.MX 8M Mini Development Kits (imx8mm) commit
phyBOARD-Pollux-i.MX8MP (imx8mp) commit
Purism Librem5 Evergreen phone (imx8mp) commit
Kontron SMARC-sAL28 system-on-module(imx8mp) commit
- Rockchip
- ASpeed
- Zynq
Remove efm32 commit
Remove prima2/atlas platforms commit
Remove tango platform commit
Remove u300 platform commit
Remove zte zx platform commit
- iommu
arm-smmu-qcom: Add Qualcomm SC8180X impl commit
MT8192 IOMMU 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
- crypto
perf: Add support for ARMv8.3-SPE commit
perf arm-spe: Synthesize memory event commit
brcmstb: Add debug UART entry for 72116 commit
- ARM64
Add support for SMCCC TRNG entropy source commit
Early CPU feature override, and applications to VHE, BTI and PAuth commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Tegra186 and Tegra194 audio graph card commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- perf
Add support for Cortex-A78 commit
Add JSON metrics for imx8mn DDR Perf commit
JSON metrics for imx8mp DDR Perf commit
Add JSON metrics for imx8mq DDR Perf commit
Add common and uarch event JSON commit
Reference common and uarch events for A76 commit
Reference common and uarch events for Ampere eMag commit
coresight: etm4x: Support for system instructions commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf arm64: Support SDT commit
- soc
socinfo: Add new systems commit
Broadcom's PMB (Power Management Bus) support commit, commit
mediatek: pm-domains: Add support for mt8167 commit
Add binding and dts for Qualcomm SM8350 SoC commit, commit, commit, commit, commit, commit
qcom: socinfo: Add MDM9607 IDs commit
qcom: socinfo: Add SoC IDs for 630 family commit
qcom: socinfo: Add SoC IDs for APQ/MSM8998 commit
qcom: socinfo: add qrb5165 SoC ID commit
qcom: socinfo: add several PMIC IDs commit
KVM: Upgrade PMU support to ARMv8.4 commit
11.3. RISC-V
Add k/uprobe & fentry & error_injection commit, commit, commit, commit, commit, commit, commit, commit, commit
Add numa support for riscv64 platform commit
kasan: add KASAN_VMALLOC support commit
Add board and SoC DT file support commit, commit, commit, commit, commit, commit
Kendryte K210 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add machine name to kernel boot log and stack dump output commit
Enable per-task stack canaries commit
Add Canaan Kendryte K210 reset controller commit
11.4. POWERPC
perf: Expose Performance Monitor Counter SPR's as part of extended regs commit
perf: Adds support for programming of Thresholding in P10 commit
perf: Support exposing Performance Monitor Counter SPRs as part of extended regs commit
debug: Add debugfs entries for IOMMU tables commit
eeh: Add a debugfs interface to check if a driver supports recovery commit
- KVM
11.5. MIPS
Add N64 machine type commit
Add Realtek RTL838x/RTL839x support as generic MIPS system commit
Support extracting off-line stack traces from user-space with perf commit
Add support for Cisco SG220-26 switch commit
perf: Add support for OCTEON III perf events commit
11.6. CSKY
Add memory layout 2.5G(user):1.5G(kernel) commit
Add kmemleak support commit
Add VDSO support with GENERIC_GETTIMEOFDAY, GENERIC_TIME_VSYSCALL, HAVE_GENERIC_VDSO commit
11.7. S390
cpumf: Add support for complete counter set extraction commit
11.8. PA-RISC
Optimize per-pagetable spinlocks commit
11.9. C6X
c6x: remove architecture commit
12. Drivers
12.1. Graphics
- amdgpu
Enable freesync for A+A configs commit
GPU reset on navy flounder/vangogh commit, commit, commit, commit, commit
Add Freesync HDMI support to DMCU commit
Enable "trigger_hotplug" debugfs on all outputs commit
Enable HUBP blank behaviour commit
Implement T12 compliance commit
Add interface for request WGPs commit
Add support for hwmon control of slow and fast PPT limit on vangogh commit
Add two new sysfs nodes for vangogh commit
Add PCI reset support for several models commit, commit, commit
Add green_sardine device id (v2) commit
Add Missing Sienna Cichlid DID commit
Add new device id for Renior commit
Support ASPM for some specific ASIC commit
- Intel
Enable HDR on MCA LSPCON based Gen9 devices commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for Intel's eDP backlight controls commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow the sysadmin to override security mitigations commit
Gen7 per-engine-reset support commit
HDCP 2.2 and HDCP 1.4 Gen12 DP MST support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Clear Color Support for TGL Render Decompression commit, commit, commit
VRR/Adaptive Sync enabling on DP/EDP for TGL+ commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Async flips for all ilk+ platforms commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for DP-HDMI2.1 PCON commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Make GEM errors non-fatal by default commit
Show timeline dependencies for debug commit
Spring clean debugfs commit
Show all active timelines for debugging commit
debugfs: Record the plane update times for debugging commit
debugfs: remove the i915_cache_sharing debugfs file commit
- gma500
- ingenic
- mediatek
Add support for SoC MT8183 commit
- msm
- nouveau
- sun4i
Add support for BT2020 to DE3 commit
- tegra
falcon: Support newer VIC firmware commit
- vc4
Add support for the DSI0 controller in the BCM2835 and the DSI1 controller found in the BCM2711 commit, commit, commit, commit, commit, commit, commit
hdmi: Support the 10/12 bit output commit, commit, commit, commit, commit, commit, commit, commit, commit
hdmi: Add CEC support for the BCM2711 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- panel
drm: Add DisplayPort connector commit
12.2. Power Management
In modern systems the platform performance, temperature, fan and other hardware related characteristics are often dynamically configurable with one of several 'platform-profiles', with either a bias towards low-power consumption or towards performance (and higher power consumption and thermals). This feature introduces a new platform_profile sysfs API which offers a generic API for selecting the performance-profile of these automatic-mechanisms commit, commit
ACPI: Introduce support for Firmware Performance Data Table (FPDT), which provides information about firmware performance during system boot, S3 suspend and S3 resume in /sys/firmware/acpi/fpdt/ commit
clk: make PM clock layer compatible with clocks that must sleep commit
domains: Add "performance" column to debug summary commit
Better domain idle from device wakeup patterns commit, commit
cpupower: Support AMD Family 0x19 commit, commit, commit, commit, commit, commit, commit, commit
Add required-opps support to devfreq passive gov commit, commit, commit
(FEATURED) dtpm: Add the DTPM (Dynamic Thermal Power Management) framework. It allows to allocate a power budget to the different components where the resulting heating effect will comply with the skin temperature constraint commit, commit, commit, commit
powercap/intel_rapl: add support for AlderLake Mobile commit
thermal: Remove the 'forced_passive' option commit
cpufreq_cooling: Get effective CPU utilization from scheduler: makes the cpufreq_cooling driver reuse the CPU utilization metric provided by the scheduler instead of depending on idle and busy times of a CPU, which aren't that accurate to measure the busyness of a CPU for the next cycle commit, commit, commit
12.3. Storage
- SCSI
ibmvfc: initial MQ development/enablement commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ibmvfc: MQ preparatory locking work commit, commit, commit, commit, commit
lpfc: Implement health checking when aborting I/O commit
mpt3sas: Add support for shared host tagset for CPU hotplug commit
qla2xxx: Implementation to get and manage host, target stats and initiator port commit
qla2xxx: Add error counters to debugfs node commit
scsi_transport_fc: Add store capability to rport port_state in sysfs commit
ufs: Add "wb_on" sysfs node to control WB on/off commit
ufs: ufs-debugfs: Add error counters commit
hisi_sas: Enable debugfs support by default commit
hisi_sas: Add trace FIFO debugfs support commit
Drop gdth driver commit
nvme: support command retry delay for admin command commit
12.4. Drivers in the Staging area
allegro: move driver out of staging commit
comedi: adl_pci7x3x: Add interrupt handling for PCI-7230 commit
comedi: adv_pci_dio: Add interrupt handling for PCI-1730 commit
qlge: coredump via devlink health reporter commit
qlge: support force_coredump option for devlink health dump commit
rtl8188eu: Add Edimax EW-7811UN V2 to device table commit
staging: media: imx: Kconfig: support VIDEO_IMX7_CSI for imx8m commit
tegra-video: Add support for capturing from HDMI-to-CSI bridge commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
12.5. Networking
- Bluetooth
btqca: Add support to read FW build version for WCN3991 BTSoC commit
btqca: Enable MSFT extension for Qualcomm WCN399x commit
btrtl: Enable MSFT extension for RTL8822CE controller commit
btrtl: Enable central-peripheral role commit
btusb: Add protocol support for MediaTek MT7921U USB devices commit
btusb: Add support for GarfieldPeak controller commit
btusb: Enable MSFT extension for Intel controllers commit
hci_bcm: Add support for ISO packets commit
hci_h5: Add support for binding RTL8723DS with device tree commit
- RDMA/Infiniband
- ath10k
ath11k: add support to configure spatial reuse parameter set commit
axienet: Support dynamic switching between 1000BaseX and SGMII commit
- bcm63xx_enet
bnxt_en: Update firmware interface to 1.10.2.11 commit
- brcmfmac
broadcom: bcm4908enet: add BCM4908 controller driver commit
- can
- dpaa2-eth
- dsa
Add Arrow SpeedChips XRS700x driver commit
Automatically bring up DSA master when opening user port commit
b53: Support setting learning on port commit
bcm_sf2: support BCM4908's integrated switch commit
tag_8021q for Ocelot switches commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
felix: Add support for MRP commit
hellcreek: Add TAPRIO offloading support commit
mt7530: MT7530 optional GPIO support commit
mv88e6xxx: Link aggregation support commit
qca: ar9331: export stats64 commit
sja1105: offload bridge port flags to device commit
tag_ocelot_8021q: add support for PTP timestamping commit
xrs700x: add HSR offloading support commit
mediatek: support setting MTU commit
fsl/fman: Add MII mode support commit
- gtp
- hns3
- i40e
- ice
Implement a new LLDP command that allows adding VSI destinations to existing filters and adds support for netdev bonding event commit, commit
Implement the creation scheduler aggregator nodes and distributing VSIs within the nodes commit
Display some stored NVM versions via devlink info commit
Display stored UNDI firmware version via devlink info commit
Display stored netlist versions via devlink info commit
Introduce function for reading from flash modules commit
- igb
- iwlwifi
Add new cards for So and Qu family commit
Add support for Qu with AX201 device commit
Add support for SnJ with Jf devices commit
Support new scan config FW API commit
Add debugfs entry to trigger a dump as any time-point commit
Add debugfs for phy-integration-ver commit
Handle CCA-EXT delay firmware notification commit
Add AX201 and AX211 radio modules for Ma devices commit
Aadd support for SnJ with Hr1 commit
Add support for So-F devices commit
Implement support for PNVM from BIOS commit
Add support for version 2 of the LARI_CONFIG_CHANGE command commit
mac80211_hwsim: add 6GHz channels commit
mhi: Add MBIM over MHI support commit, commit, commit, commit, commit
mhi: Add raw IP mode support commit
- mlx5/mlx5e
Support 400Gbps IB rate in mlx5 driver commit
Support default partition key for representor port commit
mlx5 real time clock commit, commit, commit, commit, commit, commit
Introduce some refactoring to SW steering to support different formats of different Hardware commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
SW steering for ConnectX-6DX commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add mlx5 subfunction support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enable XDP for Connect-X IPsec capable devices commit
devlink trap support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Implement support for VF tunneling commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mlxsw: Support setting lanes via ethtool commit, commit, commit, commit, commit, commit, commit, commit
mscc: ocelot: Configuring congestion watermarks on ocelot switch using devlink-sb commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mscc: ocelot: offload bridge port flags to device commit
- mt76
mt7915: add implicit Tx beamforming support and enable it trough debugfs commit
mt7915: add support for flash mode commit
mt7915: add support for using a secondary PCIe link for gen1 commit
mt7915: support TxBF for DBDC commit
Introduce mt7921e support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mvneta: Implement mqprio support commit
- mvpp2
netdevsim: fib: Add debugfs to debug route offload failure commit
nfc: Add a virtual nci device driver commit
- octeontx2-af
Add Marvell CN10K support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add devlink and devlink health reporters commit
Ethtool support for fec and link configuration commit, commit, commit, commit, commit, commit, commit
Support ESP/AH RSS hashing commit
Add RSS multi group support commit
Add flow classification using IP next level protocol commit
pcs: add pcs-lynx 1000BASE-X support commit
- phy
icplus: cleanups and new features commit, commit, commit, commit, commit, commit, commit, commit, commit
Add 100 base-x mode commit
Add 5GBASER interface mode commit
at803x: add support for configuring SmartEEE commit
bcm7xxx: Add an entry for BCM72116 commit
broadcom: Set proper 1000BaseX/SGMII interface mode for BCM54616S commit
phy: introduce phydev->port commit
phy: micrel: Add KS8851 PHY support commit
phylink: Add 5gbase-r support commit
qede: add netpoll and per-queue coalesce support commit, commit, commit
- r8169
rt2800usb: add Sweex LW163V2 id's commit
- rtw88
- sfp
- stmmac
ti: Add switchdev support for AM65 CPSW NUSS driver to support multi port CPSW present on J721e and AM64 SoCs commit, commit, commit, commit
ti: cpsw_ale: add driver data for AM64 CPSW3g commit
- qmi_wwan
wil6210: Add Support for Extended DMG MCS 12.1 commit
Remove aurora nb8800 driver commit
12.6. Audio
Add n64 driver commit
dice: add support for Lexicon I-ONIX FW810s commit
- hda
hdsp: hardware output loopback commit
jack: implement software jack injection via debugfs commit
usb-audio: Add support for Pioneer DJM-750 commit
- ASoC
Intel: KMB: Support IEC958 encoded PCM format commit
Intel: bytcr_wm5102: Add machine driver for BYT/WM5102 commit
SOF: Intel: initial support to AlderLake-P commit
codec: Add driver for JZ4760 internal codec commit
codec: hdmi-codec: Support IEC958 encoded PCM format commit
codecs: adds support for two Codec Macro blocks(TX and RX) available in Qualcomm LPASS (Low Power Audio SubSystem) commit, commit, commit, commit, commit, commit, commit
cpcap: Implement set_tdm_slot for voice call support commit
mediatek: mt8192-mt6359: support audio over DP commit
stm32: i2s: add master clock provider commit
tegra: Add audio graph based card driver commit
txx9: Remove driver commit
Remove sirf prima/atlas drivers commit
Remove zte zx drivers commit
12.7. Tablets, touch screens, keyboards, mouses
Add N64 controller driver commit
elants_i2c: add support for eKTF3624 commit
xpad: add support for PowerA Enhanced Wired Controller for Xbox Series X|S commit
cros-ec-keyb: expose function row physical map to userspace commit
- HID
chicony: Add Wireless Radio Control feature for Chicony devices commit
hid-sensor-custom: Add custom sensor iio support commit
i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15 commit
i2c-hid: Introduce goodix-i2c-hid using i2c-hid core commit
intel-ish-hid: ipc: Add Tiger Lake H PCI device ID commit
logitech-dj: add support for keyboard events in eQUAD step 4 Gaming commit
logitech-dj: add support for the new lightspeed connection iteration commit
logitech-hidpp: add support for Unified Battery (1004) feature commit
New driver for PS5 'DualSense' controller commit, commit, commit, commit, commit, commit, commit, commit, commit
playstation: add DualSense player LED support commit
playstation: add initial DualSense lightbar support commit
playstation: add microphone mute support for DualSense commit
sony: Add support for tilt on guitar hero guitars commit
uclogic: Improve support for Trust Panora commit
12.8. TV tuners, webcams, video capturers
Turn the existing SMIA driver into a MIPI CCS driver while maintaining SMIA 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
allegro: add HEVC support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ov5647: Support RaspberryPi Camera Module commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
em28xx: Add support for Hauppauge USB QuadHD commit
i2c: Add driver for RDACM21 camera module commit
i2c: Add imx334 camera sensor driver commit
i2c: Add support for the OV5648 image sensor commit
i2c: Add support for the OV8865 image sensor commit
ir_toy: add another IR Droid device commit
mxl692: MaxLinear 692 ATSC demod/tuner driver commit
ov5647: Remove 640x480 SBGGR8 mode commit
ov5647: Support VIDIOC_SUBSCRIBE_EVENT commit
ti-vpe: cal: Implement subdev ops for CAMERARX commit
v4l2-async: Add waiting subdevices debugfs commit
v4l2-ctrl: Add control to indicate the priority id to be applied to base layer commit
v4l2-ctrl: Add new controls for QP and layer bitrate commit, commit, commit
Introduce new hfi platform layer commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
venus: add support to dump FW region commit
vidtv: Add media controller support commit
12.9. Universal Serial Bus
Support USB 3.2 multi-lanes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduced new Cadence USBSSP DRD Driver commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
cdns3: Add support for TI's AM64 SoC commit
chipidea: tegra: Support host mode commit
dwc3: add imx8mp dwc3 glue layer driver commit
dwc3: pci: ID for Tiger Lake CPU commit
dwc3: pci: add support for the Intel Alder Lake-P commit
dwc3: qcom: add ACPI device id for sc8180x commit
dwc3: qcom: add URS Host support for sdm845 ACPI boot commit
gadget: u_ether: support configuring interface names commit
host: ehci-tegra: Remove the driver commit
pd: Make SVDM Version configurable in VDM header commit
Add support for USB4 _OSC, a new _OSC method that is used to negotiate OS support for native USB4 features such as PCIe tunneling commit, commit, commit, commit
- serial
- typec
Add individual version numbers for the partner and the cable, and exposes them in the appropriate sysfs in /sys/class/type commit, commit, commit, commit, commit, commit
AMS, Collision Avoidance, and Protocol Error commit, commit, commit
typec: tcpci: Add Callback to Usb Communication capable partner commit, commit, commit
Common SVDM version and VDO from dt commit, commit, commit, commit, commit, commit, commit
ucsi: Determine common SVDM Version commit
usbtmc: Add USBTMC_IOCTL_GET_STB commit and USBTMC_IOCTL_GET_SRQ_STB commit
bdc: Remove the BDC PCI driver commit
12.10. Serial Peripheral Interface (SPI)
cadence-quadspi: Add QSPI controller support for Intel LGM SoC commit, commit, commit, commit, commit
Add SPI_NO_TX/RX support commit
cadence-quadspi: Add DTR support commit
orion: enable support for switching CS every transferred byte commit
pxa2xx: Add IDs for the controllers found on Intel Lynxpoint commit
pxa2xx: Add support for Intel Alder Lake PCH-P commit
realtek-rtl: Add support for Realtek RTL838x/RTL839x SPI controllers commit
support CS timing for HW & SW mode commit
Add Tegra Quad SPI driver commit, commit, commit, commit, commit, commit, commit, commit, commit
Remove sirf prima/atlas driver commit
txx9: Remove driver commit
Drop unused efm32 bus driver commit
12.11. Watchdog
Add watchdog driver for Intel !Keembay Soc commit
intel_scu_watchdog: Remove driver for deprecated platform commit
mt8192: add wdt support commit
remove coh901 driver commit
remove sirf atlas driver commit
remove sirf prima driver commit
remove tango driver commit
remove zte zx driver commit
12.12. Serial
Drop unused efm32 serial driver commit
cpm_uart: Add udbg support for enabling xmon commit
ifx6x60: Remove driver for deprecated platform commit
owl: Add support for kernel debugger commit
remove sirf prima/atlas driver commit
12.13. CPU Frequency scaling
sfi-cpufreq: Remove driver for deprecated firmware commit
qcom-hw: enable boost support commit
Remove tango driver commit
12.14. Device Voltage and Frequency Scaling
12.15. Voltage, current regulators, power capping, power supply
- power
reset: Add poweroff driver for ATC260x PMICs commit
reset: at91-sama5d2_shdwc: add support for sama7g5 commit
reset: remove zte zx driver commit
supply: Add battery gauge driver for Acer Iconia Tab A500 commit
supply: Add ltc4162-l-charger commit
supply: bq256xx: Introduce the BQ256XX charger driver commit
supply: cpcap-battery: Implement capacity reporting commit
- regulator
Really implement Qualcomm LAB/IBB regulators commit, commit, commit, commit, commit
Add regulator driver for ATC260x PMICs commit
Regulator driver for the Mediatek DVFSRC commit
bd9571mwv: Add BD9574MWF support commit
mt6315: Add support for MT6315 regulator commit
pf8x00: Add suspend support commit
qcom-rpmh-regulator: add pm8009-1 chip revision commit
rt4831: Adds support for Richtek RT4831 DSV regulator commit
remove ab3100 driver commit
- thermal:
12.16. Real Time Clock (RTC)
pcf8563: Add NXP PCA8565 compatible commit
remove sirfsoc driver commit
remove ste ab3100 driver commit
remove ste coh901 driver commit
mrst: Remove driver for deprecated platform commit
tx4939: Remove driver commit
12.17. Pin Controllers (pinctrl)
Add RISC-V Canaan Kendryte K210 FPIOA driver commit
at91-pio4: add support for slew-rate commit
ingenic: Improve JZ4760 support commit
qcom: Add SM8350 pinctrl driver commit
qcom: Add sc8180x TLMM driver commit
renesas: Initial R8A779A0 (V3U) PFC support commit
sunxi: Add support for the Allwinner H616 pin controller commit
sunxi: Add support for the Allwinner H616-R pin controller commit
tigerlake: Add Alder Lake-P ACPI ID commit
remove coh901 driver commit
remove sirf atlas/prima drivers commit
remove ste u300 driver commit
remove zte zx driver commit
12.18. Multi Media Card (MMC)
eMMC inline encryption support commit, commit, commit, commit, commit, commit, commit, commit
mmci: Add support for probing bus voltage level translator commit
sdhci-of-aspeed: Add AST2600 bus clock support commit
sdhci_am654: Add Support for TI's AM64 SoC commit
sunxi: add support for A100 mmc controller commit
remove dw_mmc-zx driver commit
remove sirf prima/atlas driver commit
12.19. Memory Technology Devices (MTD)
parsers: Add Qcom SMEM parser commit
rawnand: qcom: Add support for Qcom SMEM parser commit
spi-nor: Add Global Block Unlock command commit
spi-nor: intel-spi: Add support for Intel Alder Lake-P SPI serial flash commit
spi-nor: sst: Add support for Global Unlock on sst26vf commit
rawnand: tango: Remove the driver commit
12.20. Industrial I/O (iio)
Add timestamp channel for hid-sensors commit, commit, commit, commit, commit, commit
accel: kxcjk1013: Add rudimentary regulator support commit
adc: ad7476: Add LTC2314-14 support commit
ms_sensors:ms_sensors_i2c: add support for alternative PROM layout commit
dac: ad5766: add driver support for AD5766 commit
gyro: bmg160: Add rudimentary regulator support commit
hid-sensors: Add hinge sensor driver commit
imu: inv_mpu6050: Add support for MPU-6880 commit
light:apds9960 add detection for MSHW0184 ACPI device in apds9960 driver commit
magnetometer: Add driver for Yamaha YAS530 commit
magnetometer: bmc150: Add rudimentary regulator support commit
pressure:ms5637: add ms5803 support commit
xilinx-xadc: Add basic support for Ultrascale System Monitor commit
12.21. Multi Function Devices (MFD)
Add driver for Embedded Controller found on Acer Iconia Tab A500 commit
arizona: Add support for ACPI enumeration of WM5102 connected over SPI commit
bd9571mwv: Add support for BD9574MWF commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
intel-lpss: Add Intel Alder Lake PCH-P PCI IDs commit
intel-lpss: Add Intel Alder Lake PCH-S PCI IDs commit
intel-m10-bmc: Expose MAC address and count commit
intel_msic: Remove driver for deprecated platform commit
12.22. Pulse-Width Modulation (PWM)
Remove ZTE ZX driver commit
12.23. Inter-Integrated Circuit (I2C + I3C)
Drop unused efm32 bus driver commit
i801: Add support for Intel Alder Lake PCH-P commit
mlxcpld: Add support for I2C bus frequency setting commit
mux: mlxcpld: Extend driver functionality commit, commit, commit, commit, commit, commit
remove sirf bus driver commit
remove u300 bus driver commit
remove zte zx bus driver commit
i3c: master: svc: Add Silvaco I3C master driver commit
12.24. Hardware monitoring (hwmon)
Add AHT10 Temperature and Humidity Sensor Driver commit
Add Texas Instruments TPS23861 driver commit
amd_energy: Add AMD family 19h model 30h x86 match commit
k10temp: Zen3 Ryzen Desktop CPUs support commit
nct6683: Support ASRock boards commit
pmbus/max16601: Add support for MAX16508 commit
pmbus/max31785: Support revision "B" commit
pwm-fan: Support multiple fan tachometers commit
abx500: Decomission abx500 driver commit
12.25. General Purpose I/O (gpio)
bd9571mwv: Add BD9574MWF support commit
gpio-xilinx: Update on xilinx gpio driver commit, commit, commit, commit, commit
intel-mid: Remove driver for deprecated platform commit
mvebu: add pwm support for Armada 8K/7K commit
pca953x: Add support for pca9506 commit
rcar: Add R-Car V3U (R8A779A0) support commit
remove zte zx driver commit
visconti: Add Toshiba Visconti GPIO support commit
msic: Remove driver for deprecated platform commit
12.26. Leds
apu: extend support for PC Engines APU1 with newer firmware commit
lgm: Add LED controller driver for LGM SoC commit
trigger: implement a tty trigger commit
12.27. DMA engines
Add Intel LGM SoC DMA support commit
dw-axi-dmac: support Intel KeemBay AxiDMA commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
idxd: add module parameter to force disable of SVA commit
jz4780: Add support for the JZ4760(B) commit
owl: Add compatible for the Actions Semi S500 DMA controller commit
rcar-dmac: Add support for R-Car V3U commit
remove coh901318 driver commit
remove sirfsoc driver commit
remove zte zx driver commit
ti: k3-udma: Add support for burst_size configuration for mem2mem commit
12.28. Cryptography hardware acceleration
hisilicon: add ZIP device using mode parameter commit
hisilicon/hpre: enable Elliptic curve cryptography commit
Add Keem Bay OCS HCU driver commit, commit, commit, commit, commit
octeontx2: Add Support for Marvell OcteonTX2 CPT engine commit, commit, commit, commit, commit, commit, commit, commit, commit
sun4i-ss: enabled stats via debugfs commit
picoxcell: Remove PicoXcell driver commit
mediatek: remove obsolete driver commit
12.29. PCI
brcmstb: support BCM4908 with external PERST# signal controller commit
layerscape: Add LX2160A rev2 EP mode support commit
microchip: Add Microchip PolarFire PCIe controller driver commit
Remove tango host controller driver commit
12.30. Non-Transparent Bridge (NTB)
Implement NTB Controller using multiple PCI EP commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for EPF PCI Non-Transparent Bridge commit
12.31. Thunderbolt
Add support for PCIe tunneling disabled (SL5) commit
Add support for de-authorizing devices commit
Add support for native USB4 _OSC commit
Allow disabling XDomain protocol commit
12.32. Clock
Add RISC-V Canaan Kendryte K210 clock driver commit
clk-axiclkgen: add ZynqMP PFD and VCO limits commit
imx8mm: add clkout1/2 support commit
imx8mn: add clkout1/2 support commit
imx8mq: add PLL monitor output commit
mstar: MStar/SigmaStar MPLL driver commit
qcom: Add A7 PLL support commit
qcom: Add Global Clock controller (GCC) driver for SC7280 commit
qcom: Add SDM660 GPU Clock Controller (GPUCC) driver commit
qcom: Add SDX55 APCS clock controller support commit
qcom: clk-alpha-pll: Add support for Lucid 5LPE PLL commit
qcom: gcc-sm8350: add gdsc commit
qcom: gcc: Add clock driver for SM8350 commit
qcom: gcc: Add global clock controller driver for SC8180x commit
qcom: rpmh: Add support for RPMH clocks on SC7280 commit
qcom: rpmhcc: Add sc8180x rpmh clocks commit
renesas: r8a77965: Add TMU clocks commit
renesas: r8a7796: Add TMU clocks commit
renesas: r8a77990: Add TMU clocks commit
renesas: r8a77995: Add TMU clocks commit
renesas: v3u: add & update (H)SCIF nodes commit, commit, commit, commit, commit
renesas: v3u: add SDHI/MMC support commit, commit, commit, commit, commit, commit
renesas: v3u: add support for RWDT commit, commit, commit, commit
renesas: r8a779a0: Add FCP and VSP support commit, commit, commit
socfpga: agilex: add clock driver for eASIC N5X platform commit
sunxi-ng: Add support for the Allwinner H616 CCU commit
sunxi-ng: Add support for the Allwinner H616 R-CCU commit
vc5: Add support for optional load capacitance commit
Drop unused efm32gg driver commit
clocksource: atlas: Remove sirf atlas driver commit
clocksource: prima: Remove sirf prima driver commit
clocksource: tango: Remove tango driver commit
clocksource: u300: Remove the u300 driver commit
remove sirf prima2/atlas drivers commit
remove tango4 driver commit
remove u300 driver commit
remove zte zx driver commit
12.33. PHY ("physical layer" framework)
phy-brcm-usb: support PHY on the BCM4908 commit
qcom-qmp: Add SC8180X UFS phy commit
qcom-qmp: Add SC8180X USB phy commit
qcom-qmp: Add support for SDX55 QMP PHY commit
qcom-qusb2: Add configuration for SDM660 commit
qcom-qusb2: add QUSB2 support for IPQ6018 commit
12.34. CXL (Compute Express Link)
12.35. Various
bus: fsl-mc: enhance Management Complex userspace support commit, commit, commit, commit, commit
PCI: Add Silicom Denmark vendor ID commit
PCI: Add TI J721E device to PCI IDs commit
bus: mhi: core: Add device hardware reset support commit
bus: sunxi-rsb: Implement runtime power management commit
coresight: Add support for v8.4 SelfHosted tracing commit
coresight: etm-perf: Support PID tracing for kernel at EL2 commit
coresight: etm4x: Add support for sysreg only devices commit
coresight: etm4x: add AMBA id for Cortex-A55 and Cortex-A75 commit
drivers/soc/litex: support 32-bit subregisters, 64-bit CPUs commit
soc: atmel: add support for sama7g5 commit
soc: qcom: rpmpd: Add msm8994 RPM Power Domains commit
fpga: dfl: add dfl bus support to MODULE_DEVICE_TABLE() commit
fpga: dfl: add support for N3000 Nios private feature commit
habanalabs: add CS completion and timeout properties commit
habanalabs: add driver support for internal cb scheduling commit
habanalabs: add new mem ioctl op for mapping hw blocks commit
habanalabs: staged submission support commit
habanalabs: support fetching first available user CQ commit
habanalabs: support non power-of-2 DRAM phys page sizes commit
hwspinlock: omap: Add support for K3 AM64x SoCs commit
interconnect: qcom: Add MSM8939 interconnect provider driver commit
interconnect: qcom: Add SDX55 interconnect provider driver commit
interconnect: qcom: Consolidate interconnect RPM support commit
irqchip/ingenic: Add support for the JZ4760 commit
irqchip/sun6i-r: Use a stacked irqchip driver commit
irqchip: Add support for Realtek RTL838x/RTL839x interrupt controller commit
irqchip: Remove sigma tango driver commit
irqchip: Remove sirfsoc driver commit
mailbox: omap: Add support for K3 AM64x SoCs commit
mailbox: qcom: Add SC8180X apcs compatible commit
mailbox: qcom: Add support for SDX55 APCS IPC commit
mei: add support for client dma capability commit
mei: hbm: add client dma hbm messages commit
mei: implement client dma setup commit
mei: me: add adler lake point LP DID commit
mei: me: add adler lake point S DID commit
memory: dfl-emif: add the DFL EMIF private feature driver commit
memory: tegra124: Support interconnect framework commit
mhi: pci_generic: Misc improvements commit, commit, commit, commit, commit, commit, commit, commit, commit
misc: bcm-vk: Add Broadcom VK driver commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
misc: pti: Remove driver for deprecated platform commit
misc: pvpanic: introduce device capability commit
misc: pvpanic: introduce events device attribue commit
misc: remove atmel_tclib commit
nvmem: Add driver to expose reserved memory as nvmem commit
of: property: Add fw_devlink support for more props commit, commit
of: Make fw_devlink=on more forgiving commit, commit, commit, commit, commit, commit, commit, commit
remoteproc/mediatek: support L1TCM commit
remoteproc: ingenic: Add module parameter 'auto_boot' commit
remoteproc: qcom: pas: Add SM8350 PAS remoteprocs commit
remoteproc: qcom_wcnss: Add qcom,wcn3660b compatible commit
reset: simple: add BCM4908 MISC PCIe reset controller support commit
sfi: Remove framework for deprecated firmware commit
speakup: Make dectlk flush timeout configurable commit
tpm: add i2c driver for cr50 commit
13. List of Pull Requests
14. Other news sites
Phoronix Linux 5.12 Feature overview