Size: 82306
Comment: add 2.6.18 overview
|
Size: 881
Comment: Linux 4.16 finished, 4.17 next...
|
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 === 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)] * Dock driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a5e1b94008f2a96abf4a0c0371a55a56b320c13e (commit)] === Generic IRQ layer === This is Yet More Generalization of the IRQ 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)] * OMAP: 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)] * OMAP: Readd Amstrad Delta USB support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0711615290510bfba11c3f4eabcde6ac92c0766e (commit)] * OMAP: Add GPMC support for OMAP2 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4bbbc1adc2095c6504a556819dd8842135df300b (commit)] * OMAP: 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)] * 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)] * Add 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_4.16)>> |
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 4.16 has been released on Sun, 1 Apr 2018.
Summary: Besides the latest code to deal with CPU security bugs, this release declares the reverse mapping and reflink features as stable, membarrier(2) adds expedited support, SMB3 Direct (RDMA) support, adds the x86 jailhouse hypervisor which is able to statically partition a multicore system into multiple so-called cells, support for PowerPC memory protection keys, the hypervisor part of AMD Secure Encrypted Virtualization; and many new drivers and other improvements.
Contents
- Prominent features
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing and perf
- Virtualization
- Cryptography
- Security
- Networking
- Architectures
-
Drivers
- Graphics
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Watchdog
- ACPI, EFI, cpufreq, thermal, Power Management
- Real Time Clock (RTC)
- Voltage, current regulators, power capping, power supply
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Multi Function Devices (MFD)
- Inter-Integrated Circuit (I2C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- Cryptography hardware acceleration
- PCI
- Non-Transparent Bridge (NTB)
- Clock
- Various
- List of merges
- Other news sites
1. Prominent features
1.1. Improved protection for CPU security bugs
This release adds:
x86: Basic IBPB (Indirect Branch Prediction Barrier) support commit
arm: Implement branch predictor hardening for Falkor and affected Cortex-A CPUs and Cavium ThunderX2 commit, commit, commit, commit
arm: Add support for unmapping kernel when running in userspace (Kernel Page Table Isolation) commit
kvm/x86: Add Indirect Branch Predictor Barrier (IBPB) is an indirect branch control mechanism. It keeps earlier branches from influencing later ones commit
s390: An implementation of the array_index_mask_nospec function to the defense against spectre v1 commit
s390: A s390 variant of the 'retpoline' spectre v2 defense called 'expoline' commit
s390: Run user space and KVM guests with modified branch prediction commit
1.2. XFS reverse mapping and reflink features are now stable
The reverse mapping and reflink features, merged back in 4.8 and 4.9 respectively, have been declared stable. These features allow for cp --reflink=always support, data deduplication, data copy-on-write ...
Code: commit and reflink features commit
1.3. membarrier(2) expedited support
This release provides expedited command in membarrier(2) for registration and use of membarrier across processes communicating through shared memory mappings. The non-expedited command has proven to be really too slow (taking 10ms and more to complete) for real-world use. The expedited version completes in a matter of microseconds.
Recommmended LWN article: Expediting membarrier()
Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
1.4. SMB3 Direct (RDMA) support
Starting with SMB2 dialect 3.0, Microsoft introduced SMB Direct transport protocol for transferring upper layer (SMB2) payload over RDMA via Infiniband, RoCE or iWARP. This release adds support for Linux.
Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
1.5. Add the x86 jailhouse hypervisor
This release adds initial platform support for the jailhouse hypervisor. The Jailhouse hypervisor is able to statically partition a multicore system into multiple so-called cells. Linux is used as boot loader and continues to run in the root cell after Jailhouse is enabled. Linux can also run in non-root cells. Jailhouse was started 4 years ago as an open-source (GPL) light-weight hypervisor that statically partitions SMP systems. It's unique in that it uses one Linux instance, the root cell, as boot loader and management console. Jailhouse targets use cases for hard real-time and safety-critical systems that KVM cannot cater due to its inherent complexity
Code: commit
1.6. PowerPC: memory protection keys
This release adds support of memory protection keys (a feature merged in Linux 4.6) for Power7/8/9
1.7. Second part of AMD Secure Encrypted Virtualization
This release adds the hypervisor part of AMD Secure Encrypted Virtualization, a feature that allows to encrypt the memory of virtualized guests so that the host can't see it.
Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, [https://git.kernel.org/linus/35c6f649bbb2e3f367116307273f998f0bf3e08e|commit]], commit
2. Core (various)
Rework and optimize the cost of the inode->i_version counter in filesystems. There are measurable performance gains on several filesystems when streaming small (4k) I/Os commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add RWF_APPEND to pwritev2(2). This is the per-I/O equivalent of open(2)'s O_APPEND to support atomic append operations on any open file commit
Task scheduler: Add the possibility of getting the delivery of a SIGXCPU signal whenever there is a runtime overrun commit
(FEATURED)Task scheduler: reduce migrations and unnecessary spreading of load to multiple CPUs that can happen when interacting with cpufreq commit, commit, commit, commit
Task scheduler: Tweak the task migration logic for better multi-tasking workload scalability commit
Documentation: add maintainer handbook. commit
Documentation: document cgroup v2 device controller commit
printk: add console_msg_format command line option, which allows serial console messages to appear in syslog format. Recommended LWN article: Improving printk() commit
(FEATURED) membarrier(2): provide expedited command for registration and use of membarrier across processes communicating through shared memory mappings. The non-expedited command has proven to be really too slow (taking 10ms and more to complete) for real-world use. The expedited version completes in a matter of microseconds. Recommmended LWN article: Expediting membarrier(). commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
scripts: Following in footsteps of other targets like 'deb-pkg, 'rpm-pkg' and 'tar-pkg', this patch adds a 'snap-pkg' target for the creation of a Linux kernel snap package commit
dma-direct: add support for CMA allocation commit and allocation from ZONE_DMA and ZONE_DMA32 commit
Power management: Add kernel option to ignore the system sleep blacklist commit
torture: Eliminate torture_runnable and perf_runnable commit
Separate error injection table from kprobes. An in-kernel fault-injection facility has also been added to debugfs which allows to inject a conditional error to specified function. For more details see Documentation/fault-injection/fault-injection.txt. commit, commit, commit, commit, commit
PCI/AER: Add uevents in AER and EEH error/resume commit
drivers: add coredump driver operation. When the driver defines it a coredump file is added in the sysfs folder of the device upon driver binding. The file is removed when the driver is unbound. User-space can trigger a coredump for this device by echo'ing to the coredump file commit
drivers: component: add debugfs support commit
3. File systems
- XFS
- BTRFS
- CIFS
(FEATURED) SMB3 Direct (RDMA) support. Starting with SMB2 dialect 3.0, Microsoft introduced SMB Direct transport protocol for transferring upper layer (SMB2) payload over RDMA via Infiniband, RoCE or iWARP commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Dump IPC tcon in debug proc file commit
- F2FS
Support inode creation time commit
Introduce a sysfs interface readdir_ra to enable/disable readaheading inode block. When enabled, it improves the performance of "readdir + stat" commit
Add an ioctl to disable GC for specific file, which would be useful, when user wants to keep its block map commit
Add F2FS_IOC_PRECACHE_EXTENTS ioctl to precache extent info like ext4, in order to gain better performance during triggering AIO by eliminating synchronous waiting of mapping info commit
Support FIEMAP_FLAG_XATTR for xattr mapping info lookup commit
Allow root to reserve some blocks via mount option -o reserve_root commit
Allow to reserve blocks for specific UID/GID commit
Implement cgroup writeback support commit
- OCFS2
- OVERLAYFS
- GFS2
Implement fallocate(FALLOC_FL_PUNCH_HOLE) commit
- NFS
Support statx() mask and query flags parameters to enable some optimizations commit
- AFS
Support the AFS dynamic root, which is a pseudo-volume that doesn't connect to any server resource commit
4. Memory management
zswap: pages with the same contents are stored only once. Experiments have shown that this is the case of around 10-20% of pages commit
- KASAN
shmem: add sealing support to hugetlb-backed memfd commit
hugetblfs: implement memfd sealing commit
hugetlb: remove hugepages_treat_as_movable sysctl commit
Show total hugetlb memory consumption in /proc/meminfo commit
tools/vm/page-types: option to specify kpageflags file commit
5. Block layer
raid5-ppl: PPL support for disks with write-back cache enabled commit
device mapper: Add new "unstriped" target that enables Intel to workaround firmware limitations in some NVMe drives that are striped internally (this target also works when stacked above the DM "striped" target) commit
Support for SMR zones for deadline and mq-deadline commit, commit
null_blk: add option for managing IO timeouts commit, remove lightnvm support commit
bcache: add journal statistic commit
blk-mq: castly improve request-based DM's blk-mq sequential IO performance commit
- lightnvm
nfit, libnvdimm: deprecate the generic SMART ioctl commit
6. Tracing and perf
- perf report
Introduce perf report --tasks option to display monitored tasks stored in perf.data commit
Introduce perf report --mmaps option to display the same output as --tasks plus /proc/PID/maps similar lines for each mmap record present in perf.data commit
Introduce perf report --stats to display quick data statistics of event numbers, without any further processing, like the one at the end of perf report -D commit
perf report: Support time percent and multiple time ranges commit, commit, commit, commit, commit
- perf trace
- perf record
- perf script
perf probe: Support the special characters escaped by '\' in parser. This allows user to specify versions directly like perf probe -x /lib64/libc-2.25.so malloc_get_state\\@GLIBC_2.2.5 commit
Allow system wide perf stat --per-thread, sorting the result commit, commit
7. Virtualization
- virtualbox
vfio: ABI for mdev display dma-buf operation commit
vfio-pci: Allow mapping MSIX BAR commit
virtio_balloon: include disk/file caches memory statistics commit
virtio_net: Add ethtool stats commit
virtio_net: propagate linkspeed/duplex settings from the hypervisor commit
vmbus: add monitor_id and subchannel_id to sysfs per channel commit
uio_hv_generic: add rescind support commit
8. Cryptography
9. Security
EVM: Allow userland to permit modification of EVM-protected metadata commit
EVM: Add support for portable signature format commit
Smack: Privilege check on key operations commit
ima: support new hash and dont_hash policy actions commit
hardened usercopy whitelisting: Currently, hardened usercopy performs dynamic bounds checking on slab cache objects. This is good, but still leaves a lot of kernel memory available to be copied to/from userspace in the face of bugs. To further restrict what memory is available for copying, this creates a way to whitelist specific areas of a given slab cache object for copying to/from userspace, allowing much finer granularity of access control. Recommended LWN article: Hardened usercopy whitelisting. commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
seccomp: add PTRACE_SECCOMP_GET_METADATA flag to allow retrieving seccomp metadata commit
Introduce CONFIG_CC_STACKPROTECTOR_AUTO config option, which attempts to discover the best possible stack-protector available for the compiler being used commit
10. Networking
Significantly shrink the core routing structures. struct dst_entry shrinks from 160 to 112 bytes, struct rtable shrinks from 216 to 168 bytes, and struct rt6_info shrinks from 384 to 320 bytes. Result of http://vger.kernel.org/~davem/seoul2017_netdev_keynote.pdf commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- TCP
Add a 2nd listener hash table for TCP, similar to what was done for UDP. It solves the performance issue when a process is listening at many IP addresses with the same port commit, commit, commit, commit
Enables tail loss probe in cwnd reduction (CWR) state to detect potential losses commit
Pause Fast Open globally after third consecutive timeout commit
Add netdevsim driver for testing various offloads commit, commit, commit, commit
Support cross-chip FDB operations in DSA commit
Initial lockless qdisc support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
SCTP stream interleave support. First commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, second: commit, commit, commit, commit, commit, commit, commit, commit
- xfrm:
- erspan:
Add explicit support for GRO HW offloading commit, commit, commit, commit, commit
Add flow table abstraction to netfilter. A new nf_flow_offload module is added that registers a hook at ingress. Every packet that hits the flow table is forwarded to where the flow table entry specifies in terms of destination/gateway and netdevice. In case of flow table miss, the packet follows the classic forward path. This flow table is populated via the new nftables VM action flow_offload, so the user can selectively specify what flows are placed into the flow table commit, commit, commit, commit, commit, commit, commit
- IPv6
Add support for non-equal-cost multipath routes commit, commit, commit, commit
Align nexthop behaviour with IPv4 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for onlink flag (RTNH_F_ONLINK) on routes commit, commit, commit
ip6gretap: Similar to gre, vxlan, geneve, ipip tunnels, allow ip6gretap tunnels to operate in collect metadata mode commit, commit, commit
devlink: Add support for resource abstraction commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
qdisk: Currently the filters added to qdiscs are independent, eg if you have 2 netdevices and you create ingress qdisc on both and you want to add identical filter rules both, you need to add them twice. This release allows to make things easier and saves resources allowing to share all filters within a qdisc commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
xdp: new XDP rx-queue info concept commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Netfilter
- BFP
Add support for creating maps on networking devices. BPF is programs+maps, the pure program offload has been around for quite some time, this adds the map part of the equation commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow arbitrary function calls from bpf function to another bpf function commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add the ability to do BPF directed error injection. A lot of our error paths are not well tested because there is no good way of injecting errors generically. Some subystems have ways to inject errors, but they are random so it's hard to get reproduceable results. With this mechanism it is possible to add determinism to our error injection commit, commit, commit, commit, commit
Implement syscall command BPF_MAP_GET_NEXT_KEY for stacktrace map commit, commit
Implements MAP_GET_NEXT_KEY command for LPM_TRIE map. This command is really useful for key enumeration, and for key deletion if what keys in the trie are unknown
Implement MAP_GET_NEXT_KEY command for LPM_TRIE map commit, commit
Adds support for several sock_ops callbacks commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add a UID to use for ULP socket assignment commit
Allow user space to query prog array on the same tracepoint commit, commit
Allow for correlation of maps and helpers in dump commit
Restrict access to core bpf sysctls commit
tun: allow to attach ebpf socket filter commit
Add eBPF based queue selection to tun commit
bpftool: Add basic cgroup bpf operations to bpftool commit, commit, commit, commit
Add drop counters to VF statistics commit
Expose number of link up/down transitions commit
Bluetooth: Add support to advertise when connected commit
Infiniband: Increase number of char device minors commit
mac80211: enable TDLS peer buffer STA feature commit
vrf: Allow send to local broadcast from a socket bound to a VRF commit
rtnetlink: enable IFLA_IF_NETNSID for RTM_DELLINK and RTM_SETLINK commit, commit, commit
RDMA: Add general infrastructure to track RDMA resources commit, provide detailed QP information commit, provide global resource utilization commit
tuntap: XDP transmission commit
smc: support variable CLC proposal messages commit
tools: bpftool: create "uninstall", "doc-uninstall" make targets commit
mac80211_hwsim: add hwsim_tx_rate_flags to netlink attributes commit
macsec: Add support for GCM-AES-256 cipher suite commit
l2tp: remove configurable offset parameters commit, commit, commit, commit
dsa: Allow compiling out legacy support commit
dummy: remove fake SR-IOV functionality commit
11. Architectures
- ARM
v8.4: Support for new floating point multiplication instructions commit
Add Broadcom Brahma-B15 readahead cache support commit
Always use REFCOUNT_FULL commit
- device tree sources
Add basic devicetree for D-Link DNS-313 commit
Add minimal support for LogicPD OMAP35xx SOM-LV devkit commit and
Add minimal support for LogicPD OMAP35xx Torpedo devkit commit
TS-4600: add basic device tree commit
TS-7970: add basic device tree commit
am57xx: Add support for am574x-idk commit
aspeed: Add Ingrasys Zaius BMC machine commit
aspeed: Add Qanta Q71L BMC machine commit
aspeed: Add Witherspoon BMC machine commit
at91: add devicetree for the Axentia Nattis with Natte power commit
at91: introduce the sama5d2 ptc ek board commit
imx6q: Add Variscite DART-MX6 Carrier-board support commit
imx6qdl: Add Variscite DART-MX6 SoM support commit
imx6qdl: add HummingBoard2 boards commit
imx7: add Toradex Colibri iMX7D 1GB (eMMC) support commit
ls1021a: add support for Moxa UC-8410A open platform commit
sun8i: add support for Orange Pi R1 commit
sun8i: h3: Add dts file for Libre Computer Board ALL-H3-CC H3 ver commit
ep93xx: ts72xx: Add support for BK3 board - ts72xx derivative commit
owl-s500: Add Sparky commit
KVM: vgic: Support level-triggered mapped interrupts commit
KVM: Implement PSCI 1.0 support commit
Add ARM Statistical Profiling Extensions (SPE) support commit
Add support for CoreSight trace decoding by making the perf tools use the external openCSD commit, commit, commit, commit, commit, commit, commit, commit
- ARM64
(FEATURED) Implement branch predictor hardening for Falkor and affected Cortex-A CPUs and Cavium ThunderX2 commit, commit, commit, commit
(FEATURED) Add support for unmapping kernel when running in userspace (aka "KAISER") commit
Add software workaround for Falkor erratum 1041 commit
Support for RAS (firmware first only) and SDEI (software delegated exception interface; allows firmware to inject a RAS error into the OS) commit, commit
- dts
actions: Add S700 and CubieBoard7 commit
renesas: Add support for Salvator-XS with R-Car M3-W commit and initial V3MSK board device tree commit
Implement SHA-512 using special instructions commit
sha3: new v8.2 Crypto Extensions implementation commit
sm3: new v8.2 Crypto Extensions implementation commit
perf: ARM DynamIQ Shared Unit PMU support commit
perf vendor events aarch64: Add JSON metrics for ARM Cortex-A53 Processor commit
perf vendor events arm64: Add ThunderX2 implementation defined pmu core events commit
- X86
(FEATURED) Add initial platform support for the jailhouse hypervisor that allows native Linux guests (inmates) in non-root cells (guest partitions). Jailhouse was started 4 years ago as an open-source (GPL) light-weight hypervisor that statically partitions SMP systems. It's unique in that it uses one Linux instance, the root cell, as boot loader and management console. Jailhouse targets use cases for hard real-time and safety-critical systems that KVM cannot cater due to its inherent complexity commit
Add support for L2 cache partitioning to the Intel RDT facility commit, commit, commit, commit, commit
(FEATURED) Add basic IBPB (Indirect Branch Prediction Barrier) support commit
Drop "native" vsyscalls commit
- platforms
chrome: cros_ec_lpc: Add support for Google Glimmer commit
Add Acer Wireless Radio Control driver commit
Add driver for GPD pocket custom fan controller commit
Add support for Dollar Cove TI power button commit
alienware-wmi: lightbar LED support for Dell Inspiron 5675 commit
asus-nb-wmi: Support ALS on the Zenbook UX430UQ commit
intel-vbtn: Support separate press/release events commit, support tablet mode switch commit, support panel front button commit
intel_pmc_core: Add CannonLake PCH support commit
mlx-platform: Add support for new 200G IB and Ethernet systems commit, add support for new msn201x system type commit, add support for new msn274x system type commit
silead_dmi: Add Teclast X3 Plus tablet support commit, add entry for newer BIOS for Trekstor Surftab 7.0 commit, add entry for the Chuwi Vi8 tablet commit, add entry for the Teclast X98 Plus II commit, add entry for the Trekstor Primebook C13 commit, add support for the Onda oBook 20 Plus tablet commit, add touchscreen info for SurfTab twin 10.1 commit, add entry for Chuwi Hi8 tablet commit
mei: me: add cannon point device ids commit and add cannon point device ids for 4th device commit
- KVM
Hypervisor part of AMD Secure Encrypted Virtualization commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, [https://git.kernel.org/linus/35c6f649bbb2e3f367116307273f998f0bf3e08e|commit]], commit
(FEATURED) Add Indirect Branch Predictor Barrier (IBPB) is an indirect branch control mechanism. It keeps earlier branches from influencing later ones commit
Expose new cpu features to guest commit
Implements support within KVM for MSR-based features commit, commit
Support paravirtualized help for TLB shootdowns commit, commit
Emulate UMIP (or almost do so) commit, commit, commit, commit
Add emulation of MSR_SMI_COUNT commit
Emulate RDPID commit
hyperv: stable clocksource for L2 guests when running nested KVM on Hyper-V commit, commit, commit, commit, commit, commit, commit
Remove 'noreplace-paravirt' cmdline option commit
- POWERPC
(FEATURED) Enable support for memory protection keys aka "pkeys" on Power7/8/9 commit, commit
Add support for CLOCK_{REALTIME/MONOTONIC}_COARSE to the 64 bit VDSO commit
A new driver "ocxl" for "Open Coherent Accelerator Processor Interface (OpenCAPI)" devices commit, commit, commit, commit, commit, commit, commit
Extend our interrupt soft masking to support masking PMU interrupts as well as "normal" interrupts, and then use that to implement local_t for a ~4x speedup vs the current atomics-based implementation commit, commit
cpuidle: Add polling idle for shared processor guests commit
cell: Remove axonram driver commit
eeh: Add EEH notify resume sysfs commit
powernv: Add debugfs interface for imc-mode and imc-command commit
Expose TSCR via sysfs commit
- KVM
- MIPS
- S390
An implementation of the array_index_mask_nospec function to the defense against spectre v1 commit
A s390 variant of the 'retpoline' spectre v2 defense called 'expoline' commit
Run user space and KVM guests with modified branch prediction commit
qeth: support early setup for z/VM NICs commit
diag: add diag26c support for VNIC info commit
KVM: Exitless interrupts for emulated devices commit, commit, commit, commit
- SPARC
- RISCV
ftrace: Add basic support commit
- XTENSA
12. Drivers
12.1. Graphics
framebuffer: Add framebuffer debugfs file commit
Add support for a panel-orientation connector property commit
- intel
CannonLake: Add support for horizontal plane flipping commit
CannonLake: Extend HDMI 2.0 support to CannonLake commit
Add support for reset engine using GuC commands commit
- GVT
Show FBC worker status in debugfs commit
Adding more Coffee Lake PCI IDs commit
Remove debugfs/i915_seqno_info commit
Remove i915.enable_execlists module parameter commit
Remove i915.semaphores modparam commit
Remove unsafe i915.enable_rc6 commit
- amdgpu/radeon
- amdkfd
- rcar
- sun4i
- msm
Devfreq support for GPU commit
- tegra
- omapdrm
- exynos
Drop the old IPP subdriver commit
- armada
Allow disabling primary plane if overlay is full screen commit
- imx
- Format modifier support
- Add tile prefetch to PRE
- Runtime PM support for PRG
- nouveau
tinydrm: add driver for ILI9225 panels commit and ST7735R panels commit
- panel
ipu-v3: pre: add tiled prefetch support commit
bridge/sii8620: add DVI mode support commit
12.2. Storage
- ahci
ata: remove pata_at32 commit
- arcmsr
dh: add new rdac devices commit
hisi_sas: add RAS feature for v3 hw commit
lpfc: Beef up stat counters for debug commit
- megaraid_sas
- qla2xxx
scsi-mq-debugfs: Show more information commit
scsi_debug: Add support for injecting SCSI_MLQUEUE_HOST_BUSY commit, add cdb_len parameter commit
12.3. Drivers in the Staging area
media: Introduce NVIDIA Tegra video decoder driver commit
Move Novell IPX protocol support into staging commit
Move ncpfs to staging commit
Remove lirc_zilog driver commit
12.4. Networking
cavium: add support for Cavium PTP coprocessor commit
Add a driver for Gemini gigabit ethernet commit
socionext: add AVE ethernet driver commit
- Bluetooth
Add a new 04ca:3015 QCA_ROME device commit
btbcm: Add entry for BCM4343A0 UART bluetooth commit
btusb: Add a Kconfig option to enable USB autosuspend by default commit
btusb: Add support for 0cf3:e010 commit
hci_bcm: Add support for BCM2E72 commit
hci_bcm: Support Apple GPIO handling commit
hci_ll: add support for setting public address commit
- Infiniband
- RDMA
- ath10k
Add coredump_mask module parameter commit
Add memory dump support QCA988X commit
Add memory dump support for QCA6174/QCA9377 commit
Add per peer tx stats support for 10.2.4 commit
Add support for Ubiquiti rebranded QCA988X v2 commit
Handle tdls peer events commit
wmi: add management tx by reference support over wmi commit
- ath9k
bnxt_en: Add BCM5745X NPAR device IDs commit
bnxt_en: add support for software dynamic interrupt moderation commit
brcmfmac: Support 43455 save-restore (SR) feature if FW include -sr commit
can: Add support for limiting configured bitrate commit
can: m_can: Add PM Support commit
can: m_can: Support higher speed CAN-FD bitrates commit
- cxgb4
cxgb4/cxgb4vf: add support for ndo_set_vf_vlan commit
cxgb4/cxgb4vf: support for XLAUI Port Type commit
Add support for Inline IPSec Tx commit
Add support for ethtool i2c dump commit
Add vxlan segmentation offload commit, commit, commit, commit
Add geneve offload support for T6 commit
add new T5 and T6 device id's commit
enic: add sw timestamp support commit
hv_netvsc: track memory allocation failures in ethtool stats commit
i40e: Implement an ethtool private flag to stop LLDP in FW commit
igb: Allow to remove administratively set MAC on VFs commit
- iwlwifi:
- ixgbe
- mlxsw
- mt76
mwifiex: device dump support for usb interface commit
mlx4_en: Align behavior of set ring size flow via ethtool commit
- mlx5
Add DC transport support commit, commit, commit, commit, commit, commit
Add hairpin support (We refer the ability of NIC HW to fwd packet received on one port to the other port, also from a port to itself, as hairpin commit, commit, commit, commit, commit, commit, commit, commit
E-switch, Add steering drop counters commit
aquantia: Introduce new AQC devices and capabilities commit, commit
dsa: mediatek: add VLAN support for MT7530 commit
ena: add detection and recovery mechanism for handling missed/misrouted MSI-X commit
hns3: Add support of the HNS3 (Hisilicon Network Subsystem 3) Virtual Function Ethernet driver for hip08 family of SoCs merge
hns: add ACPI mode support for ethtool -p commit
- macb
- mvneta
- mvpp2
- phy
pxa168_eth: add netconsole support commit
qmi_wwan: Add if on lte modem wistron neweb d18q1 commit, add USB id for lt4120 modem commit, add BroadMobi BM806U 2020:2033 commit, add support for Quectel EP06 commit
qualcomm: rmnet: Enable csum offloads commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
qualcomm: rmnet: adds support for configuring features (aggregation and control commands) commit, commit, commit, commit, commit, commit
thunderx: add timestamping support commit
- nfp
Add basic multicast filtering commit
bpf: adjust head support commit, commit, commit, commit, commit
Enhanced debug dump via ethtool commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for offloading the encap and decap of Geneve tunnels commit, commit
Implement firmware flashing commit
phylib: Add device reset GPIO support commit
phylink: add support for 2500baseX and 10GbaseKR commit
- qtnfmac
- rtlwifi
- sfc
Initial X2000-series (Medford2) support commit, commit, commit, commit, commit, commit
Support PTP on 8000 and X2000 series NICs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support 25G configuration with ethtool commit, commit, commit
Support extra stats on Medford2 commit, commit, commit, commit
- sfp
tg3: Add Macronix NVRAM support commit
wcn36xx: Add hardware scan offload support commit
- wil6210
12.5. Audio
pcm: add {{{SNDRV_PCM_FORMAT_S20/SNDRV_PCM_FORMAT_U20 commit
hda/realtek - Add headset mode support for Dell laptop commit, commit, add support headset mode for DELL WYSE commit, enable Thinkpad Dock device for ALC298 platform commit, support headset mode for ALC215/ALC285/ALC289 commit
hda: add dock and led support for HP EliteBook 820 G3 commit and HP ProBook 640 G2 commit
usb-audio: Add native DSD support for TEAC UD-301 commit
usb-audio: Support changing input on Sound Blaster E1 commit
- ASoC
Intel: Skylake: Add extended I2S config blob support in Clock driver commit
Intel: Skylake: Add ssp clock driver commit
Intel: bytcr-rt5651: add support for Line In commit
Intel: cht_bsw_rt5645: Analog Mic support commit
TSCS42xx: Add support for Tempo Semiconductor's TSCS42xx audio CODEC commit
fsl_ssi: add 20-bit sample format for AC'97 and use it for capture commit
hdac_hdmi: Add vendor id for Cannonlake HDMI codec commit
max98373: Added Amplifier Driver commit
pcm186x: Add initial PCM1862/63/64/65 universal ADC driver commit
rockchip: i2s: Support mono capture commit
spdif: Add S32_LE support for S/PDIF dummy codec drivers commit
stm32: add DFSDM DAI support commit
sun4i-codec: enable 12Khz and 24Khz audio sample rates commit
sun4i-i2s: Add support for A83T commit
sun8i-codec: Add ADC support for a33 commit
tas5720: add basic support for TAS5722 devices commit
tas6424: Add support for TAS6424 digital amplifier commit
tlv320aic31xx: Add CODEC clock slave support commit
12.6. Tablets, touch screens, keyboards, mouses
- HID
Add special driver for Jabra devices commit
asus: Add product-id for the T100TAF and T100HA keyboard docks commit
hid-multitouch: support fine-grain orientation reporting commit
intel-ish-hid: Enable Cannon Lake and Coffee Lake laptop/desktop commit
rmi: Support the Fujitsu R726 Pad dock using hid-rmi commit
sony: Report DS4 version info through sysfs commit
wacom: Add support for One by Wacom (CTL-472 / CTL-672) commit
gpio_tilt - delete driver commit
mms114 - add support for mms152 commit
remove at32psif commit
remove atmel-wm97xx touchscreen driver commit
silead - add support for capactive home button found on some x86 tablets commit
12.7. TV tuners, webcams, video capturers
Add new uAPI for DVB streaming I/O commit
dvb-core: make DVB mmap API optional commit
dvb_frontend: add physical layer scrambling support commit
cx231xx: Add support for The Imaging Source DFG/USB2pro commit
dib0700: add support for Xbox One Digital TV Tuner commit
i2c: Add the ov7740 image sensor driver commit
i2c: as3645a: Remove driver commit
intel-ipu3: cio2: add new MIPI-CSI2 driver commit
lirc: implement reading scancode commit, implement scancode sending commit, commit
mt9m111: add media controller support commit
ov5640: add support of DVP parallel interface commit, add support of RGB565 and YUYV formats commit
ov7670: add V4L2_CID_TEST_PATTERN control commit
si2165: add DVBv5 BER statistics commit, add DVBv5 C/N statistics for DVB-C commit
stv090x: add physical layer scrambling support commit
tda18250: support for new silicon tuner commit
uvcvideo: Add D3DFMT_L8 support commit
venus: venc: Apply inloop deblocking filter commit
12.8. Universal Serial Bus
Add support for USB_REQ_SET_ISOCH_DELAY commit
- serial
ldusb: add PIDs for new CASSY devices supported by this driver commit
mtu3: supports remote wakeup for mt2712 with two SSUSB IPs commit
option: Add support for FS040U modem commit
renesas_usbhs: Add support for RZ/A1 commit
xhci: Add DbC support in xHCI driver commit
12.9. Serial Peripheral Interface (SPI)
a3700: Add full-duplex support commit
12.10. Watchdog
Add RAVE SP watchdog driver commit
Add Realtek RTD1295 commit
Add Spreadtrum watchdog driver commit
i6300esb: support multiple devices commit
jz4740: Add support for the watchdog in jz4780 SoC commit
remove at32ap700x_wdt commit
sp5100_tco: Add support for recent FCH versions commit
12.11. ACPI, EFI, cpufreq, thermal, Power Management
12.12. Real Time Clock (RTC)
Add mxc driver for i.MX53 SRTC commit
remove rtc-at32ap700x commit
cros-ec: add cros-ec-rtc driver commit
12.13. Voltage, current regulators, power capping, power supply
Add support for bq27521 battery monitor commit
power: reset: remove unused imx-snvs-poweroff driver commit
regulator: add PM suspend and resume hooks commit
regulator: sc2731: Add regulator driver to support Spreadtrum SC2731 PMIC commit
12.14. Pin Controllers (pinctrl)
Add Microsemi Ocelot SoC driver commit
axp209: add support for AXP813 GPIOs commit
imx6ul: add IOMUXC SNVS pinctrl driver for i.MX 6ULL commit
mediatek: add pinctrl driver for MT7622 SoC commit
meson-axg: Add new pinctrl driver for Meson AXG SoC commit
qcom: Add msm8998 pinctrl driver commit
sh-pfc: r8a7745: Add CAN[01] support commit
sh-pfc: r8a7795: Add CAN support commit
sh-pfc: r8a77995: Add CAN support commit
sh-pfc: r8a77995: Add CAN FD support commit
stm32: Add STM32MP157 MPU support commit
stm32: add STM32F769 MCU support commit
12.15. Multi Media Card (MMC)
block: Add CQE support commit
block: Add blk-mq support commit
cqhci: support for command queue enabled host commit
mmci: Add STM32 variant commit
mmci: Add support for setting pad type via pinctrl commit
renesas_sdhi: enable R-Car D3 (r8a77995) support commit
sdhci-acpi: Add support for ACPI HID of AMD Controller with HS400 commit
sdhci-of-arasan: Add CQHCI support for arasan,sdhci-5.1 commit
sdhci-pci: Add CQHCI support for Intel GLK commit
sdhci_f_sdh30: add ACPI support commit
mmc:host:sdhci-pci:Addition of Arasan PCI Controller with integrated phy commit
12.16. Memory Technology Devices (MTD)
nand: add reworked Marvell NAND controller driver commit
nand: mtk: Support MT7622 NAND flash controller commit
spi-nor: Add ISSI is25lp080d support commit
spi-nor: Add support for s25fl128l and s25fl256l commit
spi-nor: add support for ISSI is25lp128 commit
spi-nor: add support for is25lq040b commit
12.17. Industrial I/O (iio)
Add hardware consumer buffer support commit
ADC: add sigma delta modulator support commit
ADC: add stm32 DFSDM core support commit, add stm32 DFSDM support for PDM microphone commit, add STM32 DFSDM sigma delta ADC support commit
adc: ina2xx: Allow setting Shunt Voltage PGA gain and Bus Voltage range commit
adc: stm32: add support for differential channels commit
health: max30102: Add MAX30105 support commit
hx711: add triggered buffer support commit
light: add support for UVIS25 sensor commit
magnetometer: ak8975: Add another ACPI ID commit
proximity: sx9500: Add another ACPI ID commit
12.18. Multi Function Devices (MFD)
Add driver for RAVE Supervisory Processor commit
12.19. Inter-Integrated Circuit (I2C)
i2c: gpio: add fault injector commit
12.20. Hardware monitoring (hwmon)
dell-smm: Disable fan support for Dell Inspiron 7720 commit and Dell Vostro 3360 commit
dell-smm: Enable broken functionality via "force" module param commit
k10temp: Add temperature offset for Ryzen 1900X commit
pmbus: Add fan control support commit
pmbus: Export pmbus device debugfs directory entry commit
pmbus: cffps: Add debugfs entries commit
pmbus/max31785: Add dual tachometer support commit
pmbus/max31785: Add fan control commit
pmbus/lm25066: Drop support for LM25063 commit
hwmon: Add W83773G driver commit
12.21. General Purpose I/O (gpio)
Add GPIO support for the ACCES PCIe-IDIO-24 family commit
of: Support SPI nonstandard GPIO properties commit
of: Support regulator nonstandard GPIO properties commit
winbond: Add driver commit
12.22. Leds
trigger: Introduce a NETDEV trigger. Available triggers are link, rx, and tx. commit
lm3692x: Introduce LM3692x dual string driver commit
12.23. Cryptography hardware acceleration
chcr: Add support for Inline IPSec commit
caam: add Derived Key Protocol (DKP) support commit
chelsio: Add authenc versions of ctr and sha commit
crypto4xx: support Revision B parts commit
inside-secure: EIP97 support commit
stm32: Support for STM32 CRYP crypto module commit
12.24. PCI
Expose ari_enabled in sysfs commit
cadence: Add EndPoint Controller driver for Cadence PCIe controller commit
cadence: Add host driver for Cadence PCIe controller commit
dwc: artpec6: Add support for endpoint mode commit
dwc: artpec6: Add support for the ARTPEC-7 SoC commit
switchtec: Add device IDs for PSX 24xG3 and PSX 48xG3 commit
12.25. Non-Transparent Bridge (NTB)
Remove Intel Atom NTB driver support commit
12.26. Clock
Add Ingenic jz4770 CGU driver commit
Show symbolic clock flags in debugfs commit
hisilicon: Add support for Hi3660 stub clocks commit
meson-axg: add clock controller drivers commit
qcom: Add A53 PLL support commit
qcom: Add APCS clock controller support commit
qcom: Add regmap mux-div clocks support commit
qcom: Add spmi_pmic clock divider support commit
qcom: ipq8074: add GP and Crypto clocks commit
qcom: ipq8074: add NSS clocks commit
qcom: ipq8074: add NSS ethernet port clocks commit
qcom: ipq8074: add PCIE, USB and SDCC clocks commit
sprd: Add common infrastructure commit
ti: Drop legacy clk-3xxx-legacy code commit
clocksource/drivers/spreadtrum: Add timer driver for the Spreadtrum SC9860 platform commit
12.27. Various
ACPICA: iASL/Tools: Add support for PDTT, SDEV, TPM2 ACPI tables commit
EDAC, ti: Add support for TI keystone and DRA7xx EDAC commit
PM / OPP: Add ti-opp-supply driver commit
visorbus: move driver out of staging commit
extcon: usbc-cros-ec: add support to notify USB type cables commit
firmware: arm_sdei: Add driver for Software Delegated Exceptions commit
firmware: arm_sdei: Add support for CPU and system power states commit
firmware: arm_sdei: add support for CPU private events commit
hwrng: bcm63xx - Remove since bcm2835-rng takes over commit
hwrng: exynos - add Samsung Exynos True RNG driver commit
irqchip/gic-v2m: Add PCI Multi-MSI support commit
irqchip/irq-goldfish-pic: Add Goldfish PIC driver commit
lp: support 64-bit time_t user space commit
memory: tegra: Add Tegra186 support commit
memory: ti-emif-sram: introduce relocatable suspend/resume handlers commit
misc: rtsx: Add support for RTS5260 commit
optee: support asynchronous supplicant requests commit
regmap: add SLIMbus support commit
serial: 8250_pci: Add Brainboxes UC-260 4 port serial device commit
siox: add gpio bus driver commit
siox: new driver framework for eckelmann SIOX commit
slimbus: Add SLIMbus bus type commit
slimbus: Add messaging APIs to slimbus framework commit
slimbus: Add support for 'clock-pause' feature commit
slimbus: core: add common defines required for controllers commit
slimbus: core: add support to device tree helper commit
slimbus: qcom: Add Qualcomm Slimbus controller driver commit
slimbus: qcom: Add runtime-pm support using clock-pause commit
soc/tegra: fuse: Add Tegra186 support commit
soc: Add SoC driver for Gemini commit
soc: mediatek: add MT2712 scpsys support commit
soc: qcom: Introduce QMI encoder/decoder commit
soc: qcom: Introduce QMI helpers commit
soc: xilinx: xlnx_vcu: Add Xilinx ZYNQMP VCU logicoreIP init driver commit
soundwire: Add IO transfer commit
soundwire: Add Master registration commit
soundwire: Add Slave status handling helpers commit
soundwire: Add slave status handling commit
soundwire: intel: Add Intel Master driver commit
soundwire: intel: Add Intel init module commit
switchtec: Add Global Fabric Manager Server (GFMS) event commit
tcmu: allow max block and global max blocks to be settable commit
tcmu: allow userspace to reset ring commit
tee: add TEE_IOCTL_PARAM_ATTR_META commit
tee: add register user memory commit
tty: moxa: Add support for CMSPAR commit
13. List of merges
14. Other news sites
Phoronix 4.16 feature overview