Size: 82306
Comment: add 2.6.18 overview
|
Size: 881
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
Comprehensible changelog of the linux kernel. This page shows a summary of the important changes being added in each linux kernel release - support for new devices, new features (filesystems, subsystems), important internal changes, etc. While this text is aimed to be (unlike the full changelog) readable, it's obvious that some parts will not be comprehensible for those who don't know a lot about kernel internals, just like it happens in every software project. Other places to get news about the linux kernel are [http://lwn.net/Kernel/ LWN kernel status], [http://lwn.net/Articles/driver-porting/ LWN driver porting guide], [http://lwn.net/Articles/2.6-kernel-api/ LWN list of API changes in 2.6], or [http://www.lkml.org www.lkml.org]. 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.15)>> |
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.15 has been released on 28 Jan 2018.
Summary: Besides the latest code to deal with Meltdown/Spectre, this release includes modesetting and advanced display features for the amdgpu driver; improved power management support of systems with SATA Aggressive Link Power Management; a port for the open RISC-V CPUs; initial support for virtualized memory encryption in AMD CPUs; support for the Intel User Mode Instruction Prevention feature; support of the CPU controller in cgroups v2; a new mmap(2) flag to allow direct writes to persistent memory managed by filesystems; and many new drivers and other improvements.
Contents
-
Coolest features
- Meltdown/Spectre
- Modesetting and much better display support in the AMD amdgpu driver
- Improved power management in systems with SATA Link Power Management
- New architecture: RISC-V
- Support for AMD Secure Encrypted Virtualization
- Support the User-Mode Instruction Prevention Intel Security feature
- Better CPU usage restrictions with the CPU resource controller for cgroupv2
- New MAP_SYNC mmap(2) flag to allow direct writes to persistent memory managed by filesystems
- Core
- 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 (USB)
- Serial Peripheral Interface (SPI)
- Serial
- 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)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Hardware Random Number Generator (hwrng)
- Cryptography hardware acceleration
- PCI
- Non-Transparent Bridge (NTB)
- Clock
- Various
- List of merges
- Other news sites
1. Coolest features
1.1. Meltdown/Spectre
This release contains the latest code to deal with Meltdown/Spectre, a security problem you probably have never heard of. Page Table Isolation to address Meltdown is supported for x86/Intel CPUs (it can be disabled with the pti=off kernel boot option); there is also the retpoline mechanism to mitigate spectre v2 (which affects both Intel and AMD), it requires a GCC version supporting the -mindirect-branch=thunk-extern functionality and it can be turned off with boot option spectre_v2=off (if you don't have such compiler, there will be a minimal retpoline mitigation that only exists in the kernel code written in assembly) The PowerPC architecture is also affected by Meltdown on many CPU models, and can prevent those attacks with a "RFI flush of L1-D cache" feature included in this release. ARM is also affected by meltdown, but patches for it are not included in this release. Spectre v1 is not addressed in this version.
A /sys/devices/system/cpu/vulnerabilities/ directory has been added that will show the vulnerabilities affecting your CPU and the mitigations being currently applied.
Code: PTI merge, commit, commit, commit, merge; retpoline commit, commit; powerpc RFI flush commit, commit, commit, commit
1.2. Modesetting and much better display support in the AMD amdgpu driver
This release finally includes the "display code" (132k LoC) that has been missing for a long time from the amdgpu driver - a new driver that AMD made for modern graphics hardware. It provides atomic modesetting support for DCE8 (CIK), DCE10 (Tonga, Fiji), DCE11 (CZ, ST, Polaris), DCE12 (vega10), and DCN1 (RV) including HDMI and DP audio, DP MST, and many other advanced display features. This display code has been enabled by default for Vega10 and Raven; pre-vega10 parts can be enabled via module parameter (amdgpu.dc=1), but are not enabled by default in this release because of stability concerns.
Code: merge
1.3. Improved power management in systems with SATA Link Power Management
For many, many years, there has been a problem with Linux and modern systems that have ALPM (Aggressive Link Power Management) in their SATA AHCI controllers (eg. Haswell, Broadwell, Skylake). Because of the obscurity and lack of documentation of the feature (and because playing with this feature was scary, because it easily caused data corruption), Linux has been unable to properly implement ALPM support for years. Lack of ALPM support prevents the system from entering in deep power saving states, which means a much worse battery life for Linux users on systems with ALPM.
In this release, a patch has been merged that implements a better default behaviour for ALPM without corrupting your data, and this means that Linux users with ALPM will see an improved battery life: a T440s test laptop saves 0.9-1.2W when idle with this patch.
Related link: Hans de Goede post
Related link: Matthew Garret post
Code: commit
1.4. New architecture: RISC-V
This release includes the main parts of the port to RISC-V CPUs. RISC-V is an open instruction set architecture that, unlike proprietary CPUs, can be freely used for any purpose, permitting anyone to design, manufacture and sell RISC-V chips and software.
The port is definitely a work in progress. While builds and boots, it's a bit hard to actually see anything happen because there are no device drivers yet.
Code: merge
1.5. Support for AMD Secure Encrypted Virtualization
Linux 4.14 already added support for AMD Secure Memory Encryption, a feature that allows encrypts memory when written to RAM, and automatically decrypts it when read, thus protecting the contents of DRAM from physical attacks on the system.
This release adds initial support for Secure Encrypted Virtualization, which integrates the memory encryption support in the AMD-V virtualization architecture to support encrypted virtual machines - virtual machines that have their memory secured such that only the guest itself has access to unencrypted version, which protects them from other virtual machines and even the hypervisor itself. Secure Encrypted Virtualization is particularly applicable to cloud computing where virtual machines need not fully trust the hypervisor and administrator of their host system. This release adds the changes necessary in a guest OS for Secure Encrypted Memory; changes required to create and manage SEV guests by a host will be merged in next releases.
See: From KVM forum, AMD's Virtualization Memory Encryption
See: AMD memory encryption whitepaper
Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
1.6. Support the User-Mode Instruction Prevention Intel Security feature
This release adds support for a Intel CPU feature called "User Mode Instruction Prevention". When enabled, this feature disables certain instructions such as SGDT, SLDT, SIDT, SMSW and STR, from being executed in user mode, which reduces the tools available to craft some type of privilege escalation attacks. Because of emulators such as WineHQ and DOSEMU2, in virtual-8086 and protected modes, sgdt, sidt and smsw are emulated; str and sldt are not emulated (no emulation is done for user-space long mode processes).
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
1.7. Better CPU usage restrictions with the CPU resource controller for cgroupv2
Control groups with "unified hierarchy", or cgroup v2, was implemented in 2.6.24 and declared stable in 4.5. The individual resource controllers had to be ported in order to work with this new approach. The biggest missing item was the CPU resource controller, which is used to control the usage of CPU by a group of tasks. The merge of the CPU controller, however, required first addressing some funcionality in the cgroupv2 design, specifically the "thread mode", merged in 4.14, which supports hierarchical resource distribution across the threads of a group. After all that work, this release finally brings a cgroupv2-ready CPU controller.
Recommended LWN article: A milestone for control groups
1.8. New MAP_SYNC mmap(2) flag to allow direct writes to persistent memory managed by filesystems
This release introduces MAP_SYNC and MAP_SHARED_VALIDATE flags to mmap(2), a mechanism that implements synchronous page faults for DAX mappings to make flushing of DAX mappings possible from userspace so that they can be flushed on finer than page granularity and also avoid the overhead of a syscall. It arranges for any filesystem metadata updates that may be required to satisfy a write fault to also be flushed ("on disk") before the kernel returns to userspace from the fault handler. Effectively every write-fault that dirties metadata completes an fsync() before returning from the fault handler. The new MAP_SHARED_VALIDATE mapping type guarantees that the MAP_SYNC flag is validated as supported by the filesystem's mmap() implementation.
Recommended LWN article: Two more approaches to persistent-memory writes
Code: commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
2. Core
PID: replace pid bitmap implementation with IDR API commit, commit
proc: Add CoreDumping flag to /proc/self/status to notify if a process is being coredumped commit
epoll: Massively increase nested epoll performance, commit, commit
- Control Groups
- livepatching
(Un)patching Callbacks, which provide a mechanism for livepatch modules to execute callback functions when a kernel object is (un)patched. They can be considered a "power feature" that extends livepatching abilities to include: Safe updates to global data, "Patches" to init and probe functions and patching otherwise unpatchable code (i.e. assembly) commit, commit, commit
Shadow variables: they allow callers to associate new shadow fields to existing data structures, in order to emulate additions to said structures commit
pvqspinlock: Implement hybrid queued/unfair lock with 2 modes to combine the best attributes of an unfair lock and a pvqspinlock. A lock waiter goes into the unfair mode when there are waiters in the wait queue but the pending bit isn't set. Otherwise, it will go into the queued mode waiting in the queue for its turn commit
sysvipc: make get_maxid O(1) once again commit
user namespaces: increase the number of uid and gid mappings a user namespace can support from 5 to 340 commit
lockdep: Add a boot parameter allowing unwind in "cross-release" lockdep feature commit, commit
Support resetting WARN_ONCE/WARN_ON_ONCE (in order to check if they are triggered again) by writting 1 to /sys/kernel/debug/clear_warn_once commit, commit
kbuild: Speed incremental builds of the kernel up by a bit by caching generated variables commit, commit
kcov: support comparison operands collection commit
Remove /proc/sys/vm/nr_pdflush_threads (has been obsolete since 2.6.32) commit
Add /sys/devices/system/cpu/vulnerabilities directory to show the status of meltdown/spectre handling commit
3. File systems
- XFS
Initial parts of online fsck support, complete support will be merged in future releases commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Switch to use a b+tree to implement the in-core extent list. This reduces the need for a large contiguous allocation that the current indirection array requires, and thus avoids stalls during workloads using giant extent lists (ie. workloads that work with heavily fragmented files), especially on systems that are long running commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Btrfs
Allow to specify zlib compression level, using the mount option -o compress=zlib:9 commit, commit
Improve btrfs send performance of large files commit
A new version of ioctl "extent to inode mapping", addressing a usecase where we want to retrieve more but inaccurate results and do the postprocessing in userspace, aiding defragmentation or deduplication tools commit, commit, commit
Enable indexing for btrfs as lower filesystem in overlayfs commit
Add heuristics for faster guess of the compressibility of data commit, commit, commit, commit, commit, commit, commit
add ref-verify, an optional debugging feature to verify extent reference accounting commit, commit
- ext4
- F2FS
Support flexible inline xattr size commit
Support issuing/waiting discard in range commit
Support error injection of bio allocation commit and get_page errors commit
Support quota sys files commit
Support soft block reservation commit
Export SSR allocation threshold in sysfs commit
Show # of dirty segments via sysfs commit
Show flush list status in sysfs commit
Expose quota information in debugfs commit
- CRAMFS
- GFS2
- AFS
4. Memory management
Speed up page cache truncation part 1 commit, commit, commit, commit, commit, commit, commit
Speed up page cache truncation part 2 commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Implement synchronous page faults for DAX mappings to make flushing of DAX mappings possible from userspace (through a new mmap(2) flag, MAP_SYNC), so that they can be flushed on finer than page granularity and also avoid the overhead of a syscall commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Make able to disable NUMA stats for improved performance by writing 0 to /proc/sys/vm/numa_stat commit
Switches page table accounting to single counter from three - this removes VmPMD and VmPUD in /proc/self/status commit
Complete deferred page initialization commit, commit, commit, commit, commit, commit, commit, commit
dump_pagetables: Add two debugfs files which allow to dump the pagetable of the current task commit, commit, commit
Add infrastructure for get_user_pages_fast() benchmarking commit
slabinfo: add "-U" option to show unreclaimable slabs only commit
android/ion: userspace test utility for ion buffer sharing commit
kmemcheck: rip it out, it has been obsoleted by other facilities commit
Account filp cache to kmemcg commit
Account epoll's epitem and eppoll_entry to kmemcg commit
5. Block layer
loop: make loop cgroup aware commit
device mapper: add DAX support to the DM log-writes target commit, commit
null_blk: add no_sched module parameter commit
zram: add zstd to the supported algorithms list and remove zlib from the recommended list commit, commit
zram: skip swapcache for fast devices to reduce swap-in latency commit, commit, commit, commit
bcache: implement PI controller for writeback rate commit
brd: remove dax support commit
6. Tracing and perf
ftrace: Allow module init functions to be traced commit, commit, commit, commit, commit
tracing: add support for preempt and interrupt enabled/disable events commit, commit
perf stat: Add generic support for standalone metrics specified in JSON files. A metric is a formula that uses multiple events to compute a higher level result (e.g. IPC) commit
perf stat: Setting up groups can be complicated due to the complicated scheduling restrictions of different PMUs. Add a concept of a 'weak group': try to set up a group, but if it's not schedulable fallback to not using a group commit
perf list: Print metric groups with perf list metricgroups. A metric is a formula that uses multiple events to compute a higher level result (e.g. IPC) commit
perf record: user registers can currently only collected implicitely with call graph recording. To allow to see them separately, and filter them, add a new --user-regs option to record that is similar to --intr-regs, but acts on user regs. Also teach perf script to print user regs commit, commit
perf sched timehist: Add --pid and --tid options to show only events for specific pid/tids commit
perf script: Allow creating per-event dump files commit
perf top: multithread the synthetizing of events, which greatly improves user experience in systems such as Intel's Knights Mill commit, commit
Update vendor events JSON metrics for Broadwell DE commit, Broadwell Server commit, Broadwell commit, Haswell EP commit, Haswell commit, Ivy Bridge commit, Ivy Town commit, Sandy Bridge EP commit, Sandy Bridge commit, Skylake commit, Skylake server commit, add Goldmont Plus V1 event file commit
kprobes: Disable the jprobes APIs in preparation for removal. Nowadays ftrace and other tracing features are mature enough to replace jprobes use-cases commit, commit, commit, commit, commit
7. Virtualization
Hyper-V: vmbus: Expose per-channel info in sysfs commit, commit
tools/kvm_stat: Add Python 3 support to kvm_stat commit
vfio/pci: Virtualize Maximum Payload Size commit and Maximum Read Request Size commit
XEN: introduces the frontend for the newly introduced PV Calls procotol, which allows the implementation of a set of POSIX functions in a different domain commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
XEN: grant table interface v2 support commit, commit, commit, commit, commit
8. Cryptography
sm3: add OSCCA SM3 secure hash commit
9. Security
- Add eBPF LSM hooks (see bpf section in networking)
- EVM
Extend the /sys/kernel/security/evm interface to allow userspace to signal an RSA key has been loaded. Also allow userspace to block loading of a symmetric key in order to avoid a compromised system from being able to load an additional key type later commit
Include security.apparmor in EVM measurements commit
- audit
Smack: Base support for overlayfs commit
10. Networking
Note: If you are interested in Linux networking, it is recommended to take a look at LWN's reports on Netconf 2017 and Netdev 2.2
- TCP
Maintain the TCP retransmit queue using an rbtree, with 1GB windows at 100Gb this really has become necessary commit
Improve the CPU consumption of the RACK TCP loss recovery algorithm, in particular for high-speed networks commit, commit, commit
Remove the forward-acknowledgment (FACK) packet-based loss and reordering detection. FACK has been disabled by default and the successor RACK subsumed FACK and can handle reordering better commit, commit
Higher throughput under reordering with adaptive RACK reordering wnd commit
New socket option TCP_FASTOPEN_KEY to allow different keys per listener commit
Configure TFO without cookie per socket and/or per route. Linux already allows to enable TFO without a cookie by using the fastopen-sysctl and setting it to TFO_SERVER_COOKIE_NOT_REQD (or TFO_CLIENT_NO_COOKIE). This release exposes a socket-option and a per-route attribute to enable such fine-grained configurations commit
Add namespace support for the sysctls tcp_abort_on_overflow commit, tcp_adv_win_scale commit, tcp_app_win commit, tcp_autocorking commit, tcp_challenge_ack_limit commit, tcp_default_congestion_control commit, tcp_dsack commit, tcp_early_retrans commit, tcp_fack commit, tcp_frto commit, tcp_invalid_ratelimit commit, tcp_limit_output_bytes commit, tcp_max_reordering commit, tcp_min_rtt_wlen commit, tcp_min_tso_segs commit, tcp_moderate_rcvbuf commit, tcp_nometrics_save commit, tcp_pacing_ca_ratio commit, tcp_pacing_ss_ratio commit, tcp_recovery commit, tcp_retrans_collapse commit, tcp_rfc1337 commit, tcp_rmem and tcp_wmem commit, tcp_slow_start_after_idle commit, tcp_stdurg commit, tcp_thin_linear_timeouts commit, tcp_tso_win_divisor commit, tcp_workaround_signed_windows commit
Add support for the new of a new TCP experimental option that is needed by the SMC protocol. With this option, SMC capabilities are exchanged between peers during the TCP three way handshake commit
- IPv4
- IPv6
During route lookup, reader lock is taken and during route insertion, deletion or modification, writer lock is taken. This is a very inefficient implementation because the fastpath always has to do the operation to grab the reader lock. This release tries to get rid of the usage of the rwlock and replace it with rcu and spinlock protection. This greatly speeds up the fastpath performance as it only needs to hold rcu which is much less expensive than grabbing the reader lock commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Implement limits on RFC 8200 Hop-by-Hop and Destination options commit
Set all.accept_dad to 0 by default commit
Add support for sockopt(SOL_IPV6, IPV6_FREEBIND) commit
ila: make identifier format optional commit, commit, commit, commit, commit
Add a per-device sysctl (ndisc_tclass) to specify IPv6 Neighbour Discovery traffic class commit
VSOCK: add the netlink sock_diag interface for AF_VSOCK. Userspace can send a DUMP request to filter sockets based on their state (connected, listening, etc) commit, commit, commit, commit, commit
- BPF
spectre v2 prevention: prevent out-of-bounds speculation commit, introduce BPF_JIT_ALWAYS_ON config commit
Add 'bpftool' utility, to help with the inspection and simple manipulation of eBPF maps (documentation tools/bpf/bpftool
Allow BPF programs to get the base RTT of the connection commit, commit, commit, commit, commit
New bpf cpumap type for XDP_REDIRECT commit commit, commit, commit, commit
eBPF-based device cgroup controller: cgroup v2 lacks the device controller, provided by cgroup v1; this release adds a new eBPF program type, which in combination of previously added ability to attach multiple eBPF programs to a cgroup, will provide a similar functionality, but with some additional flexibility commit, commit, commit, commit, commit
New file mode and LSM hooks for eBPF object permission control: eBPF objects are accessed, controlled, and shared via a file descriptor, but unlike file descriptors for files and sockets, the existing mechanisms for eBPF object access control are very limited: grant access to all processes, or only CAP_SYS_ADMIN processes. This release adds LSM hooks to eBPF so that security systems such as selinux can do a more fine grained control commit, commit, commit, commit, commit
Extend bpf_{prog,map}_info commit, commit, commit, commit, commit
Permit multiple bpf attachments for a single perf tracepoint event commit, commit, commit
Enable generic transfer of metadata from XDP into skb, meaning the packet has a flexible and programmable room for meta data, which can later be used by BPF to set various skb members when passing up the stack commit, commit, commit, commit, commit, commit
Add support for attaching multiple programs per cgroup commit, commit, commit, commit, commit, commit, commit, commit
Add offload as a first class citizen commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- bridge
IGMP snooping for local traffic commit, commit, commit, commit, commit, commit
Add notifications for the bridge dev on vlan change commit
Implement arp and nd suppression in the bridge driver for ethernet vpns. It implements rfc7432, section 10 for ethernet VPN deployments commit, commit, commit
Trigger RTM_NEWLINK when interface is modified by bridge ioctl commit
- 802.11 (wireless)
ppp: allow usage in namespaces commit
ip_tunnel: add mpls over gre support commit
Trigger netlink notification on ifalias change via sysfs commit
Time-sensitive Networking (TSN): Add qdisc based config interface for Credit-Based Shaper (CBS). The CBS queueing discipline implements the shaper algorithm defined by the 802.1Q-2014 Section 8.6.8.2 and detailed in Annex L commit, commit, commit, commit, commit, commit
Distributed switch architecture: add port fdb dump commit
qrtr: Support decoding incoming v2 packets commit
- packet scheduler
netfilter: nf_tables: adds a new get operation to look up for specific elements in a set via netlink interface commit
- openvswitch
smc: add SMC rendezvous protocol commit
SCTP: Introduce SCTP Stream Schedulers. It provides 3 schedulers at the moment: FCFS, Priority and Round Robin. The other 3, Round Robin per packet, Fair Capacity and Weighted Fair Capacity will be added later commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
TIPC: Add a 'Group Communication' feature in order to resolve the datagram and multicast flow control problem. This new feature makes it possible for a user to instantiate multiple private virtual brokerless message buses by just creating and joining member sockets commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ipvlan: add 'private' and 'vepa' attributes to ipvlan modes commit, commit
- Infiniband
Expose CQ moderation to user space commit, commit, commit, commit, commit, commit, commit
Receive stateless offloading support for incoming tunneling traffic for raw ethernet QP commit, commit, commit
Introduce Multi-Packet receive work queue to improve performance and memory footprint commit, commit
NFC: Add NFC_CMD_DEACTIVATE_TARGET support commit
11. Architectures
- RISC-V
Add new RISC-V architecture (FEATURED) merge
- ARM 32/64 bit Device-Tree Sources
New SoC: Add support for Broadcom Hurricane 2 SoC used in switching products commit, commit
Hurricane 2 based support for Ubiquiti UniFi Switch 8 commit
Hurricane 2 based support for Broadcom BCM5301X based wireless access points and routers: Luxul ABR-4500 commit, Luxul XBR-4500 commit, Luxul XAP-1440 commit, Luxul XAP-810 commit
New SoC: Allwinner R40 is a new SoC, with Quad Core Cortex-A7 and peripherals like A20 commit, commit
Allwinner R40 based Banana Pi M2 Ultra and Berry single-board computers commit, commit
New SoC: Amlogic Meson-AXG A113D based SoC for audio commit
Allwinner A83T based TBS A711 Tablet commit
Allwinner H5 based NanoPi NEO Plus2 single-board computer commit
Actions S500 based CubieBoard6 single-board computer commit
Amlogic S912 based Khadas VIM2 single-board computer commit
Amlogic S912 based Tronsmart Vega S96 set-top-box commit
NXP i.MX51 based Zodiac Inflight Innovations RDU1 board commit
NXP i.MX53 based GE Healthcare PPD biometric monitor commit
NXP i.MX6 based Pistachio single-board computer commit
NXP i.MX6 based Vining-2000 automotive diagnostic interface commit
NXP i.MX6 based Ka-Ro TX6 Computer-on-Module in additional variants commit
Qualcomm MSM8974 (Snapdragon 800) based Fairphone 2 phone commit
Qualcomm MSM8974pro (Snapdragon 801) based Sony Xperia Z2 Tablet commit
Realtek RTD1295 based set-top-boxes MeLE V9 and PROBOX2 AVA commit, commit
New SoC: Renesas R-Car V3M (R8A77970) SoC for automotive commit, commit
R-Car V3M "Eagle" reference board commit
Renesas H3ULCB and M3ULCB "Kingfisher" extension infotainment boards commit, commit, commit
Renasas r8a7745 based iWave G22D-SODIMM SoM commit
Rockchip rk3288 based Amarula Vyasa single-board computer commit
Samsung Exynos5800 based Odroid HC1 single-board computer commit
display5: Device tree description of LWN's DISPLAY5 board commit
imx6qdl-wandboard: Add support for the revd1 variants commit
iwg22m: Add iWave RZG1E SODIMM board based on RZ/G1E commit, commit
sun7i: Add dts file for A20-OLinuXino-MICRO-eMMC commit
DRA722: Add support for DRA71x Silicon Rev 2.1 commit
ulcb-kf: initial device tree commit
- ARM
Make XIP kernel .data compressed in ROM commit, commit, commit, commit, commit
Add support for ELF fdpic binaries on both MMU and noMMU platforms commit, commit, commit, commit, commit, commit, commit, commit
Delete the V3 PCI driver commit
NOMMU: Support MPU in XIP configuration commit
KVM: Add full support for GICv4, bringing direct injection of MSIs to arm and arm64 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
KVM: vgic-its: Implement KVM_DEV_ARM_ITS_CTRL_RESET commit
- ARM64
Initial support for the Scalable Vector Extension (SVE), an extension to the AArch64 execution state which complements and extends the SIMD functionality of the base architecture to support much larger vectors commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Always use REFCOUNT_FULL commit
Expose support for optional ARMv8-A features commit
perf: Add PMU driver for ARMv8.2 Statistical Profiling Extension commit
perf: Add PMU driver for Hisilicon's system PMUs commit, commit, commit,commit
- X86
(FEATURED) Add page table isolation to fix Meltdown merge, commit, commit, commit
Implement CPU vulnerabilites sysfs functions commit
(FEATURED) Add User-Mode Instruction Prevention commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enable new SSE/AVX/AVX512 CPU features commit
PCI: Enable a 64bit BAR on AMD Family 15h (Models 00-1f, 30-3f, 60-7f) commit
intel_rdt: Add framework for better RDT UI diagnostics commit
(FEATURED) Add AMD Secure Encrypted Virtualization (SEV) support part 1 (changes required in a guest OS for SEV support) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit commit
Add vector domain debugfs support commit
- platforms
wmi: create userspace interface for drivers commit
Add driver to force WMI Thunderbolt controller power status commit
asus-wmi: Add lightbar led support commit
thinkpad_acpi: Implement tablet mode using GMMS method commit
intel_turbo_max_3: Add Skylake platform commit
silead_dmi: Add entry for the Chuwi Hi8 Pro tablet commit, add entry for the Digma e200 tablet commit
dell-smbios-wmi: Add new WMI dispatcher driver commit, commit, commit, commit, commit
Remove unused HyperTransport interrupt support commit
xen: support 52 bit physical addresses in pv guests commit
kvm: vmx: Allow disabling virtual NMI support commit
- OPENRISC
- POWERPC
(FEATURED) Add support for RFI flush of L1-D cache to address meltdown issue commit, commit, commit, commit
Add commandline option to disable hardware transactional memory commit
Implement PMEM API commit
Implement UACCESS_FLUSHCACHE API commit
Allow to configure if radix is used by default commit
VAS: Add support for user receive window commit, export HVWC to debugfs commit
xmon: Add option to show uptime information commit, support dumping software pagetables commit
Add support for setting SPRN_TIDR commit
Add POWER9_DD20 feature commit
KVM: PPC: Book3S HV: Add infrastructure for running HPT guests on radix host commit, allow for running POWER9 host in single-threaded mode commit
- S390
Add support for FORTIFY_SOURCE commit
Queued spinlocks and queued rwlocks implementations commit, commit, commit, commit
Add hardware counter support for IBM z14 commit
crypto: add s390 platform specific aes gcm support commit
disassembler: add new z14 instructions commit, add sthyi instruction commit
ptrace: add runtime instrumention register get/set which allows to read and modify the runtime instrumention control block commit
Add s390_sthyi system call which emulates the sthyi (store hypervisor information) instruction commit
topology: add detection of dedicated vs shared CPUs commit
Optimized implementations of memset16, memset32 & memset64 commit and memset commit
virtio: remove the old KVM virtio transport commit
zcrypt: add the full CEX6S card support to the zcrypt device driver commit
zcrypt: Introduce QACT support for AP bus devices commit
- perf
- SPARC
vDSO for sparc commit
- MIPS
- M68K
Add Sysam stmark2 open board support commit
- PARISC
parisc: Add CPU topology support commit
12. Drivers
12.1. Graphics
Add DRM mode object leasing for improving VR use cases. It provides new data structures to hold "lease" information about drm mode setting objects, and provides for creating new drm_masters which have access to a subset of the available drm resources commit, commit, commit, commit
Add CRTC_GET_SEQUENCE and CRTC_QUEUE_SEQUENCE ioctls. They provide crtc-id based functions instead of pipe-number, while also offering higher resolution time and wider frame count as required by the Vulkan API commit
- intel
Add Display IPC support. IPC (Isochronous Priority Control) is the hardware feature, which dynamically controls the memory read priority of Display commit, commit, commit
Transparent Huge Page support commit, commit, commit, commit, commit, commit
User defined priorities support. It allows to change the default priority on a per-context basis, allowing different contexts to be favoured with GPU time at the expense of lower importance work. The user can adjust the context's priority via I915_CONTEXT_PARAM_PRIORITY, with more positive values being higher priority (they will be serviced earlier, after their dependencies have been resolved) commit, commit, commit
gvt: Add emulation for BAR2 (aperture) with normal file RW approach commit
gvt: Add support for PCIe extended configuration space commit
perf: add support for Coffeelake GT2 commit
Drop debugfs/i915_gem_pin_display commit
- amdgpu
(FEATURED) Merge the AMD DC (display code) layer which is requirement to program the display engines on the new Vega and Raven based GPUs. It also contains support for all amdgpu supported GPUs (CIK, VI, Polaris), which has to be enabled. It is also a kms atomic modesetting compatible driver (unlike the previous display code) and it includes HDMI and DP audio, DP MST, and many other advanced display features merge
BO flag to allow buffers to opt out of implicit sync commit
Add GPU reset functionality for Vega10 commit
Prime mmap support commit
Add FENCE_TO_HANDLE ioctl that returns syncobj or sync_file or being able to convert an amdgpu fence into one of the handles commit
UVD video encode ring support on Polaris commit, commit, commit, commit, commit, commit, commit, commit, commit
Transparent huge page DMA support commit, commit, commit, commit
CTX priority setting API commit, commit, commit, commit, commit
Add query to allow userspace to figure out if VRAM was lost commit
Powerplay: get the temperature on CZ commit
Add option for force enable multipipe policy for compute commit
amdkfd: Drop radeon support commit
- nouveau
Pascal temperature sensor support commit
- exynos
- tegra
Prep work for tegra186 commit
- msm
- vc4
New madvise ioctl commit
- Rockchip
LVDS support commit
- omapdrm
- etnaviv
- sun4i
- pl111
- adv7511
Add HDMI CEC support commit
- sii8620
Add remote control support commit
- host1x
- panel
tve200: Add new driver for TVE200 commit
fbdev: remove dead igafb driver commit
12.2. Storage
(FEATURED) libata: Add new med_power_with_dipm link_power_management_policy setting commit
ahci: Add support for Cavium's fifth generation SATA controller commit
ceva: Add gen 3 mode support in driver commit
ceva: Make RxWaterMark value as module parameter commit
- nvme
- SCSI
scsi: Export blacklist flags to sysfs commit
sd: change allow_restart to bool in sysfs interface commit
hisi_sas: add v3 hw DFX feature commit
hisi_sas: add support for servicing AXI error handling commit, commit
megaraid_sas: Add support for Crusader controllers commit
mpt3sas: NVMe support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mpt3sas: Adding support for SAS3616 HBA device commit
qla2xxx: Changes to support N2N logins commit
qla2xxx: Reinstate module parameter ql2xenablemsix commit
smartpqi: update controller ids commit
target: Add netlink command reply supported option for each device commit
12.3. Drivers in the Staging area
typec: fusb302: Move out of staging commit
typec: tcpm: Move out of staging commit
comedi: adv_pci_dio: update for PCI-1761 commit
atomisp: Remove AP1302 sensor support commit
atomisp: Remove IMX sensor support commit
VME: Remove PIO2 driver commit
12.4. Networking
- Bluetooth
Add support for the HiSilicon RoCE engine in the hip08 SoC commit, commit, commit, commit, commit, commit, commit, commit ,commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
vmw_pvrdma: Add shared receive queue support commit
ath10k: add new cipher suite support commit
- bnxt_en
brcmfmac: add CLM download support commit
- cxgb4
Add support for new flash parts commit
Add support to offload tc flower commit, commit, commit, commit
Add new pci device id's for T5 commit, commit and T6 commit, commit
Add hash-filter support to tc-flower offload commit, commit, commit, commit, commit, commit, commit
Enable more tc flower offload matches and actions commit, commit, commit, commit, commit, commit, commit, commit
Collect more hardware dumps via ethtool commit, commit, commit, commit, commit, commit, commit, commit
Add support to get hardware debug logs via ethtool commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Remove the obsolete kernel module option 'c4iw_debug' commit
cxgb4vf: define get_fecparam ethtool callback commit
enic: Add support for 'ethtool -g/-G' commit
hv_netvsc: Add ethtool handler to set and get TCP hash levels commit
- i40e
Configuring traffic classes via new hardware offload mechanism in tc/mqprio commit, commit, commit, commit, commit, commit
tc-flower based cloud filters commit, commit, commit, commit, commit, commit
Add new PHY types for 25G AOC and ACC support commit
Add support for 'ethtool -m' commit
allow XPS with QoS enabled commit
i40evf: enable support for VF VLAN tag stripping control commit
- ibmvnic
atusb: Driver for Busware HUL dongle commit
- iwlwifi
ixgbe: add counter for times Rx pages gets allocated, not recycled commit
liquidio: xmit_more support commit, switchdev support for LiquidIO NIC commit
- mlxsw
Preparation for multicast router offload commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for partial multicast route offload commit, commit, commit, commit, commit, commit, commit
Add router adjacency dpipe table commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for non-equal-cost multi-path commit, commit, commit, commit, commit, commit, commit, commit
Add support for offloading IPv4 multicast routes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Handle changes in GRE configuration commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Offload decap without encap commit, commit, commit, commit, commit
qdisc RED offload commit, commit, commit ,commit, commit, commit, commit, commit, commit
Offload bridge device mrouter commit, commit, commit, commit, commit
- mlx5/mlx5e
Enable differentiated services code point (dscp) to priority mapping for Ethernet packet. Once this feature is enabled, the packet is routed to the corresponding priority based on its dscp. User can combine this feature with priority flow control (pfc) feature to have priority flow control based on the dscp commit, commit, commit, commit, commit, commit
IPoIB Muli Pkey support commit, commit, commit, commit, commit, commit, commit, commit, commit ,commit, commit, commit
Support multiple updates of steering rules in parallel commit
Add support for 802.1ad vlan filter commit and insertion support commit
Add VLAN offloads statistics commit
Add support for ethtool msglvl support commit
CHECKSUM_COMPLETE offload for VLAN/QinQ packets commit
Enable CQE based moderation on TX CQ commit
Add support for networking over Thunderbolt cable commit, commit and properties commit, commit
- dsa
ena: add power management ops to the ENA driver commit, add statistics for missed tx packets commit
- hns3
Add support for DCB feature commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add mqprio hardware offload support in hns3 driver commit
Add support set_link_ksettings and for nway_reset ethtool command commit, commit
Support set_ringparam and {set|get}_rxnfc ethtool commands commit, commit, commit
Add mac loopback selftest support in hns3 driver commit
korina: use GRO commit
mvpp2: add ethtool GOP statistics commit
- phy
qmi_wwan: add Quectel BG96 2c7c:0296 commit, add Sierra EM7565 1199:9091 commit
qualcomm: rmnet: Add support for GRO commit, implement bridge mode commit
- netronome nfp
Extend flower offload match and action capabilities to add offload capabilities for matching on MPLS, TTL, TOS and flow label. Furthermore offload capabilities for action have been expanded to include set ethernet, ipv4, ipv6, tcp and udp headers commit, commit, commit, commit, commit, commit, commit
Add get/set link settings ndos to representors commit
bpf: stack support in offload commit, commit, commit, commit, commit, commit, commit, commit, commit
bpf: support direct packet access commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
bpf ABIv2 and multi port commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
bpf: support [BPF_ALU | BPF_ALU64] | BPF_NEG commit
flower vxlan tunnel offload commit, commit, commit, commit, commit, commit, commit
qedr: Add iWARP support for QL4xxxx commit, commit, commit, commit, commit, commit, commit
- qed
qtnfmac: make "Channel change" event report full channel info commit
r8169: Add support for interrupt coalesce tuning (ethtool -C) commit
ravb: RX checksum offload commit
- rsi
- rtlwifi
sfc: support rx-fcs and rx-all commit
wil6210: remove SSID debugfs commit
Add a driver for Renesas uPD60620 and uPD60620A PHYs commit
12.5. Audio
ac97: add an ac97 bus. The goal of this new implementation is to implement a device/driver model for AC97, with an automatic scan of the bus and automatic discovery of AC97 codec devices commit
hda/realtek: Add support for ALC1220 commit, add headset mic support for Intel NUC Skull Canyon commit, new codec support for ALC257 commit
hda: Add Raven PCI ID commit
line6: add support for POD HD DESKTOP commit
- ASoC
AMD: Add machine driver for cz rt5650 commit
Intel: Headset button support in kabylake machine driver commit
Intel: cht_bsw_max98090: add support for Baytrail commit
add mclk-fs support to audio graph card commit
arizona: Add support for setting the output volume limits commit
bcm2835: Add support for TDM modes commit, support additional samplerates up to 384kHz commit, support left/right justified and DSP modes commit
cygnus: Remove support for 8 bit audio and for mono commit
da7213: add support for DSP modes commit
intel: byt: Add headset jack commit
max98927: Added support for DSP_A and DSP_B format commit
rsnd: add MIX Volume Ramp support commit
rt5514: Voice wakeup support commit
stm32: sai: Add synchronization support commit
ts3a227e: add acpi table commit
wm9705: add ac97 new bus support commit
wm9712: add ac97 new bus support commit
wm9713: add ac97 new bus support commit
sound: Retire OSS commit
12.6. Tablets, touch screens, keyboards, mouses
- HID
Add ID 044f:b605 ThrustMaster, Inc. force feedback Racing Wheel commit
alps: add support for Alps T4 Touchpad device commit, add new U1 device ID commit,
asus: Add support for Fn keys on Asus ROG G752 commit
Add I2C attached EETI EXC3000 multi touch driver commit
Add support for the Samsung S6SY761 touchscreen commit
edt-ft5x06: implement support for the EDT-M12 series commit
goodix: support gt1151 touchpanel commit
wm97xx: add new AC97 bus support commit
xpad: add support for PDP Xbox One controllers commit
12.7. TV tuners, webcams, video capturers
rockchip/rga: v4l2 m2m support commit
v4l2-tpg: add Y10 and Y12 support commit
vivid: add support for Y10 and Y12 commit
cec-gpio: add HDMI CEC GPIO driver commit
imx274: V4l2 driver for Sony imx274 CMOS sensor commit
- remote control
tc358743: add CEC support commit
tegra-cec: add Tegra HDMI CEC driver commit
usbtv: add a new usbid commit
12.8. Universal Serial Bus (USB)
typec: driver for TI TPS6598x USB Power Delivery controllers commit
typec: wcove: start using tcpm for USB PD support commit
f81534: implement break control commit
qcserial: add pid/vid for Sierra Wireless EM7355 fw update commit, add Sierra Wireless EM7565 commit
dwc2: add support for STM32F7xx USB OTG HS commit
mtu3: support option to disable usb3 ports commit
mtu3: add support for usb3.1 IP commit
renesas_usbhs: add support for R-Car D3 commit
usb251xb: Add USB2517i specific struct and IDs commit
xhci-mtk: support option to disable usb3 ports commit
xhci: add port speed ID to portsc tracing commit
xhci: Add debugfs interface for xHCI driver commit
early: Use new USB product ID and strings for DbC device commit
option: add Quectel BG96 id commit, add support for Telit ME910 PID 0x1101 commit, adding support for YUGA CLM920-NC5 commit
usb_debug: add new USB device id commit
cp210x: add new device ID ELV ALC 8xxx commit, add IDs for LifeScan OneTouch Verio IQ commit
ftdi_sio: add id for Airbus DS P8GR commit
phy: mxs: add usb charger type detection commit
phy: remove phy-msm-usb.c commit
phy: remove phy-qcom-8x16-usb.c commit
host: remove ehci-msm.c commit
Drop unused usb-serial-core USB driver commit
12.9. Serial Peripheral Interface (SPI)
12.10. Serial
8250_fintek: UART dynamic clocksource on Fintek F81216H commit and Fintek F81866 commit
8250_mid: Enable HSU on Intel Cedar Fork PCH commit
mvebu-uart: add function to change baudrate commit, support probe of multiple ports commit, commit
8250_pci: Add Amazon PCI serial device ID commit
serdev: Add ACPI support commit
sh-sci: Support for variable HSCIF hardware RX timeout commit
tty: serial: meson: allow baud-rates lower than 9600 commit
12.11. ACPI, EFI, cpufreq, thermal, Power Management
- ACPI:
LPIT: Add Low Power Idle Table (LPIT) support commit
PMIC: Add TI PMIC TPS68470 operation region driver commit
PMIC: Add opregion driver for Intel Dollar Cove TI PMIC commit
nfit: add support for the _LSI, _LSR, and _LSW label methods commit
nfit: Enable to show what feature is supported for nfit_test commit
nfit: add 'Enable Latch System Shutdown Status' command support commit
nfit: add support for NVDIMM_FAMILY_INTEL v1.6 DSMs commit
APD: Add clock frequency for ThunderX2 I2C controller commit
- thermal
hisi: Add support for hi3660 SoC commit
Add Tegra BPMP thermal sensor driver commit
Add brcmstb AVS TMON driver commit
imx: Add support for reading OCOTP through nvmem commit
int340x: processor_thermal: Add Cannon Lake support commit and Coffee Lake support commit
pch: Add Cannon Lake support commit
rockchip: Support the RV1108 SoC in thermal driver commit
cpuidle: ladder: Add per CPU PM QoS resume latency support commit
nfit_test: add error injection DSMs commit
12.12. Real Time Clock (RTC)
mediatek: add driver for RTC on MT7622 SoC commit
Add support for NXP PCF85363 real-time clock commit
sc27xx: Add Spreadtrum SC27xx PMIC RTC driver commit
12.13. Voltage, current regulators, power capping, power supply
Add support for Smart Battery System Manager commit
axp20x: Add support for AXP813 regulators commit
da9211: update for supporting da9223/4/5 commit
qcom_spmi: Add support for pmi8994 commit
12.14. Pin Controllers (pinctrl)
intel: Add Intel Cedar Fork PCH pin controller support commit
sh-pfc: r8a7795: Add SDHI0-3 support commit, Add USB3.0 host support commit
sh-pfc: r8a77995: Add USB2.0 host support commit
sh-pfc: r8a7795-es1: Add USB3.0 host support commit
rza1: Add support for RZ/A1L commit
gpio: mcp23s08: add support for mcp23018 commit
12.15. Multi Media Card (MMC)
Preparations for enabling CQE (eMMC CMDQ) requests commit, commit, commit
Convert RPMB to a character device commit
Export emmc revision in sysfs commit
- mediatek
meson-mx-sdio: Add a driver for the Amlogic Meson8 and Meson8b SoCs commit
sdhci-omap: Add OMAP SDHCI driver commit
sdhci-pci: Add support for Intel CDF commit
12.16. Memory Technology Devices (MTD)
sharpslpart: Add sharpslpart partition parser commit
intel-spi: Add Intel Lewisburg PCH SPI super SKU PCI ID commit
- spi-nor
12.17. Industrial I/O (iio)
accel: add support to LIS2DW12 commit
accel: add support to LIS3DHH commit
accel: kxcjk1013: add support for KXTF9 commit
dac: Add Texas Instruments 8/10/12-bit 2/4-channel DAC driver commit
dac: ad5446: Add IDs of compatible Texas Instruments chips commit
dac: ds4422/ds4424 dac driver commit
adc: mcp320x: Add support for mcp3550/1/3 commit
chemical: ccs811: Add support for data ready trigger commit
gyro: st_gyro: add SPI-3wire support to st_gyro framework commit
light: tcs3472: support out-of-threshold events commit
magnetometer: st_magn: add SPI-3wire support to LIS3MDL commit
pressure: add support to LPS33HW and LPS35HW commit
pressure: st_pressure: add SPI-3wire support to st_pressure framework commit
proximity: Add rfd77402 driver commit
platform/chrome: Add cros_ec_accel_legacy driver commit
12.18. Multi Function Devices (MFD)
Add Spreadtrum SC27xx series PMICs driver commit
Add support for Cherry Trail Dollar Cove TI PMIC commit
rts5249: Add support for RTS5250S power saving commit
wm97xx-core: core support for wm97xx Codec commit
12.19. Pulse-Width Modulation (PWM)
mediatek: Add MT2712/MT7622 support commit
12.20. Inter-Integrated Circuit (I2C)
xgene-slimpro: Support v2 commit
12.21. Hardware monitoring (hwmon)
k10temp: Add support for family 17h commit, add support for temperature offsets commit
max6621: Add support for Maxim MAX6621 temperature sensor commit
xgene: Support hwmon v2 commit
pmbus: Add driver for Maxim MAX31785 Intelligent Fan Controller commit
12.22. General Purpose I/O (gpio)
Add Tegra186 support commit
Add driver for Maxim MAX3191x industrial serializer commit
dwapb: Add wakeup source support commit
12.23. Leds
ledtrig-activity: Add a system activity LED trigger commit
Add driver for PC Engines APU/APU2 LEDs commit
12.24. DMA engines
Add STM32 DMAMUX driver commit
Add STM32 MDMA driver commit
Add Spreadtrum DMA driver commit
sun6i: Add support for Allwinner A64 and compatibles commit
12.25. Hardware Random Number Generator (hwrng)
iproc-rng200 - Add support for BCM7278 commit
12.26. Cryptography hardware acceleration
12.27. PCI
Add resizable BAR infrastructure commit
Add pci=big_root_window option for AMD 64-bit windows commit
Expose SR-IOV offset, stride, and VF device ID via sysfs commit
Add support for Synopsys DesignWare RC in ECAM mode commit
layerscape: Add support for ls1012a commit
tango: Add MSI controller support commit
tegra: Add Tegra186 PCIe support commit
v3-semi: Add V3 Semiconductor PCI host driver commit
12.28. Non-Transparent Bridge (NTB)
Add MicroSemi Switchtec Non-Transparent Bridge Support commit, commit, commit, commit, commit, commit, commit, commit, commit
12.29. Clock
bcm: Add Broadcom Hurricane 2 clock support commit
samsung: Add a separate driver for Exynos4412 ISP clocks commit
qcom: Implement RPM clocks for MSM8660/APQ8060 commit
mediatek: Add MT2712 clock support commit, add clock support for MT7622 SoC commit
sh_cmt: Support separate R-Car Gen2 CMT0/1 commit
12.30. Various
bus: ti-sysc: Add minimal TI sysc interconnect target driver commit
bus: add driver for the Technologic Systems NBUS commit
extcon: max77843: Add OTG power control to the MUIC driver commit, add support for SmartDock accessory commit
firmware: qcom: scm: Expose download-mode control commit. expose secure IO service commit
firmware: tegra: Add BPMP debugfs support commit
iommu/omap: Add support to program multiple iommus commit
iommu/ipmmu-vmsa: Enable multi context support commit
- irqchip
brcmstb-l2: Add support for the BCM7271 L2 controller commit
gic-v3: Add support for Range Selector (RS) feature commit
meson: Add support for gpio interrupt controller commit
stm32: Add stm32h7 support commit, add multi-bank management commit
exiu: Add support for Socionext Synquacer EXIU controller commit
memory: brcmstb: Add driver for DPFE commit
cxl: Add support for POWER9 DD2 commit
cxl: Provide debugfs access to PSL_DEBUG/XSL_DEBUG registers commit
- drivers/nvmem
remoteproc: debug: add resource table dump feature commit
remoteproc: debug: add carveouts list dump feature commit
- drivers/reset
- drivers/soc
w1: add w1_ds28e17 driver for the DS28E17 Onewire to I2C master bridge commit
vfio: platform: reset: Add Broadcom FlexRM reset module commit
13. List of merges
14. Other news sites
LWN's merge window part 1, part 2; Statistics for the 4.15 kernel
Phoronix The New Features Of Linux 4.15
heise.de Die Neuerungen von Linux 4.15