82338
Comment:
|
880
|
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, Operative System, Linus Torvalds, Open Source, drivers, filesystems, network, memory management, scheduler, preemtion, locking #pragma description Summary of the changes and new features merged in the Linux Kernel during the 2.6.x and 3.x development Changes done in each Linux kernel release. Other places to get news about the Linux kernel are [[http://lwn.net/Kernel/|LWN kernel status]], [[http://www.h-online.com/open/features/|H-Online]], or the Linux Kernel mailing list (there is a web interface in [[http://www.lkml.org|www.lkml.org]]). List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules! |
Line 3: | Line 5: |
'''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.8)>> |
Changes done in each Linux kernel release. Other places to get news about the Linux kernel are LWN kernel status, H-Online, or the Linux Kernel mailing list (there is a web interface in www.lkml.org). List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules!
You can discuss the latest Linux kernel changes on the New Linux Kernel Features Forum.
Linux 5.8 has been released on Sun, 2 Aug 2020.
Summary: This release adds: memory management changes to improve the behaviour of systems under thrashing situations; a event notification mechanism built on top of standard pipes that splices messages from the kernel into pipes opened by userspace; support for having different procfs mounts with different mount options each one; a Kernel Concurrency Sanitizer that helps to find data race bugs; make it possible to use pidfds with setns(2) for easier attachment to the namespaces of a process; support for Shadow Call Stack and Branch Target Identification in ARM64 to prevent security exploits; support for Inline Encryption hardware; new CAP_BPF and CAP_PERFMON capabilities for BPF and performance monitoring programs; and IPv6 MPLS support. As always, there are many other new drivers and improvements.
Contents
-
Prominent features
- Better behavior in memory thrashing situations
- Kernel Concurrency Sanitizer
- Kernel event notification mechanism
- Private procfs instances
- Using pidfds to attach to namespaces
- Shadow Call Stack and Branch Target Identification for improved security on ARM64
- Support for Inline Encryption hardware
- Introduce CAP_BPF and CAP_PERFMON security capabilities
- IPv6 MPLS support
- bridge: Add support for Media Redundancy Protocol (MRP)
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing, perf and BPF
- Virtualization
- Cryptography
- Security
- Networking
- Architectures
-
Drivers
- Graphics
- Power Management
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Real Time Clock (RTC)
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Multi Function Devices (MFD)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C + I3C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Cryptography hardware acceleration
- PCI
- Non-Transparent Bridge (NTB)
- Thunderbolt
- Clock
- PHY ("physical layer" framework)
- EDAC (Error Detection And Correction)
- 1-Wire (W1)
- Firmware
- Various
- List of Pull Requests
- Other news sites
1. Prominent features
1.1. Better behavior in memory thrashing situations
The reclaim code that balances between swapping and cache memory reclaim tries to predict likely reuse of a memory page. When it fails it cannot detect when the cache is thrashing pathologically, or when the system is in the middle of a swap storm. This code has been tuned over time to a point where even in the presence of large amounts of cold anonymous memory and a capable swap device, the VM refuses to even seriously scan these pages, and can leave the page cache thrashing needlessly. The proliferation of fast random IO devices such as SSDs has made this undesirable behavior more noticeable.
This release sets out to address this. Since Linux 3.15, the kernel has exact tracking of refault IO - the ultimate cost of reclaiming the wrong pages. This allows to use an IO cost based balancing model that is more aggressive about scanning anonymous memory when the cache is thrashing, while being able to avoid unnecessary swap storms. This release base the LRU balance on the rate of refaults on each list, times the relative IO cost between swap device and filesystem (swappiness), in order to optimize reclaim for least IO cost incurred. The swapiness sysctl can also now be raised up to 200 to force the kernel to use swapping, which can be useful with in-memory swap, like zram or zswap.
1.2. Kernel Concurrency Sanitizer
The Kernel Concurrency Sanitizer (KCSAN) is a data race detector for the kernel. Key priorities in KCSAN's design are lack of false positives, scalability, and simplicity. KCSAN uses compile-time instrumentation to instrument memory accesses and it is supported in both GCC and Clang.
Documentation: The Kernel Concurrency Sanitizer (KCSAN)
Recommended LWN article: Concurrency bugs should fear the big bad data-race detector (part 1)
1.3. Kernel event notification mechanism
This release adds an event notification mechanism built on top of standard pipes, it splices notification messages from the kernel into pipes opened by userspace. The pipe is opened in a special mode, and its internal buffer is used to hold messages generated by the kernel, which are then read out by read(2). The owner of the pipe tells the kernel which sources it would like to watch through that pipe, and filters may also be emplaced on a pipe so that certain source types and subevents can be ignored if they’re not of interest. In this release, the only event source is for keys/keyrings, such as linking and unlinking keys and changing their attributes, which will be used by Gnome.
Documentation: General notification mechanism
Recommended LWN article: A kernel event notification mechanism
1.4. Private procfs instances
Procfs was historically tied to PID namespaces, this has the effect that all new procfs mounts are just a mirror of the internal one; any change, any mount option update, any new future introduction will propagate to all other procfs mounts in the same PID namespace.
This release allows to have several procfs mounts with different mounts options within the same PID namespace. The main aim of this work is to have on embedded systems one supervisor for apps. It also adds some convenient mount options that let a private procfs mount to show only ptraceable processes in the procfs, which allows to support lightweight sandboxes in Embedded Linux. Or a mount option that allows to hide non-pid inodes.
1.5. Using pidfds to attach to namespaces
This release makes it possible to use pidfds to attach to the namespaces of a process, i.e. they can be passed as the first argument to the setns(2) syscall. When a pidfd is passed, multiple namespace flags can be specified in the second argument and setns(2) will then attach the caller to all the specified namespaces all at once or to none of them. Eg: setns(pidfd, CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWNET);
These features support various use-cases where callers setns to a subset of namespaces to retain privilege, perform an action and then re-attach another subset of namespaces. Apart from reducing the number of syscalls needed to attach to all currently supported namespaces, this also allows to setns to a set of namespaces atomically, this is useful for a standard container manager interacting with a running container.
1.6. Shadow Call Stack and Branch Target Identification for improved security on ARM64
This release adds generic support for Clang's Shadow Call Stack on ARM64, which uses a shadow stack to protect function return control flow from buffer overruns on the main stack.
There is also support for ARMv8.5-BTI in both user- and kernel-space. This allows branch targets to limit the types of branch from which they can be called and additionally prevents branching to arbitrary code.
Recommended LWN article: Some near-term arm64 hardening patches
1.7. Support for Inline Encryption hardware
This release supports Inline Encryption in the block layer. Inline Encryption hardware allows software to specify an encryption context (an encryption key, crypto algorithm, data unit num, data unit size, etc.) along with a data transfer request to a storage device, and the inline encryption hardware will use that context to en/decrypt the data. The inline encryption hardware is part of the storage device, and it conceptually sits on the data path between system memory and the storage device.
Recommended LWN article: Inline encryption for filesystems
1.8. Introduce CAP_BPF and CAP_PERFMON security capabilities
Using BPF has required the CAP_SYS_ADMIN capability to run. This means that software that needs to use BPF needs that capability, which grants way too many privileges. This releases grants access to BPF functionality with a new CAP_BPF capability combined with CAP_PERFMON, CAP_NET_ADMIN and some of them kept under CAP_SYS_ADMIN. The user process has to have: CAP_BPF to create maps and do other sys_bpf() commands, CAP_BPF and CAP_PERFMON to load tracing programs, and CAP_BPF plus CAP_NET_ADMIN to load networking programs.
This release also adds the CAP_PERFMON capability for performance monitoring and observability.
Recommended LWN article: CAP_PERFMON — and new capabilities in general
1.9. IPv6 MPLS support
This release extends the Multi-Protocol Label Switching support to IPv6.
1.10. bridge: Add support for Media Redundancy Protocol (MRP)
This release adds support for the Media Redundancy Protocol is a data network protocol standardized by International Electrotechnical Commission as IEC 62439-2. It allows rings of Ethernet switches to overcome any single failure with recovery time faster than STP. It is primarily used in Industrial Ethernet applications.
2. Core (various)
(FEATURED) Add Kernel Concurrency Sanitizer (KCSAN) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Add a general notification queue concept and add an event source for keys/keyrings, such as linking and unlinking keys and changing their attributes. Key/keyring notifications are desirable because if you have your kerberos tickets in a file/directory, your Gnome desktop will monitor that and tell you if your credentials cache changes. The notification queue is built on top of a standard pipe. Messages are effectively spliced in. The pipe is opened with a special flag: pipe2(fds, O_NOTIFICATION_PIPE). The pipe is then configured and messages are read out of the pipe. LSM hooks are included: A set of hooks are provided that allow an LSM to rule on whether or not a watch may be set, and a hook to allow an LSM to rule on whether or not a particular message may be posted to a particular queue commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Add support for Clang's Shadow Call Stack mitigation, which uses a separately allocated shadow stack to protect against return address overwrites commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) namespaces: make it possible to use pidfds to attach to the namespaces of another process, i.e. they can be passed as the first argument to the setns(2) syscall. Multiple namespace flags can be specified in the second setns() argument and setns() will attach the caller to all the specified namespaces all at once or to none of them. The obvious example where this is useful is a standard container manager interacting with a running container: pushing and pulling files or directories, injecting mounts, attaching/execing any kind of process, etc. It also allows to switch to a set of namespaces atomically commit, commit, commit
- VFS
(FEATURED) procfs: support multiple private instances commit, commit, commit, commit, commit, commit, commit, commit
Add faccessat2(2) syscall. POSIX defines faccessat() as having a fourth "flags" argument, while the linux syscall doesn't have it. Glibc tries to emulate AT_EACCESS and AT_SYMLINK_NOFOLLOW, but AT_EACCESS emulation is broken. This release adds a new faccessat(2) syscall with the added flags argument and implement both flags commit
utimensat(2): AT_EMPTY_PATH support, this makes it possible to use utimensat on an O_PATH file (including symlinks) commit
Allow unprivileged whiteout creation commit
Have syncfs() return error when there are writeback errors commit, commit
Support setting sysctl parameters from kernel command line in the form of sysctl.vm.something=1 commit, commit, commit, commit, commit
cgroup: add cpu.stat file to root cgroup commit
dynamic_debug: add an option to enable dynamic debug for modules only commit
- EFI
GOP: Add the ability to use a command-line option to switch the gop's display mode. The options supported are: video=efifb:mode=n to choose a mode; video=efifb:<xres>x<yres>[-(rgb|bgr|<bpp>)] to specify mode by resolution and optionally color depth; and video=efifb:auto to let the EFI stub choose the highest resolution mode available commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Make initrd file loader configurable commit
Add a basic printf implementation for the EFI stub to use commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- io_uring
Add tee(2) support commit
Add support for enabling/disabling notifications on a registered eventfd commit, commit
Allow IORING_OP_POLL with double waitqueues commit
Enable closing of the ring itself commit
Export cq overflow status to userspace by adding new IORING_SQ_CQ_OVERFLOW flag commit
io_uring: call statx directly commit, commit, commit, commit
PM: allow to disable snapshot device commit
init: allow to configure the default init commit
kcov: collect coverage from usb soft interrupts commit, commit, commit, commit, commit, commit, commit
Introduce sysctl hung_task_all_cpu_backtrace to print all traces when a hung task is detected commit
panic: add sysctl oops_all_cpu_backtrace to dump all CPUs backtraces on oops event commit
panic: Add panic_on_taint boot option in order to provide a simple and generic way to stop execution and catch a coredump when the kernel gets tainted by any given taint flag commit
- Locking
Introduce the concept of local_locks, which are strictly per CPU and satisfy the constraints required by PREEMPT_RT commit, commit, commit, commit, commit, commit, commit
Prototype RCU usable from idle, exception, offline commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Build
Support 'userprogs' syntax commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add variables for compression tools, eg make GZIP=pigz BZIP2=pbzip2 commit
- objtool
Implement noinstr validation (no-instrument) to ensure critical code (entry for now, idle later) run no unexpected code commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support compressed debug info commit
Enable compilation of objtool for all architectures commit, commit, commit
Changes to check retpoline code commit, commit, commit, commit, commit, commit, commit
kgdb: Support late serial drivers; enable early debug w/ boot consoles commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
3. File systems
- BTRFS
Speedup dead root detection during orphan cleanup, eg. when there are many deleted subvolumes waiting to be cleaned commit
Read repair/direct I/O improvements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Snapshot creation with inherited qgroup will mark the qgroup inconsistent, requires a rescan commit
btrfs send will emit file capabilities after chown, this produces a stream that does not need postprocessing to set the capabilities again commit
Deal with a few ENOSPC corner cases commit, commit, commit, commit, commit
- CIFS
Add new parm nodelete, which allows standard permission checks on the server to work, but prevents on the client any attempts to unlink a file or delete a directory on that mount point commit
Add support for idsfromsid on create and also for chgrp/chown allowing ability to save owner information more naturally for some workloads. Improves getattr when SMB3.1.1 posix extensions are negotiated by using new query info level commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Ensure several mount parameters work properly on multiuser mounts for non-root users commit, commit, commit, commit, commit, commit
- FSCRYPT
- EXT4
- XFS
- F2FS
Introduce sysfs/data_io_flag to attach REQ_META/FUA commit
Support read iostat commit
Support partial truncation on compressed inode commit
Support fiemap on compressed inode commit
compress: support lzo-rle compress algorithm commit
Introduce F2FS_IOC_RESERVE_COMPRESS_BLOCKS commit and F2FS_IOC_RELEASE_COMPRESS_BLOCKS commit
Add compressed/gc data read IO stat commit
- OVERLAYFS
- PSTORE
- SQUASHFS
squashfs: migrate from ll_rw_block usage to BIO - decreases boot time by close to 40% when using squashfs for the root file-system commit
- AFS
Various improvements: Improve callback processing, improve keeping NAT or firewall channels open, improving detection of delayed or lost callbacks, determine aliasing of cells, improve the fileserver rotation commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- OCFS2
Mount shared volume without ha stack commit
- EROFS
Convert to use the new mount fs_context api commit
- EXFAT
Add boot region verification commit
- FAT
Improve the readahead for FAT entries commit
4. Memory management
(FEATURED) Balance LRU lists based on relative thrashing: The reclaim code that balances between swapping and cache reclaim tries to predict likely reuse based on in-memory reference patterns alone. The balancing code has been tuned over time to a point where it mostly goes for page cache and defers swapping until the VM is under significant memory pressure. Since commit a528910e12ec Linux has exact tracking of refault IO - the ultimate cost of reclaiming the wrong pages. This allows us to use an IO cost based balancing model that is more aggressive about scanning anonymous memory when the cache is thrashing, while being able to avoid unnecessary swap storms commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
swap: speed up swapoff by properly updating readahead statistics commit
swap: improve swap scalability reduce lock contention on swap cache from swap slots allocation commit
swap: improve swap scalability by trying to scan more free slots even when fragmented commit
memory_hotplug: Interface to add driver-managed system ram commit, commit, commit
Expand the atomic DMA pools for the various possible gfp requirements as a means to prevent an unnecessary depletion of lowmem. This allows devices that required unencrypted memory to do non-blocking allocations through the DMA API commit, commit, commit, commit, commit, commit, commit
Expand the cases khugepaged can handle and switch anon-THP copy-on-write handling to 4k commit, commit, commit, commit, commit, commit, commit, commit
- memcg
Expose root cgroup's memory.stat commit
Add workingset_restore in memory.stat commit
Slow down swap allocation as the available space gets depleted. It adds a memory.swap.high knob, which can be used to protect the system from SWAP exhaustion. The mechanism used for penalizing is similar to memory.high penalty (sleep on return to user space) commit, commit, commit, commit
Optimize memory.numa_stat like memory.stat commit
Reworks memcg to charge swapin pages directly at swapin time, rather than at fault time, which may be much later, or not happen at all commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Improvements about lowmem_reserve and /proc/zoneinfo commit, commit, commit
Change readahead API commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Parallelize deferred struct page init commit, commit, commit, commit, commit, commit, commit, commit
Add a new mmap locking API wrapping mmap_sem calls commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
5. Block layer
loop: Add LOOP_CONFIGURE ioctl. This allows userspace to completely setup a loop device with a single ioctl, removing the in-between state where the device can be partially configured commit
Add support for Inline Encryption to the block layer. Inline Encryption hardware allows software to specify an encryption context (an encryption key, crypto algorithm, data unit num, data unit size, etc.) along with a data transfer request to a storage device, and the inline encryption hardware will use that context to en/decrypt the data. The inline encryption hardware is part of the storage device, and it conceptually sits on the data path between system memory and the storage device commit, commit, commit, commit, commit
- Device Mapper
dm crypt: support using encrypted keys commit
Add emulated block size target. Its main purpose is to emulate 512 byte sectors on 4K native disks commit
dma-zoned: Add a new metadata version 2, which brings the following improvements: UUIDs and labels, extend random zones by an additional regular disk device, and tertiary superblock support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dm mpath: add Historical Service Time Path Selector. It keeps an exponential moving average of the service time for each path, and uses this along with the number of inflight requests to estimate future service time for a path commit
dm ebs: pass discards down to underlying device commit
dm bufio: implement discard commit
dm writecache: improve performance on DDR persistent memory (Optane) commit
dm-zoned: improve cache performance commit, commit, commit, commit, commit, commit
dm-zoned: multiple drive support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- CEPH
6. Tracing, perf and BPF
(FEATURED) Introduce CAP_PERFMON to secure system performance monitoring and observability commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- BPF
(FEATURED) Introduce CAP_BPF to split BPF operations that are allowed under CAP_SYS_ADMIN into combination of CAP_BPF, CAP_PERFMON, CAP_NET_ADMIN and keep some of them under CAP_SYS_ADMIN. The user process has to have: CAP_BPF to create maps and do other sys_bpf() commands, CAP_BPF and CAP_PERFMON to load tracing programs, and CAP_BPF plus CAP_NET_ADMIN to load networking programs commit, commit, commit
bpftool: Allow probing for CONFIG_HZ from kernel config commit
Add get{peer,sock}name cgroup attach types to the BPF sock_addr programs in order to enable rewriting sockaddr structs commit, commit, commit, commit
Add sk_msg and networking helpers to all networking programs with perfmon_capable() capabilities commit, commit, commit, commit, commit
Implement a new BPF ring buffer, as presented at BPF virtual conference. It presents an alternative to perf buffer, following its semantics closely, but allowing sharing same instance of ring buffer across multiple CPUs efficiently commit, commit, commit, commit, commit
The bpf iterator provides in-kernel aggregation abilities for kernel data. This can greatly improve performance compared to e.g., iterating all process directories under /proc commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce a new bpf_link type for attaching to network namespace commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add rx_queue_mapping to bpf_sock commit
Sharing bpf runtime stats with BPF_ENABLE_STATS commit, commit, commit
Add various observability APIs to bpf_link commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for XDP programs in DEVMAP entries commit, commit, commit, commit, commit
Extending bpf_setsockopt with SO_BINDTODEVICE sockopt commit, commit, commit
Allow TC programs to call BPF_FUNC_skb_change_head, it allows TC eBPF programs to modify and forward (redirect) packets from interfaces without ethernet headers (for example cellular) to interfaces with (for example ethernet/wifi) commit
Allow any port in bpf_bind helper commit, commit, commit, commit
Enable BPF programs to fetch sockets from SOCKMAP/SOCKHASH by doing a map lookup commit, commit, commit
Allow a bunch of existing sk lookup and skb cgroup id helpers, and adds two new bpf_sk_{,ancestor_}cgroup_id helpers to be used in cgroup skb programs commit, commit, commit, commit, commit
bpf_{g,s}etsockopt for struct bpf_sock_addr commit
Adjust uapi for devmap prior to kernel release commit, commit
Enable more helpers for BPF_PROG_TYPE_CGROUP_{DEVICE, SYSCTL, SOCKOPT} commit
Add bpf_ktime_get_boot_ns() as a mirror of bpf_ktime_get_ns() based around CLOCK_BOOTTIME instead of CLOCK_MONOTONIC commit
cgroup: allow multi-attach program to replace itself commit
libbpf: Add API to consume the perf ring buffer content commit
libbpf: Add BTF-defined map-in-map support commit, commit, commit
bpftool: Allow unprivileged users to probe features commit
- Perf:
perf annotate: Add basic support for bpf_image commit
- Add a benchmark for synthesis performance in a new benchmark collection called 'internals'
Add a multi-threaded version of the internals synthesize benchmark commit, commit, commit
perf bench: Add event synthesis benchmark commit, commit, commit, commit
Improvements for kallsyms__parse, which improve perf record startup time commit, commit, commit
Stitch LBR call stack commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf config: Add stat.big-num support commit
Make Perf tool aware of SELinux access control commit, commit, commit
perf list: Add metrics to command line usage commit
Share events between metrics commit, commit, commit, commit, commit, commit, commit
perf probe: Accept the instance number of kretprobe event commit
perf record: Add --num-thread-synthesize option to specify number of threads to run for event synthesis commit
perf record: Implement --switch-output-event commit, commit, commit, commit, commit, commit, commit, commit, commit
perf script: Add flamegraph.py script commit
perf stat: Support overall statistics for interval mode commit, commit, commit, commit, commit
perf tools: Add optional support for libpfm4 commit
perf tools: Support CAP_PERFMON capability commit
tracing: Make synthetic events a separate option commit, commit
tracing: histogram internals doc, hist_debug, and misc commit, commit, commit
7. Virtualization
VMBus channel interrupt reassignment. This feature can be used for load balancing or other purposes (e.g. CPU offlining) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- KVM
Add UAPIs to support migration for VFIO devices commit, commit, commit, commit, commit, commit, commit, commit
vfio-pci: Block user access to disabled device MMIO commit, commit, commit
vDPA: doorbell mapping commit, commit, commit, commit, commit
virtio-mem: Paravirtualized memory hot(un)plug commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
vmxnet3: upgrade to version 4 (with several new features which includes offload support for tunnel packets, support for new commands the driver can issue to emulation, change in descriptor fields, etc) commit, commit, commit, commit
8. Cryptography
9. Security
LSM: Add hook to set*gid syscalls commit
lockdown: Allow unprivileged users to see lockdown status commit
audit: log audit netlink multicast bind and unbind commit
apparmor: provides a /proc/self/attr/apparmor/ subdirectory. Enabling userspace to use the apparmor attributes without having to worry about collisions with selinux or smack on interface files in /proc/<pid>/attr commit
- SELinux
A number of improvements to various SELinux internal data structures to help improve performance commit, commit, commit
Add a new SELinux policy version which allows for a more space efficient way of storing the filename transitions in the binary policy. Given the default Fedora SELinux policy with the unconfined module enabled, this change drops the policy size from ~7.6MB to ~3.3MB. The kernel policy load time dropped as well commit
10. Networking
Make the number generation more random to complicate remote observations that could lead to guessing the network RNG's internal state commit
Add RFC 2863 Oper status testing support. An interface is placed into this state when a self test is performed using ethtool commit, commit, commit
Add infrastructure in ethtool and phylib support for triggering a cable test and reporting the results commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
New sysctl to turn off nexthop API compat mode which is on by default but provides the ability to turn off compatibility mode allowing systems to run entirely with the new routing API if they wish to. Old route API behaviour and support is not modified by this sysctl commit, commit, commit
(FEATURED) IPv6: add MPLS support commit, commit, commit, commit, commit
IPv6: Implement the upcoming rev of RFC4941 (IPv6 temporary addresses) commit
netlink: add infrastructure to expose policies to userspace commit
namespaces: enable to inherit devconf from current namespace. The goal is to be able to inherit the initial devconf parameters from the current netns, ie the netns where this new netns has been created. This is useful in a containers environment where /proc/sys is read only. For example, if a pod is created with specifics devconf parameters and has the capability to create netns, the user expects to get the same parameters than his 'init_net', which is not the real init_net in this case commit
Introduce netns_bpf for BPF programs attached to netnamespace commit
Relax SO_TXTIME CAP_NET_ADMIN check to allow QUIC/UDP applications to use EDT model so that pacing can be offloaded to the kernel (sch_fq) or the NIC commit
TCP: Allow traceroute -Mtcp for unprivileged users commit
IPv6: support RFC 6069 (TCP-LD) commit
Add IPv6 encapsulation support for ESP over UDP and TCP commit, commit
- XDP
Introduce AF_XDP buffer allocation API commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
XDP extend with knowledge of frame size commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
XDP: Add egress_ifindex to xdp context for bpf programs to see the Tx device commit
- bridge
(FEATURED) Add support for Media Redundancy Protocol(MRP), which allows rings of Ethernet switches to overcome any single failure with recovery time much faster than achievable with Spanning Tree Protocol commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow enslaving some DSA master network devices commit, commit, commit, commit
- 802.11
Initial definitions for S1G (802.11ah) commit, commit, commit, commit
Support bigger kek/kck key length commit
Support multicast RX registration commit
Allow SA-QUERY processing in userspace commit
Implement Operating Mode Notification extended NSS support commit
Support control port TX status reporting commit
Add support to configure TID specific Tx rate configuration commit
devlink: Add support for control packet traps commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Packet scheduler
- dsa
erspan: Add type I frame format version 0 commit
- inet_diag
- Netfilter
Support for fdb ECMP nexthop groups commit, commit, commit, commit, commit
qrtr: Add MHI transport layer commit
sit: handle userspace requests for various ioctls commit
- smc
Add event-based framework for LLC msgs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Preparations for SMC-R link failover commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add failover processing commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add and delete link processing commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Extent buffer mapping and port handling commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- TIPC
- Bluetooth
Add BT_MODE socket option commit
Experimental feature support commit, commit, commit, commit, commit, commit, commit
Add framework for Microsoft vendor extension commit
Add support for Read Local Simple Pairing Options commit
Add support for reading security information commit
Always request for user confirmation for Just Works (LE SC) commit
Always request for user confirmation for Just Works commit
Enable LE Enhanced Connection Complete event commit
L2CAP: add support for waiting disconnection resp commit
Add support to notify using SCO air mode commit
debugfs option to unset MITM flag commit
- RDMA
Add Enhanced Connection Established (ECE), a new negotiation scheme introduced in IBTA v1.4 to exchange extra information about nodes capabilities and later negotiate them at the connection establishment phase commit, commit, commit, commit, commit, commit
Enable asynchronous event FD per object commit, commit, commit, commit, commit, commit, commit
Add support for RTRS (RDMA Transport), a reliable high speed transport library which allows for establishing connection between client and server machines via RDMA. RTRS is multipath capable and provides I/O fail-over and load-balancing functionality. RNBD (RDMA Network Block Device) is a pair of kernel modules (client and server) that allow for remote access of a block device on the server over RTRS protocol commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
psample: Add tunnel support commit
11. Architectures
11.1. ARM
- Device Tree updates
The Renesas shmobile platform gains support for "RZ/G1H" (r8a7742), a high-end 32-bit industrial SoC and the iW-RainboW-G21D-Qseven-RZG1H board/SoM commit, commit, commit, commit, commit, commit, commit, commit
Add new SoC Realtek RTD1195, an older Cortex-a7 based relative of the RTD12xx chips commit
Add new SoCs Realtek RTD1395 and RTD1619, three SoCs used in both NAS devices and Android Set-top-box designs, along with the "Horseradish", "Lion Skin" and "Mjolnir" reference platforms; the Mele X1000 and Xnano X5 set-top-boxes and the Banana Pi BPi-M4 single-board computer commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add SoC Rockchips RK3326, low-end 64-bit SoC along with the Odroid-GO Advance game console commit, commit, commit
Add AMLogic S905D based Smartlabs SML-5442TW TV box commit, commit
Add AMLogic S905X3 based ODROID-C4 SBC commit
Add AMLogic S922XH based Beelink GT-King Pro TV box commit, commit, commit, commit
Add Allwinner A20 based Olimex A20-OLinuXino-LIME-eMMC SBC commit, commit
Add Aspeed ast2500 based BMCs in Facebook x86 "Yosemite V2" and YADRO OpenPower P9 "Nicole" commit, commit
Marvell Kirkwood based Check Point L-50 router commit
Mediatek MT8173 based Elm/Hana Chromebook laptops commit
Microchip SAMA5D2 "Industrial Connectivity Platform" reference board commit, commit
NXP i.MX8m based Beacon i.MX8m-Mini SoM development kit commit
Octavo OSDMP15x based Linux Automation MC-1 development board commit, commit
Qualcomm SDM660/SDM630 platform and the Xiaomi Redmi Note 7 (lavender) phone commit, commit, commit
STMicroelectronics STM32MP1 based Stinger96 single-board computer and IoT Box commit, commit
Samsung Exynos4210 based based Samsung Galaxy S2 phone commit, commit
TI am5729 based Beaglebone-AI development board commit
colibri: introduce device trees with UHS-I support commit
The PXA platform drops support for Compulab's pxa2xx boards that had rather unusual flash and PCI drivers but no known users remaining commit
- coresight
tegra: fuse: Add custom SoC attributes commit
qcom: cmd-db: Add debugfs dumping file commit
ti: add k3 platforms chipid module driver commit
perf arm-spe: Add support for synthetic events commit, commit, commit
- ARM64
Add missing 32 bit system registers (ID_PFR2, ID_DFR1 and ID_MMFR5) and add missing features bits on all existing system registers (32 and 64 bit) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
crash_core: Export KERNELPACMASK in vmcoreinfo commit, commit
(FEATURED) Branch Target Identification support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for protecting the kernel and vDSO with BTI including code compiled with the BPF JIT at runtime commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow the compat vdso (32b) to be compiled as either THUMB2 (default) or ARM commit
Support enabling dirty log gradually in small chunks commit
11.2. MIPS
Identify Loongson-2K processors commit
Add page soft dirty tracking commit
ingenic: Add support for GCW Zero prototype commit
CPUCFG emulation future-proofing & HWCAP addition commit, commit, commit
Loongson-3: Add some unaligned instructions emulation commit
Loongson: Add support for perf tool commit
perf: Add hardware perf events support for new Loongson-3 commit
Prepare MIPS-arch code for Baikal-T1 SoC support commit, commit, commit, commit, commit, commit, commit, commit, commit
KVM: Add Loongson-3 support (Host Side) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Remove support for LASAT commit
Remove PMC MSP71xx platform commit
Remove NEC MARKEINS/EMMA commit
11.3. X86
Fixes for the new SRBDS security issue. SRBDS is an MDS-like speculative side channel that can leak bits from the random number generator (RNG) across cores and threads. New microcode serializes the processor access during the execution of RDRAND and RDSEED. This ensures that the shared buffer is overwritten before it is released for reuse. This is equivalent to a full bus lock, which means that many threads running the RNG instructions in parallel have the same effect as the same amount of threads issuing a locked instruction targeting an address which requires locking of two cachelines at once commit, commit, commit, commit
Add an initrdmem= option to specify initrd physical address commit
- platform
Add Elkhart Lake SCU/PMC support commit
Add Slim Bootloader firmware update signaling driver commit
ISST: Add new PCI device ids commit
thinkpad_acpi: Add support for dual fan control commit
touchscreen_dmi: Add info for the MP-man MPWIN895CL tablet commit
touchscreen_dmi: Add info for the ONDA V891 v5 tablet commit
touchscreen_dmi: Add info for the Trekstor Yourbook C11B commit
touchscreen_dmi: Add touchscreen info for techBite Arc 11.6 commit
touchscreen_dmi: add Vinga J116 touchscreen commit
Remove CONFIG_DOUBLEFAULT on 32 bits commit
Drop deprecated DISCONTIGMEM support for 32-bit commit
amd_nb: Add AMD family 17h model 60h PCI IDs commit
Introduce TPAUSE instruction that suspends execution in a lower power state until the TSC (Time Stamp Counter) exceeds a certain value commit, commit, commit
binfmt_elf: Update READ_IMPLIES_EXEC logic for modern CPUs commit, commit, commit, commit, commit, commit
Support XSAVES supervisor states in preparation for new features that will make use of supervisor xstates commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mce: Add mce=print_all option commit
resctrl: Support wider MBM counters commit, commit, commit, commit, commit, commit, commit
split_lock: Add Icelake microserver and Tigerlake CPU models commit
tsc: Add tsc_early_khz command line parameter commit
- intel_th
iommu/vt-d: Add page request draining support commit, commit, commit, commit, commit
- perf
rapl: Add AMD Fam17h RAPL support commit
rapl: Add Ice Lake RAPL support commit
perf: Add hardware performance events support for Zhaoxin CPU commit
perf intel-pt: Sampling improvements commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
perf intel-pt: Add support for synthesizing branch stacks for regular events commit, commit, commit, commit, commit, commit, commit, commit, commit
powercap/intel_rapl: add support for ElkhartLake commit
efi: Support builtin command line commit
- KVM
VMX: enable X86_FEATURE_WAITPKG in KVM capabilities commit
Improve latency for single target IPI fastpath commit
nSVM: migration support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add module param to force TLB flush on root reuse commit
Support full width counting commit
Interrupt-based mechanism for async_pf 'page present' notifications commit, commit, commit, commit, commit, commit, commit
Nested Shared Virtual Address (SVA) VT-d support: Shared virtual address (SVA), a.k.a, Shared virtual memory (SVM) on Intel platforms allow address space sharing between device DMA and applications. SVA can reduce programming complexity and enhance security. This enables SVA virtualization, i.e. enable use of SVA within a guest user application commit, commit, commit, commit, commit, commit, commit, commit
hyper-v: add support for synthetic debugger commit, commit, commit, commit, commit, commit, commit, commit
11.4. POWERPC
crypto/nx: Enable GZIP engine and provide userpace API commit, commit, commit, commit, commit, commit, commit, commit, commit
powerpc/papr_scm: Add support for reporting nvdimm health commit, commit, commit, commit, commit, commit
Initial Prefixed Instruction support: A future revision of the ISA will introduce prefixed instructions. A prefixed instruction is composed of a 4-byte prefix followed by a 4-byte suffix. This series enables prefixed instructions and extends the instruction emulation to support them commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
powerpc/32: Disable KASAN with pages bigger than 16k commit
Modernise powerpc 40x commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Use hugepages to map kernel mem on 8xx commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Base support for POWER10 commit, commit, commit, commit, commit, commit
hv-24x7: Expose chip/sockets info to add json file metric support for the hv_24x7 socket/chip level events commit, commit, commit, commit, commit
Enables memory hot-remove after reboot on pseries guests commit
Track and expose idle PURR and SPURR ticks commit, commit, commit, commit, commit
xmon: Support 2nd DAWR commit
Add stress_slb kernel boot option to increase SLB faults and stress test some code commit
11.5. RISCV
Add KGDB and KDB support commit, commit, commit, commit, commit
Allow device trees to be built into the kernel commit
K210: Add a built-in device tree commit
Use 16KB kernel stack on 64-bit commit
11.6. S390
Expose new port attribute for PCIe functions commit
Add pci=norid} when on, disallow the use a new firmware field, RID commit
qeth: add debugfs file for local IP addresses commit
vfio-ccw: Channel Path Handling commit, commit, commit, commit, commit, commit, commit, commit
vfio-ccw: Enable transparent CCW IPL from DASD commit
11.7. ARC
11.8. M68K
mcf5441x: add support for esdhc mmc controller commit
11.9. SH
Remove sh5 support commit
11.10. PARISC
Add sysctl file interface panic_on_stackoverflow commit
12. Drivers
12.1. Graphics
Managed DRM resources, a little internal framework for managed resources tied to the drm_device lifetime commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Intel
Global sseu pinning commit
Per-engine default property values in sysfs commit
- Tigerlake GEN12 enabled.
Cherryview full-ppgtt support commit
Add new PCI IDs to TGL commit
Add YUV444 packed format support for skl+ commit
Port sync for skl+ commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add debugfs entry for DP phy compliance commit
Add connector debugfs for all connectors commit
Add i915_lpsp_capability debugfs commit
Add i915_lpsp_status debugfs attribute commit
Drop stage_pool debugfs commit
- amdgpu
Introduce secure buffer object support (trusted memory zone) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support FP16 pixel format commit
Introduces ACQUIRE_MEM packet submission at the begining of each gfx IB if requested by user mode client. This is helpful in solving issues with cache coherency during amdgpu_test and Vulkan CTS tests commit, commit, commit, commit
FRU chip access support commit
VCN DPG (powergating) enablement commit
Add autodump debugfs node for gpu reset commit
Add HDCP caps debugfs commit
p2p dma-buf support commit
gfx10 soft recovery commit
- amdkfd
- nouveau
- adv7511
HDMI SPDIF support commit
- lima
- MSM
- vkms
Enable cursor by default commit
- rockchip
Add support for afbc commit
- bridge
- panel
Add ASUS TM5P5 NT35596 panel driver commit
Add Starry KR070PE2T commit
Add panel driver for Leadtek LTK050H3146W commit
Add support for rm69299 visionox panel commit
Support for boe,tv105wum-nw0 dsi video mode panel commit
nt39016: Add support for 50 Hz refresh rate commit
nt39016: Add support for multiple modes commit
simple: Add BOE NV133FHM-N61 commit
simple: Add BOE NV133FHM-N62 commit
simple: Add Ivo M133NWF4 R0 commit
simple: Add support for AUO G121EAN01.4 panel commit
simple: Add support for AUO G156XTN01.0 panel commit
simple: Add support for AUO G190EAN01 panel commit
backlight: qcom-wled: Add support for WLED5 peripheral that is present on PM8150L PMICs commit
12.2. Power Management
ACPI: Add support for DPTF (Dynamic Platform and Thermal Framework) battery participant device support commit, commit
cpuidle: Make cpuidle governor switchable to be the default behaviour commit, commit, commit, commit, commit, commit
Improve SBS battery support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- thermal
12.3. Storage
nvme-fc/nvmet-fc: Add FC-NVME-2 disconnect association support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
nvme-rdma/nvmet-rdma: Add metadata/T10-PI support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- SCSI
dh: Add Fujitsu device to devinfo and dh lists commit
qedi: Add modules param to enable qed iSCSI debug commit
scsi_debug: random doublestore verify commit, commit, commit, commit, commit, commit, commit, commit
scsi_debug: Add ZBC support commit, commit, commit, commit, commit, commit, commit
sd: Add zoned capabilities device attribute commit
Introduce Zone Append for writing to zoned block devices commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ufs: Add write booster feature support commit, commit, commit
ufs: Allow WriteBooster on UFS 2.2 devices commit
ufs: support LU Dedicated buffer mode for WriteBooster commit, commit, commit, commit, commit, commit, commit, commit
hisi_sas: Add SAS_RAS_INTR0 to debugfs register name list commit
12.4. Drivers in the Staging area
media: imx: imx7-mipi-csis: Add missing RAW formats commit, add support for 10-bit YUV 4:2:2 commit
atomisp: add support for different PMIC configurations commit
tegra-video: Add Tegra210 Video input driver commit
wfx: allow to join IBSS networks commit
wfx: add support for hardware revision 2 and further commit
12.5. Networking
- Bluetooth
btbcm: Add 2 missing models to subver tables commit
btbcm: Added 003.006.007, changed 001.003.015 commit
btrtl: Add support for RTL8761B commit
btusb: Add support for Intel Bluetooth Device Typhoon Peak (8087:0032) commit
Add BTUSB and quirk support for the driver to confirm that the reported LE_states can be trusted commit, commit, commit
btusb: Enable MSFT extension for Intel ThunderPeak devices commit
hci_qca: Add support for Qualcomm Bluetooth SoC QCA6390 commit
hci_qca: Enable WBS support for wcn3991 commit
Infiniband: hfi1: Accelerated IP using the rdma netdev mechanism commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- RDMA
- ath10k
- ath11k
- atlantic
ax88179_178a: Implement ethtool_ops set_eeprom commit
bcmgenet: add support for Wake on Filter commit, commit, commit, commit, commit, commit, commit
brcmfmac: adds the second p2p connection support commit, commit
carl9170: remove P2P_GO support commit
cxgb4: Improve and tune TC-MQPRIO offload commit, commit, commit
- dpaa2-eth:
- dsa
felix: tc taprio and CBS offload support commit, commit, commit
mv88e6xxx: 88e6390 10G serdes support commit
Traffic support for dsa_8021q in vlan_filtering=1 mode commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
tc-gate offload for SJA1105 DSA switch commit, commit, commit, commit, commit, commit
sja1105: offload the Credit-Based Shaper qdisc commit
- ena
- enetc:
dwmac: add ethernet glue logic for NXP imx8 chip commit
- hinic
- hns3
- ice
- igc
Add ECN support for TSO commit
Add partial generic segmentation offload (GSO partial) support commit
Enable NETIF_F_HW_TC flag by default commit
Add Receive Error Counter commit
Add new device IDs for i225 part commit
Enable NFC rules based on source MAC address commit, commit, commit, commit
Add support to eeprom, registers and link self-tests commit
ionic: add more ethtool stats commit
- iwlwifi
Add ACPI DSM support commit
Add new cards for AX family commit
Add support for range request command version 9 commit and version 10 commit
Support version 9 of WOWLAN_GET_STATUS notification commit
Enable A-MSDU in low latency mode commit
Remove iwlmvm's tfd_q_hang_detect module parameter commit
Stop supporting swcrypto and bt_coex_active module parameters commit
pcie: add n_window/ampdu to tx_queue debugfs commit
Remove fw_monitor module parameter commit
ks8851: Implement Parallel bus operations commit
lan743x: Added fixed link and RGMII support commit
- mac80211_hwsim
- mlx5
Driver part of the RDMA-CM ECE series commit, commit, commit, commit, commit, commit, commit, commit
Add support for drop action in DV steering commit
Add steering support for default miss commit, commit, commit, commit
Support TX port affinity for VF drivers in LAG mode commit
Add support for COPY steering action commit
Add support for RDMA TX FT headers modifying commit
Add support to get xmit slave commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Set flow_label and RoCEv2 UDP source port for datagram QP commit, commit, commit, commit, commit, commit, commit
Introduce IPsec Connect-X offload hardware bits and structures commit
Introduce TLS RX offload hardware bits commit
- mlx5e
New mlx5 kconfig flag for TC support commit, commit, commit, commit
Support for MPLS over UPD encap and decap TC offloads commit, commit, commit, commit
Support for self looback to allow communication between ipoib pkey child interfaces on the same host commit, commit
Support VM traffics failover with bonded VF representors and e-switch egress/ingress ACLs commit, commit, commit, commit, commit, commit, commit
- mscc:
- mt76
Add MediaTek IEEE 802.11ax devices - MT7915E commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enable TDLS support commit
Enable p2p support commit
Introduce WoW support to mt7663 driver commit, commit, commit, commit, commit, commit, commit
hw scan, scheduled scan and noise floor estimation commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mt7615: add more useful Tx mib counters commit
mt7615: add passive mode for hw scan commit
mt7615: add support for MT7611N commit
mt7615: disable aspm by default commit
mt7615: enable MSI by default commit
mt7615: enable scs for mt7663 driver commit
mt7663: add support to sched scan with randomise addr commit
mt7663: add the possibility to load firmware v2 commit
mt7663u: enable AirTimeFairness commit
mt76x02u: Add support for newer versions of the XBox One wifi adapter commit
mt76x0: pci: add mt7610 PCI ID commit
mt76x2u: introduce Mercury UD13 support commit
MT7915: add TxBF support commit, commit, commit, commit, commit, commit, commit
Add rx queues info to mt76 debugfs commit
mt7915: add spatial reuse support commit
Add the driver for the MediaTek STAR Ethernet MAC currently used on the MT8* SoC family commit
mvneta: Add 2500BaseX support for SoCs without comphy commit
mwifiex: Add support for NL80211_ATTR_MAX_AP_ASSOC_STA commit
p54usb: add AirVasT USB stick device-id commit
- PHY
Add Broadcom BCM54140 support commit
at803x: add cable diagnostics support commit
at803x: add cable diagnostics support for ATH9331 and ATH8032 commit
at803x: add downshift support commit
at803x: add support for AR8032 PHY commit
broadcom: cable tester support commit, commit, commit, commit
bcm54140: add hwmon support commit
broadcom: Add support for BCM53125 internal PHYs commit
broadcom: add support for BCM54811 PHY commit
Raw PHY TDR data commit, commit, commit, commit, commit, commit, commit
micrel: add phy-mode support for the KSZ9031 PHY commit
tja11xx: add cable-test support commit
tja11xx: add initial TJA1102 support commit
Provide support for PHY master/slave configuration commit, commit
ptp: Add adjust_phase to ptp_clock_caps capability commit
qed/qede: critical hw error handling commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
qed*: Add support for pcie advanced error recovery commit, commit
qed: Add EDPM mode type for user-fw compatibility commit
qmi_wwan: add support for Quectel EG95 LTE modem commit
rt2800: enable MFP support unconditionally commit
- rtw88
- stmmac
ti: k3: introduce common platform time sync driver - cpts commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
wlcore: Add support for IGTK key commit
12.6. Audio
fireface: add support for RME FireFace 802 commit
fireface: add support for RME Fireface UFX commit
firewire-motu: add support for MOTU UltraLite-mk3 (FireWire only model) commit
- hda
realtek: Add LED class support for micmute LED commit
realtek: Enable headset mic of Acer TravelMate B311R-31 with ALC256 commit
realtek: enable headset mic of ASUS ROG Zephyrus G14(G401) series with ALC289 commit
Add ElkhartLake HDMI codec vid commit
Intel: add missing PCI IDs for ICL-H, TGL-H and EKL commit
Add autodetection for SoundWire commit
Add sienna_cichlid audio asic id for sienna_cichlid up commit
Adds support for polling and non-blocking read for hwdep interface commit, commit
usb-audio: Add duplex sound support for USB devices using implicit feedback commit
usb-audio: Add Pioneer DJ DJM-900NXS2 support commit
usb-audio: RME Babyface Pro mixer patch commit
- ASoC
Add initial ZL38060 driver commit
Intel: Skylake: Automatic DMIC format configuration according to information from NHLT commit
Intel: boards: sof-wm8804: support for Hifiberry Digiplus boards commit
Intel: boards: support Elkhart Lake with rt5660 commit
Add Renoir ACP driver commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
da7213: Add regulator support commit
max98390: Added Amplifier Driver commit
max9867: add digital microphone controls commit
max9867: add mono playback switch commit
mmp-sspa: Make sound work on DT-based MMP2 machines commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rt1016: Add the rt1016 support commit
snd-sof-intel-hda-common: add hda_model parameter and pass it to HDA codec driver commit
tlv320adcx140: Add controls for PDM clk commit
tlv320adcx140: Add support for configuring GPI pins commit
nau8810: add AUX related dapm widgets and routes commit
- SOF
Add support for SOF on i.MX8M commit, commit, commit, commit, commit
Intel: add PCI ID for CometLake-S commit
Intel: add PCI ID for ElkhartLake commit
Intel: add PCI IDs for ICL-H and TGL-H commit
Support for an extended firmware manifest, which helps retrieve capabilities directly from the firmware file instead of the current IPC mechanism commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add probe support extend data commit
soundwire: bus_type: add sdw_master_device support commit, commit, commit, commit, commit
ac97: Remove sound driver for ancient platform commit
12.7. Tablets, touch screens, keyboards, mouses
Add driver for the Cypress CY8CTMA140 touchscreen commit
Add support for Azoteq IQS269A commit
elan_i2c: add more hardware ID for Lenovo laptops commit
i8042: add Lenovo XiaoXin Air 12 to i8042 nomux list commit
mms114: add extra compatible for mms345l commit
synaptics: enable InterTouch for ThinkPad X1E 1st gen commit
Delete unused GP2AP002A00F driver commit
Remove msm-vibrator driver commit
- HID
12.8. TV tuners, webcams, video capturers
Add V4L2_CAP_IO_MC to indicate that input and output are controlled by the Media Controller instead of V4L2 commit, commit, commit, commit, commit
Add support for the CODA960 JPEG decoder to the coda-vpu driver commit, commit
Report camera properties commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
media: rockchip: Add the rkvdec driver commit, commit, commit, commit
coda: add RC enable controls commit
coda: jpeg: support optimized huffman tables commit
si2157: Analog tuning and optimizations commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dvb-usb: Add Cinergy S2 PCIe Dual Port support commit
i2c: Add ov2740 image sensor driver commit
ov8856: Add devicetree support commit
vimc: Make use of V4L2_CAP_IO_MC commit
vimc: Add support for {RGB,BGR,GBR}888 bus formats on debayer source pad commit, commit, commit
sh_veu: Remove driver commit
12.9. Universal Serial Bus
roles: Enable role-switch uevent reporting commit
chipidea: Enable user-space triggered role-switching commit
chipidea: introduce imx7d USB charger detection commit
chipidea: udc: add software sg list support commit
dwc3: gadget: Handle streams commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dwc3: meson: add OTG support for GXL/GXM commit, commit, commit, commit, commit, commit, commit, commit
dwc3: Add support for DWC_usb32 IP commit
dwc3: pci: add support for the Intel Jasper Lake commit
dwc3: pci: add support for the Intel Tiger Lake PCH -H variant commit
gadget: tegra-xudc: Add Tegra194 support commit
Add XHCI, EHCI and OHCI support for Broadcom STB SoS's commit, commit, commit, commit
renesas-xhci: Add the renesas xhci driver commit
serial: ch341: add new Product ID for CH340 commit
serial: cypress_m8: enable Simply Automated UPB PIM commit
serial: option: add GosunCn GM500 series commit
serial: option: add Quectel EG95 LTE modem commit
serial: option: add Telit LE910C1-EUX compositions commit
serial: qcserial: add DW5816e QDL support commit
typec: mux: intel_pmc_mux: Support for static SBU/HSL orientation commit
xhci: Add support for Renesas controller with memory commit
12.10. Serial Peripheral Interface (SPI)
bcm-qspi: add support for MSPI sys clk 108Mhz commit
dw: Add Elkhart Lake PSE DMA support commit
dw: Add support for DesignWare DWC_ssi commit
dw: Add support for Intel Keem Bay SPI commit
dw-apb-ssi: Add Intel Keem Bay support commit
pxa2xx: Add support for Intel Tiger Lake PCH-H commit
spi-amd: Add AMD SPI controller driver support commit
spi-rockchip: add support for spi slave mode commit
spidev: Add support for Octal mode data transfers commit
stm32-qspi: Add pm_runtime support commit
12.11. Real Time Clock (RTC)
12.12. Pin Controllers (pinctrl)
intel: Add Intel Jasper Lake pin controller support commit
qcom: Add sm8250 pinctrl driver commit
sh-pfc: r8a7790: Add r8a7742 PFC support commit
12.13. Multi Media Card (MMC)
Export device/vendor ids from Common CIS for SDIO cards commit
Expose info about enhanced rpmb support commit
host: add Coldfire esdhc support commit
host: meson-mx-sdhc: new driver for the Amlogic Meson SDHC host commit
sdhci: arasan: Add support for Versal Tap Delays commit
sdhci-esdhc-imx: Add HS400 support for i.MX6SLL commit
sdhci-of-arasan: Add support for Intel Keem Bay commit
sdhci-of-dwcmshc: add suspend/resume support commit
sdhci-pci-gli: Add Genesys Logic GL9763E support commit
12.14. Memory Technology Devices (MTD)
MLC in SLC mode commit, commit, commit, commit, commit, commit, commit, commit
rawnand: Remove the cmx270 NAND controller driver commit
rawnand: arasan: Add new Arasan NAND controller commit
rawnand: arasan: Support the hardware BCH ECC engine commit
rawnand: brcmnand: support v2.1-v2.2 controllers commit
spi-nor: Add support for Cypress cy15x104q commit
spi-nor: Add support for s25fs128s1 commit
spi-nor: macronix: Add support for mx25l51245g commit
spi-nor: macronix: Add support for mx25u51245g commit
spi-nor: spansion: Enable dual and quad read for s25fl256s0 commit
12.15. Industrial I/O (iio)
Add SEMTECH SX9310/9311 sensor driver commit
accel: Add bma150 family support to bma180 commit, commit, commit, commit, commit, commit, commit
accel: st_sensors: add support for LIS2HH12 commit
adi-axi-adc,ad9647: Add support for AD9467 ADC commit, commit, commit, commit, commit, commit, commit, commit
adc: Add MAX1241 driver commit
adc: Add scaling support to exynos adc driver commit
adc: ad7476: Add AD7091 support commit
adc: mp2629: Add support for mp2629 ADC driver commit
bmg160: Add support for BMI088 chip commit
chemical: Add support for external Reset and Wakeup in CCS811 commit
chemical: add atlas-ezo-sensor initial support commit
chemical: atlas-sensor: add RTD-SM module support commit
imu: Add support for adis16475 commit
imu: inv_mpu6050: add debugfs register r/w interface commit
imu: st_lsm6dsx: Add sensor hub device LIS3MDL commit
light: cm32181: Add support for ACPI enumeration commit
light: cm32181: Add support for the CM3218 commit
magnetometer: ak8974: add Alps hscdtd008a commit
proximity: Add driver support for vcnl3020 proximity sensor commit
vcnl: Add interrupts support for VCNL4010/20 commit, commit, commit, commit, commit
12.16. Multi Function Devices (MFD)
Add Gateworks System Controller core driver commit
Add support for PMIC MT6360 commit
mp2629: Add support for mps battery charger commit
12.17. Pulse-Width Modulation (PWM)
Add support for Azoteq IQS620A PWM generator commit
jz4740: Add support for the JZ4725B commit
sun4i: Support direct clock output on Allwinner A64 commit
tegra: Support dynamic clock frequency configuration commit
12.18. Inter-Integrated Circuit (I2C + I3C)
Add Qualcomm CCI I2C driver commit
cadence: Added slave support commit
designware: Add Baikal-T1 System I2C support commit
designware: Allow slave mode for PCI enumerated devices commit
iproc: add support for SMBUS quick cmd commit
mediatek: Add i2c ac-timing adjust support commit
npcm7xx: Add Nuvoton NPCM I2C controller driver commit
npcm7xx: Add support for slave mode for Nuvoton commit
pxa: implement generic i2c bus recovery commit
slave-eeprom: add support for 24c512 EEPROMs commit
tegra: Add support for the VI I2C on Tegra210 commit
12.19. Hardware monitoring (hwmon)
Add amd_energy driver to report core and package energy sensors, based on RAPL MSR for AMD family 17h and above CPUs commit, commit
ina2xx: Implement alert functions commit
k10temp: Add AMD family 17h model 60h PCI match commit
lm70: Add support for ACPI commit
lm90: Add max6654 support to lm90 driver commit
nct7904: Add watchdog function commit
pmbus: Driver for Maxim MAX16601 commit
Add Gateworks System Controller support commit
hwmon: Add Baikal-T1 SoC Process, Voltage and Temp sensor support commit, commit
Add Baikal-T1 PVT sensor driver commit
12.20. General Purpose I/O (gpio)
12.21. Leds
Add aw2013 driver commit
Add sgm3140 driver commit
ariel: Add driver for status LEDs on Dell Wyse 3020 commit
12.22. DMA engines
idxd: export hw version through sysfs commit
12.23. Cryptography hardware acceleration
chcr: support for 48 byte key_len in aes-xts commit
chtls: IPv6 support for inline TLS commit
crypto/nx: Enable GZIP engine and provide userpace API commit, commit, commit, commit, commit, commit, commit
ccp: Add support for SEV-ES to the PSP driver commit
hisilicon: add debugfs for DFX commit, commit, commit, commit, commit, commit, commit
hisilicon: add controller reset support commit, commit, commit, commit, commit
hisilicon: add vfs_num module parameter for hpre/sec commit
12.24. PCI
Add Loongson PCI Controller support commit
Add endpoint driver for R-Car PCIe controller commit, commit, commit, commit, commit, commit, commit, commit
P2PDMA: Add AMD Zen Raven and Renoir Root Ports to whitelist commit
aardvark: Add PHY support commit
rcar: Add endpoint mode support commit
rcar: Add suspend/resume commit
uniphier: Add Socionext UniPhier Pro5 PCIe endpoint controller driver commit
12.25. Non-Transparent Bridge (NTB)
intel: Add Icelake (gen4) support for Intel NTB commit
12.26. Thunderbolt
Add support for Intel Tiger Lake commit
12.27. Clock
Add Baikal-T1 SoC Clock Control Unit support commit, commit, commit, commit
Ingenic: Add CGU driver for X1830 commit
clk-si5341: Add support for the Si5345 series commit
intel: Add CGU clock driver for a new SoC commit
mediatek: Add MT6765 clock support commit
mmp2: Enable Audio and GPU on MMP2 and MMP3 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mmp2: Add audio clock controller driver commit
- Add the missing clock drivers and dts nodes to enable the GPU on both SM8150 and SM8250
qcom: gcc-msm8939: Add MSM8939 Generic Clock Controller commit
qcom: gcc: Add GPU and NPU clocks for SM8150 commit
qcom: gcc: Add missing UFS clocks for SM8150 commit
renesas: cpg-mssr: Add R8A7742 support commit
socfpga: agilex: add clock driver for the Agilex platform commit
tegra: Add custom CCLK implementation commit
tegra: Implement Tegra210 EMC clock commit
vc5: Add support for IDT VersaClock 5P49V6965 commit
timer-ti-dm: Add clockevent and clocksource support commit
12.28. PHY ("physical layer" framework)
Add driver for Qualcomm IPQ40xx USB PHY commit
cadence: salvo: add salvo phy driver commit
intel: Add driver support for ComboPhy commit
qcom-qmp: Add QMP V3 USB3 PHY support for SC7180 commit
qcom-qmp: Add SM8150 QMP USB3 PHY support commit
qcom-snps: Add SNPS USB PHY driver for QCOM based SOCs commit
ti: am654: add support for USB super-speed commit, show up in regmap debugfs commit
12.29. EDAC (Error Detection And Correction)
amd64: Add AMD family 17h model 60h PCI IDs commit
12.30. 1-Wire (W1)
- w1_therm
12.31. Firmware
xilinx: Add xilinx specific sysfs interface commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
SCMI Notifications Core Support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
imx: support SCU channel type commit, commit, commit, commit
12.32. Various
- habanalabs
Add GAUDI ASIC support. Similar to GOYA, GAUDI includes a set of eight TPC cores, a GEMM engine and DMA channels to move data between host and different memories of the ASIC. Each engine has a hardware queue manager (QMAN) attached to it, which exposes 4 streams to allow complex programs with control flows (in GOYA you had 1 stream per QMAN) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add INFO IOCTL opcode for time sync information commit
Support hwmon_reset_history attribute commit
Add signal/wait to CS IOCTL operations commit, commit, commit, commit
Enable trace data compression (profiler) commit
Add Baikal-T1 SoC APB/AXI/L2 drivers commit, commit, commit, commit, commit
bus: Add driver for Integrator/AP logic modules commit
fpga: dfl: fme: add performance reporting support commit, commit
fpga: dfl: support multiple opens on feature device node commit
interconnect: Add imx support via devfreq commit, commit, commit, commit, commit
irqchip: Three Loongson irqchip support commit, commit, commit, commit, commit, commit
iommu: Add Allwinner H6 IOMMU driver commit
irqchip: RISC-V per-HART local interrupt controller driver commit
mailbox: Add support for Qualcomm IPCC commit
mailbox: imx: Support runtime PM commit
mailbox: qcom: Add ipq6018 apcs compatible commit
mailbox: sprd: Add Spreadtrum mailbox driver commit
mei: me: add tiger lake point device ids for H platforms commit
mfd: Add support for the MediaTek MT6358 PMIC commit
misc: pci_endpoint_test: Add Device ID for RZ/G2E PCIe controller commit
mptcp: add new sock flag to deal with join subflows commit
of: reserved-memory: Support lookup of regions by name commit
of: reserved-memory: Support multiple regions per device commit
opp: Add support for parsing interconnect bandwidth commit
opp: Expose bandwidth information via debugfs commit
pinctrl: imx: Add imx8dxl driver commit
ptp: Add adjphase function to support phase offset control commit
remoteproc: qcom: Add callbacks for remoteproc events commit, commit, commit
remoteproc: Add PAS and MSA based Modem support commit, commit, commit, commit, commit, commit, commit
remoteproc: Add support for runtime PM commit
remoteproc: ingenic: Added remoteproc driver commit
remoteproc: qcom: pas: Add SM8250 PAS remoteprocs commit
reset: hi6220: Add support for AO reset controller commit
reset: imx7: Add support for i.MX8MP SoC commit
scs: Add support for Clang's Shadow Call Stack (SCS) commit
spi: spidev_test: Add support for Octal mode data transfers commit
- tee
13. List of Pull Requests