66445
Comment:
|
886
fix some URLs
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
Comprehensible changelog of the linux kernel, inspired by [http://wiki.dragonflybsd.org/index.php/DragonFly_Status Dragonfly's status]. Other places to get news about the linux kernel are [http://www.kernel-traffic.org Kernel traffic], [http://lwn.net/Kernel/ LWN kernel status], [http://lwn.net/Articles/driver-porting/ LWN driver porting guide] and [http://lwn.net/Articles/2.6-kernel-api/ LWN list of API changes in 2.6] - many articles here link to LWN and much of the 2.6.x changelog was restored from them (you may be be interested in subscribing so Jonathan can keep up the good work ;) ) Changes made to the 2.5.x-2.6.0 development series can be found in the Linux25Changes page. Before adding things here look at the RULES section at the end of the page!! | #pragma keywords Linux, Kernel, Operative System, Linus Torvalds, Open Source, drivers, filesystems, network, memory management, scheduler, preemption, locking #pragma description Summary of the changes and new features merged in the Linux Kernel during the 2.6.x and 3.x development Changes done in each Linux kernel release. Other places to get news about the Linux kernel are [[http://lwn.net/Kernel/|LWN kernel status]] or the Linux Kernel mailing list (there is a web interface in [[http://www.lkml.org|www.lkml.org]] or [[https://lore.kernel.org/lkml/|lore.kernel.org/lkml]]). List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules! |
Line 3: | Line 5: |
===== 2.6.15 ===== * '''STILL NOT RELEASED!''' * Swaptoken tuning: It turns out that the original swap token implementation, by Song Jiang, only enforced the swap token while the task holding the token is handling a page fault, this patch approximates that, like the page fault code does. It has the effect of automatically, and gradually, disabling the enforcement of the swap token when there is little or no paging going on, and "turning up" the intensity of the swap token code the more the task holding the token is thrashing [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fcdae29aa7a5c79f245110f6680afdc1858d3626 (commit)] * Demand faulting for huge pages [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c887265977213985091476be40ab11dfdcb4caf (commit)] * .text page fault SMP scalability optimization: This fixes a case where large systems wouldn't scale well while faulting in the .text. The reason was a useless overwrite of the same pte from all cpu [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1a44e149084d772a1bcf4cdbdde8a013a8a1cfde (commit)] * Split page table lock using a separate spinlock per page table page, to guard the page table entries in that page, instead of using the mm's single page_table_lock. Splitting the lock is not quite for free: another cacheline access. Ideally, we would use split ptlock only for multi-threaded processes on multi-cpu machines; but deciding that dynamically would have its own costs. So for now enable it by config, at some number of cpus [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c21e2f2441dc5fbb957b030333f5a3f2d02dea7 (commit)] * Add generic memory add/remove and supporting functions for memory hotplug [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3947be1969a9ce455ec30f60ef51efb10e4323d1 (commit)] * IPv4/IPv6: UFO (UDP Fragmentation Offload) Scatter-gather approach: UFO is a feature wherein the Linux kernel network stack will offload the IP fragmentation functionality of large UDP datagram to hardware. This will reduce the overhead of stack in fragmenting the large UDP datagram to MTU sized packets [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e89e9cf539a28df7d0eb1d0a545368e9920b34ac (commit)] * Add the infrastructure to support hotplug CPU on ARM [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a054a811597a17ffbe92bc4db04a4dc2f1b1ea55 (commit)] * x86 hot plug CPU support of physical add of new processors (hotplug add/remove of already existing CPUs was already supported) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f40a72a7e819789f66910c8cd60aab005cdb413 (commit)] * Add LSM hooks for key management facilities (see link) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=29db9190634067c5a328ee5fcc2890251b836b4b (commit)] * RCU torture-testing kernel module: This adds a tristate CONFIG_RCU_TORTURE_TEST, which enables an intense torture test of the RCU infratructure. This is needed for testing due to the continued changes to the RCU infrastructure [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a241ec65aeac3d69a08a7b153cccbdb7ea35063f (commit)] * Support for shared HPET interrupts: The driver previously acknowledged interrupts for both edge and level interrupts, but didn't actually allow a shared interrupt in the latter case [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0d29086177aaa1e7d14e6ebb7fc067b3ca6d5c11 (commit)] * Driver Core: add the ability for class_device structures to be nested: Allows struct class_device to be nested, so that another struct class_device can be the parent of a new one, instead of only having the struct class be the parent [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=51d172d5f3a193e4b8f76179b2e55d7a36b94117 (commit)] * Add vmalloc_node(size, node) (allocate necessary memory on the specified node) and get_vm_area_node(size, flags, node) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=930fc45a49ddebe7555cc5c837d82b9c27e65ff4 (commit)] * Generic dispatch queue: Implements generic dispatch queue which can replace all dispatch queues implemented by each iosched [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8922e16cf6269e668123acb1ae1fdc62b7a3a4fc (commit)] * Reimplement elevator online switching code [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cb98fc8bb9c141009e2bda99c0db39d387e142cf (commit)] * Optimized SHA1 implementation for ARM [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c09f98271f685af349d3f0199360f1c0e85550e0 (commit)] * Add sysfs support for ide tape [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d5dee80ad69439ad8dccf8fa4d7fed0068aec9cf (commit)] * Add "revision" support for having multiple revisions for each match/target in arp_tables and ip6_tables [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6b7d31fcdda5938e5d3f1f8b0922cc25aa200dfc (commit)] * Support for the Artemis and ATIK astronomical based USB CCD cameras [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c9c7746dd333c12f482af2f1e63ea7eafc7cd529 (commit)] * USB: delete the bluetty driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6c82600d4058346ea6fd801bc21d7abcc1350d8 (commit)] * USB Nokia DKU2 Driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=50260b69bbec383058875de26dbde28b1a6f8d00 (commit)] * MPC8xx PCMCIA driver [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=de957c89b7dadb3147e885d7b6eb9db73d0eea57 (commit)] * Support for SA1100 Jornada flash device support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=183e1a349466a1b90430a58f3efad25a3e555cb2 (commit)] * Resurrect Cobalt (MIPS-based) support for 2.6 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c4ed38a0c6e2e5c4906296758f816ee71373792f (commit)] * Base Au1200 (MIPS-based) 2.6 support [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e3ad1c23ba72214669b364c6fa304531dc768c3e (commit)] * Add support for BCM1480 family of chips (MIPS-based) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f137e463b50aadba91bd116f99c59ccb9c15a12f (commit)] * Support for sharp zaurus sl-5500 touchscreen [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1753298947afe5eb56da755bc057f1868f345ec1 (commit)] and its PCMCIA slot [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=77bb86a1b9f8b872d8efc33c4f4359f809220252 (commit)] |
You can discuss the latest Linux kernel changes on the [[http://forum.kernelnewbies.org/list.php?4|New Linux Kernel Features Forum]]. |
Line 33: | Line 7: |
===== 2.6.14 ===== * Released October 27, 2005 [http://kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.14 changelog] * Numa-aware slab allocator: It creates slabs on multiple nodes and manages slabs in such a way that locality of allocations is optimized. Each node has its own list of partial, free and full slabs. All object allocations for a node occur from node specific slab lists [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e498be7dafd72fd68848c1eef1575aa7c5d658df (commit - benchmarks)] * Lazy page table copies in fork() for VMAs without anonymous pages (the ones with anonymous pages are still copied): Defer copying of ptes until fault time when it is possible to reconstruct the pte from backing store, speeding up fork() greatly specially for processes using lots of shared memory [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d992895ba2b27cf5adf1ba0ad6d27662adc54c5e (commit)] * Add /proc/$PID/smaps: This file will shows how much memory is resident in each mapping. Useful for people who want to perform memory consumption analysis [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e070ad49f31155d872d8e96cab2142840993e3c0 (commit)] * Add /proc/$PID/numa_maps: This file will show on which nodes pages reside [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6e21c8f145f5052c1c2fb4a4b41bee01c848159b (commit)] * Lock-free file descriptor look-up [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ab2af1f5005069321c5d130f09cce577b03f43ef (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b835996f628eadb55c5fb222ba46fe9395bf73c7 (commit)] * Four-level page table support for the ppc64 architecture: extends the usable user address range to 44 bits (16T). [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e28f7faf05159f1cfd564596f5e6178edba6bd49 (commit)] * Support hotplug cpu on 32-bit SMP powermacs: When a cpu is off-lined, it is put into sleep mode with interrupts disabled. It can be on-lined again by asserting its soft-reset pin, which is connected to a GPIO pin [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=31139971b3dc9fbb2e8a8572fb81e6e8470f363a (commit)] * Add TASK_NONINTERACTIVE task state bit to the cpu scheduler: It can be used by blocking points to mark the task's wait as "non-interactive". This does not mean the task will be considered a CPU-hog - the wait will simply not have an effect on the waiting task's priority - positive or negative alike [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d79fc0fc6645b0cf5cd980da76942ca6d6300fa4 (commit)] * [http://www.ietf.org/rfc/rfc2637.txt PPTP] (Point-to-Point Tunneling Protocol) conntrack support and NAT helper added to allow proper management of multiple NAT'd PPTP connections. PPTP, a Microsoft-designed protocol, is used in many places to provide VPN access due to the native support in Microsoft Windows. [http://en.wikipedia.org/wiki/PPTP Wikipedia article] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=926b50f92a30090da2c1a8675de954c2d9b09732 (commit)] * DCCP: "Datagram Congestion Control Protocol". Datagram protocol (like UDP), but with a congestion control mechanism. [http://lwn.net/Articles/149756/ (LWN article)] Currently a [http://www.icir.org/kohler/dcp/draft-ietf-dccp-spec-11.txt RFC draft] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c657876b63cb1d8a2ec06f8fc6c37bb8412e66c (commit)] * Implement SKB fast cloning: Protocols that make extensive use of SKB cloning, for example TCP, eat at least 2 allocations per packet sent as a result. To cut the kmalloc() count in half, we implement a pre-allocation scheme wherein we allocate 2 sk_buff objects in advance, then use a simple reference count to free up the memory at the correct time [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d179cd12928443f3ec29cfbc3567439644bd0afc (commit)] * Add netlink connector: userspace <-> kernel space easy to use communication module which implements easy to use bidirectional message bus using netlink as its backend [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7672d0b54411371e0b6a831c1cb2f0ce615de6dc (commit)], also a "async connector mode" [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=acd042bb2de50d4e6fb969281a00cc8b8b71e46d (commit)] * IPV6: Support several new sockopt / ancillary data in Advanced API (RFC3542): IPV6_RECVPKTINFO, IPV6_PKTINFO, IPV6_RECVHOPOPTS, IPV6_HOPOPTS, IPV6_RECVDSTOPTS, IPV6_DSTOPTS, IPV6_RTHDRDSTOPTS, IPV6_RECVRTHDR, IPV6_RTHDR, IPV6_RECVHOPOPTS, IPV6_HOPOPTS, IPV6_{RECV,}TCLASS [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=333fad5364d6b457c8d837f7d05802d2aaf8a961 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=41a1f8ea4fbfcdc4232f023732584aae2220de31 (commit)] * [http://fuse.sourceforge.net/ FUSE]: Allows to implement a fully functional filesystem in a userspace program [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d8a5ba45457e4a22aa39c939121efd7bb6c76672 (commit)] * [http://v9fs.sourceforge.net/ 9P support]: Linux port of the [http://www.cs.bell-labs.com/sys/doc/9.html Plan9]'s [http://plan9.bell-labs.com/sys/man/5/INDEX.html 9P protocol] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=93fa58cb831337fdf5d36b3b913441100a484dae (commit)] * [http://relayfs.sourceforge.net/ RelayFS]: Relayfs is just a bunch of per-cpu kernel buffers that can be efficiently written into from kernel code. These buffers are represented as files which can be mmap'ed and directly read from in user space. The purpose of this setup is to provide the simplest possible mechanism allowing potentially large amounts of data to be logged in the kernel and 'relayed' to user space." [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e82894f84dbba130ab46c97748c03647f8204f92 (commit)] * securityfs filesystem [http://lwn.net/Articles/153366/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b67dbf9d4c1987c370fd18fdc4cf9d8aaea604c2 (commit)] * Suspend support for CIFS filesystem [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ede1327ea4ca8019ec6df24b3e837def091c26b8 (commit)] * Enable atomic inode security labeling on ext3 and ext2: it enables atomic security labeling of newly created inodes by altering the fs code to invoke a new LSM hook to obtain the security attribute to apply to a newly created inode and to set up the incore inode security state during the inode creation transaction. This parallels the existing processing for setting ACLs on newly created inodes [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5e41ff9e0650f327a6c819841fa412da95d57319 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=10f47e6a1b8b276323b652053945c87a63a5812d (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ac50960afa31877493add6d941d8402fa879c452 (commit)] * NTFS: Support journals ($Logfile) which have been modified by chkdsk. This means users can boot into Windows after we marked the volume dirty. The Windows boot will run chkdsk and then reboot. The user can then immediately boot into Linux rather than having to do a full Windows boot first before rebooting into Linux [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e7a1033b946f4f2622f2b338ab107f559aad542c (commit)] * SAS transport class [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c7ebbbce366c02e5657ac6b6059933fe0353b175 (commit)] * Remove ACPI S4 BIOS support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b01d8684e9e5b04270970c97df856d47668267e3 (commit)] * [http://ipw2100.sourceforge.net/ ipw2100] and [http://ipw2200.sourceforge.net/ ipw2200] wireless drivers (intel centrino) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2c86c275015c880e810830304a3a4ab94803b38b (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=43f66a6ce8da299344cf1bc2ac2311889cc88555 (commit)] * [http://hostap.epitest.fi/ HostAP]: Adds support to work as "Wireless Access Point" [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ff1d2767d5a43c85f944e86a45284b721f66196c (commit)] * [http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Extensions.html Wireless extensions] API update to version 19 [http://marc.theaimsgroup.com/?l=linux-netdev&m=112568599006559&w=2 (mail)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6582c164f2b3b6e58d1f13c1c031b19ee691eb14 (commit)] * ISA DMA suspend for x86/x86-64 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=795312e763569ce4df67e7a0ca726a9901358fa2 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7dc24db1757f950f8bd21b7191106d4bf5134be7 (commit)] * PCI: Support PCI PM CAP version 3 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3fe9d19f9e86a55679f5f2b38ec0a43a1a510cee (commit)] * Keys: Add possessor permissions to keys. It adds extra permission grants to keys for the possessor of a key in addition to the owner, group and other permissions bits. This makes SUID binaries easier to support without going as far as labelling keys and key targets using the LSM facilities [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=664cceb0093b755739e56572b836a99104ee8a75 (commit)] * Driver for the IBM Hard Drive Active Protection System (HDAPS), an accelerometer found in most modern Thinkpads [http://lwn.net/Articles/155440/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=860e1d6b46bd4cbc67d8d065f0f682143513382f (commit)] * Add Apple USB touchpad driver for the USB touchpad which can be found on post-February 2005 Apple Powerbooks [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f7214ff4e8248513ec626212b2c1a3ca0b2a0888 (commit)] * Spinlock consolidation [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fb1c8f93d869b34cacb8b8932e2b83d96a19d720 (commit)] * Largefile support for accounting: The accounting subsystem in the kernel can not correctly handle files larger than 2GB. This fixes it by adding the O_LARGEFILE flag [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6c9c0b52b8c6b68b05bb06efd7079a8fc5e9ba60 (commit)] * Detect soft lockups, new debug feature (CONFIG_DETECT_SOFTLOCKUP). When enabled then per-CPU watchdog threads are started, which try to run once per second. If they get delayed for more than 10 seconds then a callback from the timer interrupt detects this condition and prints out a warning message and a stack dump [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8446f1d391f3d27e6bf9c43d4cbcdac0ca720417 (commit)] * Add kzalloc(): new function, it allows to obtain pre-zeroed memory [http://lwn.net/Articles/147014/ (LWN article)] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dd3927105b6f65afb7dac17682172cdfb86d3f00 (commit)] * Add schedule_timeout_{,un}interruptible() [http://lwn.net/Articles/149019 (LWN article)] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=64ed93a268bc18fa6f72f61420d0e0022c5e38d1 (commit)] ===== 2.6.13 ===== * Released August 29, 2005 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.13 changelog] * Execute-in-place support: Traditionally, programs are loaded from disk to memory to be executed. However, the current wave of embedded devices store programs in a ROM/flash chip. XIP allows the kernel executing programs directly from that ROM, without being copied to RAM (saving RAM space), and bypassing the page cache/io scheduler layers (since they're not needed). [http://lwn.net/Articles/135472/ (LWN article)] [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d763b7a4736e219528f77bf6bc75dd78b1d75c03 (commit)] * i386 CPU hotplug support: provides i386 architecture support for safely unregistering and registering processors during runtime [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f370513640492641b4046bfd9a6e4714f6ae530d (commit)] * Add /proc/sys/fs/suid_dumpable to provide system-wide control over whether or not set-user-ID and set-group-ID processes produce core dumps. The values accepted are: 0 (default) - traditional behaviour, any process which has changed privilege levels or is execute only will not be dumped. 1 - (debug) - all processes dump core when possible. The core dump is owned by the current user and no security is applied. This is intended for system debugging situations only. Ptrace is unchecked. 2 - (suidsafe) - any binary which normally would not be dumped is dumped readable by root only. This allows the end user to remove such a dump but not access it directly. For security reasons core dumps in this mode will not overwrite one another or other files. This mode is appropriate when adminstrators are attempting to debug problems in a normal environment [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d6e711448137ca3301512cec41a2c2ce852b3d0a (commit)] * x86 now uses the generic PCI bus setup code for assigning unassigned resources * Voluntary preemption patches * build-time configurable clock interrupt frequency: Now HZ defaults to 250 in x86. 1000 is better for "interactivity" (desktops) and 100 is good for performance (servers) and saves some energy in laptops. [http://lwn.net/Articles/145973/ (LWN article)] * inotify [http://lwn.net/Articles/104343/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0eeca28300df110bd6ed54b31193c83b87921443 (commit)] * Support for the Xtensa architecture: [http://www.tensilica.com/products/xtensa_architecture.htm 32-bit architecture] used in embedded devices [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8e1a6dd2fddcc73c9e933758361e3d9c076c688a (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4bedea94545165364618d403d03b61d797acba0b (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5a0015d62668e64c8b6e02e360fbbea121bfd5e6 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=249ac17e96811acc3c6402317dd5d5c89d2cbf68 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3f65ce4d141e435e54c20ed2379d983d362a2cb5 (commit)] * Improved CFQ IO scheduler: With support for I/O priorities [http://lwn.net/Articles/143474/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=22e2c507c301c3dbbcf91b4948b88f78842ee6c9 (commit)] * kexec and kdump: Kexec allows users to load a new kernel from another running kernel. By preserving the memory contents in a crash scenario, kexec allows to implement kdump. Kdump is able to get a memory dump of the previous kernel, and be used as a debugging tool. [http://lwn.net/Articles/108595/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dc009d92435f99498cbc579ce76bf28e837e2c14 (commit)] * Runtime selectable TCP congestion algorithm: Allow using setsockopt to set TCP congestion control to use on a per socket basis. [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5f8ef48d240963093451bcf83df89f1a1364f51d (commit)] - [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=317a76f9a44b437d6301718f4e5d08bd93f98da7 (commit)] [http://lwn.net/Articles/128681/ (LWN article)] * Add several TCP congestion modules: H-TCP [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a7868ea68d29eb2c037952aeb3b549cf05749a18 commit], TCP Hybla [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=835b3f0c0d7e1f716c45ec576662eac7a68b8548 (commit)], High Speed TCP (HS-TCP) [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a628d29b56d3f420bf3ff1d7543a9caf3ce3b994 (commit)], TCP Westwood [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8727076289ec55298a05cabddf02b374d13c1624 (commit)], TCP BIC [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=83803034f4233d810c4adc52008921da060c55d1 (commit)] * Add Direct Rendering Manager device driver for VIA Unichrome chipsets [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=22f579c621e2f264e6d093b07d75f99bc97d5df2 (commit)] * 32/64-bit DRM ioctl compatibility: 64 bit architectures running 32 bit software have to be compatible with 32-bit ioctl calls [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a18664506dbce5e23f3c5de7b1c5a042dd26520 (commit)] * Add ACL support for NFSv3 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b7fa0554cf1ba6d6895cd0a5b02989a26e0bc704 (commit)] - [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a257cdd0e2179630d3201c32ba14d7fcb3c3a055 (commit)] and NFSv4 [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4b580ee3dc00f9828a9a7aad2724f448fdc94075 (commit)] - [http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aa1870af92d8f6d6db0883696516a83ff2b695a6 (commit)] * New driver for the "trusted computing" (TPM) crap^Wchip [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ebb81fdb3dd0be7514b84197c4f8388a17130f04 (commit)] * Removal of the devfs configuration option ===== 2.6.12 ===== * Released June 17, 2005 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.12 changelog] * Pageout throttling: With silly pageout testcases it is possible to place huge amounts of memory under I/O. With a large request queue (CFQ uses 8192 requests) it is possible to place _all_ memory under I/O at the same time. This means that all memory is pinned and unreclaimable and the VM gets upset and goes oom. This patch limits the amount of memory which is under pageout writeout to be a little more than the amount of memory at which balance_dirty_pages() callers will synchronously throttle. This means that heavy pageout activity can starve heavy writeback activity completely, but heavy writeback activity will not cause starvation of pageout [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=3799f8fcebf940f21c69e80ded882245a8bc67a7 (commit)] * Address space randomization: With these patches applied, each process's stack will begin at a random location, and the beginning of the memory area used for mmap() (which is where shared libraries go, among other things) will be randomized as well [http://lwn.net/Articles/121845/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=6a638354be1afb0a134558869e05ddc414707205 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=f1a6b09deaee24b90b1fab42f93ce1b90f0d319b (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=6562d1975c95c8d6817e373c54f256013d062c5c (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=ad4f9c53a04ce077ae2dde82029bb20a6db705ab (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=c0e5a50b1f28e83b1563453f90f6f0866f3a9a90 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=42a172a814759a29020e5d1ee580bf4eb86afed2 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=6833da342273d41d059333e7b6ae81f18dbe6dde (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=9bdac354e0bea82ce76ebdf51d6bbd3993782f78 (commit)] * Cpusets [http://lwn.net/Articles/127936/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=263c0646931c7259ce59188190e0822a121fc0ad (commit)] * "resource limits": RLIMIT_NICE and RLIMIT_RTPRIO added to allow non-root tasks to raise nice and rt priorities. Defaults to traditional behavior [http://lwn.net/Articles/134460/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e43379f10b42194b8a6e1de342cfb44463c0f6da (commit)] * Multilevel security implementation for SELinux * Support for Cyrix MediaGX (aka GEODE) CPUs. Linux and GCC treat this chip as a 586TSC with some extended instructions and alignment reqirements [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=5576007ac28bdd68800ba5816d30ec393c5765ff (commit)] * I/O barrier support for serial ATA drives * Block I/O barrier rewrite (enables full barrier support on serial ATA drives) * Annotate /proc/$PID/maps with [heap]/[stack]/[vdso] markers [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=1d39bbb3d2b67ef76d1aaa1bdef39aee2971015b (commit)] * [http://www.superh.com/products/shyway.htm SuperHyway bus support] * Device mapper multipath support [http://lwn.net/Articles/124703/ (LWN article)] * Hot-pluggable parallel ports [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=2a6c1160578808ec4ef927ccd811791d1635f264 (commit)] * Updated FAT attributes: This updates the FAT attributes as well as corrects the handling of VFAT ctime [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=71b60d7133806152284b3507a901bda2ae645ab0 (commit)] * Handle MS_SYNCHRONOUS flag in FAT: FAT filesystem has been ignoring the "sync" mount option for ages. This patches fixes this, but (obviously) degrades performance unless you mount your FAT filesystem as asynchronous ("async mount option) [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=3e261a474262b622709d4851a1f26123e61ab13c (commit)] * Add timing information to printk messages [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=bd0ac8842ea3484a090fd30507c80ae4cb22de3b (commit)] * Allow admin to enable only some of the Magic-Sysrq functions [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=ea59ccebb3a5a8e76bf9505047e7706027ccf35a (commit)] * Loglevel boot option [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=5d65f423092e68ab44a2a6386c0b3f1985f79c41 (commit)] * Remove IPV6 "experimental" status ===== 2.6.11 ===== * Released March 2, 2005 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.11 changelog] * Conversion to 4-level page tables [http://lwn.net/Articles/117749/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=fcbb3756afbe9a4703c45cab86f947412a0358cf (commit)] * New Pipe implementation [http://lwn.net/Articles/118750/ (LWN article)] * "Big Kernel Semaphore": Turns the Big Kernel Lock into a semaphore [http://lwn.net/Articles/102253/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=deac7335cecb3c1e23a032a3f56a34c643871d3b (commit)] * Introduces the CAP_AUDIT_WRITE and CAP_AUDIT_CONTROL capabilities [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=324689781d5d305903f86578b71596fb2a96dd05 (commit)] * Simplify readahead code [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=e8eb956c01529eccc6d7407ab9529ccc6522600f (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=af006eae66249e03d1024fb71cdfae58e7fa7b7e (commit)] * Support for Extended Attributes in the body of large inode in ext3: saves space and improves performance in some cases [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=f0d1dbed7714ea06242c180c215641a92e655414 (commit)] * Add /proc/sys/kernel/bootloader_type [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=11e4268cffc468b60d2b756dc8eb455112b52308 (commit)] * Remove bitmaps from the buddy allocator [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=dda3a6ba68c264b2c850f2d9500b18d0c407a443 (commit)] * Enhanced I/O and memory accounting [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=c3adb238a7557416a3aa472038343d59c986d062 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=cb6850ae19e4f6bf8ccec0ca770c7b4d1c5f9669 (commit)] * AMD Dual-core support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=7bd66939b746c4c5a69eb74e2f83f967540e4691 (commit)] * Add Fujitsu FR-V CPU architecture [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=e003366285ac6c770b59cc618f9716c2e0ac0430 (commit)] * TCP port randomization [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=97f941fb4ca03c60da6f466721cc99f576f35877 (commit)] * SATA support for Intel ICH7 * DebugFS [http://lwn.net/Articles/115405/ (LWN article)] * Infiniband support [http://lwn.net/Articles/112531/ (LWN article)] * Remove UMSDOS [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=0512a33a91dbe2241a9a39ddeb3af1c27180aabd (commit)] * Major problems with TCP/IP BIC (the default congestion control) are resolved ===== 2.6.10 ===== * Released December 24, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.10 changelog] * Accounting: report single record for multithreaded process. In kernels before 2.6.10, a separate process accounting record was written for each thread created using NTPL. Since 2.6.10, a single accounting record is written for the entire process [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=fa4c8b605c3313de9e3170b68b9e4576a6a5d45e (commit)] * x86-64 clustered APIC support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=7f8b8c2a84d1098aec520d1f701c752f10bc5396 (commit)] * Make rlimit settings per-process instead of per-thread for POSIX compliance [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=f1a81f9149ac2321978e1357eb697f95cc31e989 (commit)] * POSIX compliant CPU clocks [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=5842ca68fe016d84f5e9a247fa4d7bdd54ff4ee4 (commit)] * Show aggregate per-process counters in /proc/$PID/stat: Add up resource usage counters for live and dead threads to show aggregate per-process usage. This mirrors the new getrusage() semantics. /proc/$PID/task/$TID/stat still has the per-thread usage [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=99ae4bcef104d602d790eb7da7cfc241ca6eefee (commit)] * Report the pages used for pagetables in /proc/$PID/status [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=713a7e3b7505f501892f031c5a51f7d6c0b89c11 (commit)] * Display committed memory limit (per the current overcommit ratio) and the amount of memory remaining under this limit in meminfo [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=2fdc35b54263b69e695334e465210a8db55a4cfa (commit)] * Thrashing control tuning [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=146f46fa1ec0b76fa76bced34b4849934791532c (commit)] * Big Kernel Lock preemption * IRQ subsystem code rework [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=133bb1db6e22ec5c8b4d0d015deed5b2fa3e447c (commit)] * Removal of the "BIO walking" helper functions * Generic circular buffer type [http://lwn.net/Articles/107314/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=2dbf22c09c31b815202b2ffd6ba2efbfa66c0f72 (commit)] * Ext3 block reservation [http://lwn.net/Articles/81357/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=75e03cd329884cf024993a2d61c4c32bf7bf6c49 (commit)] * Ext3 online resizing patches [http://lwn.net/Articles/89560/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=05a7a2e19ecde7b7c559bdf5009327cff3504d9b (commit)] * Add I/O error handling to journal operations in reiserfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=ee0bc517002dcc9e80de36ba0a75bba39d951da9 (commit)] * sysfs backing store [http://lwn.net/Articles/69523/ (LWN article)] * I/O space write barriers [http://lwn.net/Articles/103183/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=50ff053344ac1afbed10f2d5ef0749f816401890 (commit)] * Modular, on-the-fly switchable I/O schedulers [http://lwn.net/Articles/102976/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=d35eec28b8b0da58d9e7d16548fc9105535fa7fe (commit)] * CFQ v2 update [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=579eef5fa2be5ed12bc8d3df3555f4e2d725af64 (commit)] * BSD secure levels module [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=05f59528b1256613657b6f7fdd7d5bd4b20cb902 (commit)] * In-kernel cryptographic key management [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=33a2761288241488ccccedc24688cf33acfba0c9 (commit)] * DVD+RW support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=dcc573b12a9d623a13ef156bbde6b116507b437a (commit)] * CDRW packet writing support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=23cabaea5ba85ddaba415e1d5e12073e2ce7f8e3 (commit)] * kernel events notification mechanism * Lock initializater unification [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=e09813fb9c74241a00883e6411e6e3cf66d63339 (commit)] * Panick blinking: Makes the keyboard blink when a oops happens - useful to know if the kernel has really oopsed or not (ej: X.org bugs) [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=5234bcafa9747f78ef723cb8bad14635cf17a811 (commit)] * Reworking of spin lock initialization [http://lwn.net/Articles/109505 (LWN article)] * Configurable /proc/kcore [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=71f16058e2ff1a154e6ed685a66819322c4cdf21 (commit)] ===== 2.6.9 ===== * Released October 19, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.9 changelog] * Token-based thrashing control [http://lwn.net/Articles/96621 (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=e6a32818710d24cc910ec4d4333f99972b3cf563 (commit)] * Concurrent O_SYNC write support: In databases it is common to have multiple threads or processes performing O_SYNC writes against different parts of the same file.[http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=96deebee4470587bc1a855c787d6919df681cdac (commit)] * Reiserfs v3 barrier support: Add reiserfs support for flush barriers, mount with -o barrier=flush to enable them. Barriers are triggered on fsync and for log commits [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=b736095823b073209ef38622227c64c593260b73 (commit)] * ext3 barrier support: Mount with "mount -o barrier=1" to enable barriers [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=52a75614f1f753e01a5a9610c5390b5b7f795912 (commit)] * Support of disk barriers: [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=74c50b2c1af1b3535cf6c39ce684e60fa9f5dfdb (commit)] * m32r architecture support * Scheduler statistics: adds lots of CPU scheduler stats in /proc/$PID/stat [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=34b334118622daae225ab8fd56c79f54f6e15774 (commit)] * RLIMIT_MEMLOCK semantics change: In Linux kernels before 2.6.9, only privileged processes (CAP_IPC_LOCK) could lock memory, and the RLIMIT_MEMLOCK soft resource limit placed an upper limit on the number of bytes that a privileged process can lock. Since kernel 2.6.9: no limits are placed on the amount of memory that a privileged process can lock; and an unprivileged process is now able to lock memory up to the soft limit defined by RLIMIT_MEMLOC [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=adaeb8014406050050cf09416d1b0e3c23838fdb (commit)] * Tunable "max sectors" limit for block I/O requests (can help latency reduction) * New prctl() option allowing programs to change their name (PR_GET_NAME) * AMD dual-core support * Out-of-line spinlocks [http://lwn.net/Articles/97537/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=2ea380e357f23ad37c1a06c6af509b68e9d57bb6 (commit)] * Support for POSIX's waitid() Also, now linux now supports the POSIX specification that SIGCHLD is sent to the parent when one of its children resumes as a consequence of receiving a SIGCONT signal. Also, WCONTINUED flag is added to waitpid() and waitid() [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=8e81583bfd488bb0b10aa799f7ec5f7b4a79fe73 (commit)]. * Shared memory scalability improvements * "flex mmap" user-space memory layout [http://lwn.net/Articles/91829/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=0f7c9b1849d5365d27d4553e471a8e721c8dabb7 (commit)] * x86 PAE swapspace expansion. PAE is artificially limited in terms of swapspace to the same bitsplit as ordinary i386, a 5/24 split (32 swapfiles, 64GB max swapfile size), when a 5/27 split (32 swapfiles, 512GB max swapfile size) is feasible. This patch transparently removes that limitation by using more of the space available in PAE's wider ptes for swap ptes [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=7c1c60d14d175c41c5db03f20f44c80c4d683e52 (commit)] * Show Active/Inactive on per-node meminfo: The patch below enable to display the size of Active/Inactive pages on per-node meminfo (/sys/devices/system/node/node%d/meminfo) like /proc/meminfo [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=6d4a504b45abc756eac6374591f74c7afb722b6a (commit)] * Change in TCP ICMP source quench behavior * [http://www.linux-usb.org/gadget/h2-otg.html USB "on the go" support] * New USB storage driver * Support for more than eight partitions on BSD-labeled disks * Ethtool support in the loopback driver * NETIF_F_LLTX interface [http://lwn.net/Articles/101215/ (LWN article)] * DSCP decapsulation for IPsec [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=cac8c9f3e6cd37a3dd079e12a01fc41d2650bf39 (commit)] * Removal of the ancient "busmouse" driver * Infrastructure for cluster-wide file locking * DRM subsystem cleanups * "fake NUMA" mode for x86-64 testing * Small-footprint tmpfs implementation * Support for scheduler profiling (seeing where context switches come from) * Automatic TCP window scaling calculation * Some VFS interface improvements * Executable support in hugetlb mappings * The Whirlpool digest algorithm * Removal of the very last suser() call ===== 2.6.8 ===== * Released August 14, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.8 changelog] * Allow x86 to reenable interrupts on lock contention [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=e61229e7fab63f09bcab5f6d54477453ca98684c (commit)] * VFS shrinkage tuning: This adds /proc/sys/vm/vfs_cache_pressure, which tunes the vfs cache versus pagecache scanning pressure. At vfs_cache_pressure=0 we don't shrink dcache and icache at all, at vfs_cache_pressure=100 there is no change in behaviour, at vfs_cache_pressure > 100 we reclaim dentries and inodes harder [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=95afb3658a8217ff2c262e202601340323ef2803 (commit)] * Conversion to the new symbolic link resolution code (which will eventually allow an increase in the maximum link depth) [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=c989bc66ec92aabcf88f429da52a798003edc505 (commit)] * Add O_NOATIME open flag support (GNU extension): If this bit is set, read will not update the access time of the file. It is useful if you want to do something with the file atime (for instance, moving files that have not been accessed in a while to somewhere else, or something like Debian's popularity-contest) but you also want to read all files periodically (for instance, tripwire or debsums) [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=037c5577398a9d87f0b9f8d68cbf17324b5b05fe (commit)] * MNT_EXPIRE for umount(): Intrinsic automount and mountpoint degradation support. This adds support for a filesystem (such as kAFS) to perform automounting intrinsically without the need for a userspace daemon. It also adds support for such mountpoints to be degraded at the filesystem's behest until they've been untouched long enough that they'll be removed [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=92b2af55e9bd44724700c8eef889c7b368df6c94 (commit)] * Process Accounting Version 3 format added [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=f0743e893fb6ede7126ee6bb9ebad092fc2e346c (commit)] * RLIMIT_SIGPENDING added, introducing per user rlimits for both queued signals and POSIX message queues [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=05eecc7a8a3765f2dd4b4d5d8a2e928f27c620f0 (commit)], and remove unused queued_signals global accounting - rtsig-max and rtsig-nr /proc interfaces went away [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=31c7f302112bb18a7fd93cf07f52478a2688f62b (commit)] * support for 64-bit Super-H hardware * Removal of the PC9800 subarchitecture (lack of mainteinance) [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=3f7da6b29ad4612b09ddb39dd7938d11e9551ba6 (commit)] * Preemptible kernel support for the PPC64 architecture [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=5cc01b3b2ec3228457146904098dbaed01fbe0f8 (commit)] * Oprofile support for ppc32 [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=1383f594343b33211e1755524ecfd6c70ea8d1c9 (commit)] * Support for new Apple Powerbooks [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=eb5b2db2e449555fb06da1a6c81506f7593a7ad3 (commit)] * x86 no-execute support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=3d543a2d0ce112d99d584fa99a5005629bc3c871 (commit)] * Asynchronous I/O support for USB gadgets * HPET (High Precision Event Timer) support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=d4e2cce3c8d7a766e474e9643514f1e6be7d758d (commit)] * Reworked symbolic link lookup implementation [http://lwn.net/Articles/91959/ (LWN article)] * Lockless loopback [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=b2079a04d5b73b7cf82bb88897e86e2aee91bbc4 (commit)] * New "CPU mask" implementation * RCU performance improvements [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=48adcee8afd0838517a7e3150daa617f5b0a0c25 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=2321dce287dbaf69028be4678956451c9f1157b1 (commit)] * New wait_event_interruptible_exclusive() macro * Sysfs knobs for tuning the CFQ I/O scheduler [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=cde1f64d5ecbc78bc605937540421914b4f8cb8f (commit)] * Mirroring, snapshot and dm-zero targets for the device mapper [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=82fe372266fddf32677a7e0b4e2908bbcecf90dd (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=9665bd2e2f0ac296d7e4c40a50978dfa9f6dce07 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=db40a292b7da5640a8a464b1e8a8251eaf175fd8 (commit)] * Reiserfs data=journal support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=e4861db92ba98c0280abf75bbbe344a14254997b (commit)] * Added permissions checking on raw SCSI commands from user space [http://lwn.net/Articles/98379/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=edfbc0a1c7df14728a31734ecafbbcacac85ac20 (commit)] * Removal of the fcntl() file operations method * New internal infrastructure for handling file positioning and seekability [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=9286c49cc35e0a5a4ed240a80ae9ef17b37948d8 (commit)] * Removal of the (non-functional) "fastroute" networking option * TEA, XTEA, Khazad crypto algorithms [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=ca28e25885ef28aeb01553d46e225805f9f26b10 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=1dbd347b7c1f8d879361609eabed7100b5f30754 (commit)] * Add deb-pkg build option [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=4c25efaec1f969b16102dea37a38f33a2848cca5 (commit)] * TCP/IP congestion control changes from Reno to BIC ===== 2.6.7 ===== * Released June 16, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.7 changelog]: * Scheduling Domains [http://lwn.net/Articles/80911/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=5a2bc24fc647c9dfb10faae4b3a86ef05fc6f596 (commit)] * Full object-based reverse-mapping scheme and removal of the per-page PTE chains [http://lwn.net/Articles/86715/ (LWN article)] * Filtered Wakeups [http://lwn.net/Articles/83633/ (LWN article)] * Ability to re-enable interrupts while waiting in spin_lock_irqsave() (for all architectures now) * msleep() function for millisecond-scale waits * del_singleshot_timer(): Deleting timers quickly [http://lwn.net/Articles/84836/ (LWN article)] * shrink "dentry" structure * Speedup readahead for seeky workloads [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=ef12b3c1abce83e8e25d27bdaab6380238e792ff (commit)] * Support for quotas, extended attributes, ACLs, SELinux in reiserfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=783206fcd4123700cf1bdced342dcd44d1b18e20 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=c6df36c4c37c02dc45d390f7e78cbae51e4dcb2c (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=c86d577034339a7f7c149320be204d2ad0e3dbe2 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=98ca2698e94ce62fa4f34ed6256019cabb74c8a5 (commit)] * Removal of the Intermezzo filesystem (lack of mainteinance) [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=4b18ece918a95d42904ea80a7dd62075e90d2f84 (commit)] * Remove IDE PATA TCQ support: It's been disabled some time ago, PATA TCQ has so many technical short comings, that it was never really interesting [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=066298b9347991e663ab9b0005e5fe36bad1b22c (commit)] * Dynamic addition of virtual disks on PPC64 iSeries [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=280fbb169c2d81004d866fdd6d51fc73b85b8210 (commit)] * Implement separate per-cpu stacks for processing interrupts and softirqs, along the lines of the CONFIG_4KSTACKS stuff on x86 [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=93836954c881c4c70d5cd8e64440ec17a841bfa8 (commit)] * PowerPC 750GX support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=19f21bf97946de6637ff9d788f6fa0f5956e2597 (commit)] * new API for NUMA systems * Debugging option to put data symbols in kallsyms [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=e9bc643950e4125f25c73a12abf07669074709f5 (commit)] ===== 2.6.6 ===== * Released May 10, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.6 changelog] * Removal of (struct page)->list and page dirty/clean/free lists, replaced by radix-tree tagging [http://lwn.net/Articles/80472/ (LWN article)] * Network packet timestamping optimization * Binary Increase Control (BIC) TCP developed by NCSU. It is yet another TCP congestion control algorithm for handling big fat pipes. For normal size congestion windows it behaves the same as existing TCP Reno, but when window is large it uses additive increase to ensure fairness and when window is small it uses binary search increase [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=d009df2d52345441873340c5b75ecc09b9343a22 (commit)] * [http://www.geocities.com/wronski12/posix_ipc/index.html POSIX message queues] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=3bc45e612c620d7477b9ed3f285c9222b3bb558b (commit)] * fsync() and fdatasync() speed improvements to ext2/3 [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=c67ebc7f2644d612f7838a7f3aee1b766ce11e69 (commit)] * Addition of the fcntl() method to the file_operations structure [http://lwn.net/Articles/77190/ (LWN article)] * Laptop Mode [http://lwn.net/Articles/65437/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=166054344dda21795e3735af51edf1a261177e7e (commit)] * Oprofile for s390 [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=f42022413a50489115f36c5e9a16f5d13e4831a4 (commit)] * 4KB kernel stacks option for the i386 architecture [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=f061c2ccd81f62b777327aa3696d652b5fb34c6f (commit)] * Non-executable stack support for several architectures [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=9abd312fda38fb2ba7b3dfe147ecbadf5cf8f57f (commit)] * Make sysfs configurable [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=7aa1fb8cb5813bfe0a33e49975f1cceb0740251f (commit)] * Reiserfs updates: data=ordered support, space preallocation, laptop mode support, logging rework, support for nested transactions [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=d4265dd282789d98d47f2febea1e60ff2a494b82 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=502c984ae4ddae1964c5aae6625e56516106c396 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=050ff9c100d0a9e9cb45f575783ca801d2ca42c3 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=3b0970c6144b4e5cb777d8b54926c1dbeb2e2b64 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=46d1f3648ddccf15793a057f7aef3e2ce5be4f0e (commit)] * Reiserfs and ext3 "commit=0 support": Restores commit interval to the default value [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=9a9b4f749ce975a57994207e7c0c5fe57148ef60 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=a4fe3fb94e6ea2e27d61abd8b141856f9d662fbd (commit)] * Ext3 journalled quotas [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=c69e3890a7a5d8c0587d958e618d303fad9d941a (commit)] * NFS v4: Implement server-side reboot recovery (mostly) [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=82107aa303e744b0e67f9daa44748c5abbf01d69 (commit)] * IPv6 support in SELinux [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=bdee92e07efd44da1dc87d47485c3f9ffaf0d976 (commit)] * The lightweight auditing framework [http://lwn.net/Articles/79326/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=4527a30f157fca45c102ea49a2fb34a4502264eb (commit)] * A mechanism which allows block drivers to respond to queries about the congestion state of their queues * "per-device unplugging patch" [http://lwn.net/Articles/75233/ (LWN article)] * CFQ scheduler [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=a7c3e7eee4fe04953547e408f8db0d615c4c1afe (commmit)] * External module support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=eeb0e992ae01bc7c68628c20df6df0bdc1c7fd28 (commit)] * Generic snapshot support code for filesystems (taken from XFS) [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=9a6f9f9177e7403e661eb876500d57d139c0d034 (commit)] ===== 2.6.5 ===== * Released April 4, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.5 changelog] * Adaptative lazy readahead [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=87698a351b86822dabbd8c1a34c8a6d3e62e5a77 (commit)] * CDROMREADAUDIO dma support: support DMA for extrating audio [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=6cea839a9cb769215c2a3cf2056ff1b09ea08378 (commit)] * Netpoll infrastructure [http://lwn.net/Articles/75944 (LWN article)] * New "kref" reference counting mechanism [http://lwn.net/Articles/75920 (LWN article)] * AIO support for reiserfs [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=71b95e3ebaa658cdb361c78b613267776957995b (commit)] * Read-only support for UFS2 [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=e935d5b963465e88c09896056578d8ece381dc9a (commit)] * Display number of slab, mapped and pagetable pages in the sysrq-M output [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=53c3a164bde6946bb9ca65eb021b0cf96035b5d3 (commit)] ===== 2.6.4 ===== * Released March 11, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.4 changelog] * NGROUPS_MAX, which sets the maximum number of groups a user can belong to has increased the value to 65536 (was previously 32). This limit is also visible via the read-only /proc/sys/kernel/ngroups_max file. [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=60f095f22d9325fc88f128df204242f932c261dc (commit)] * HFS rewrite and HFS+ support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=b20f09ad0ab9e8ef215b5c6e0ead9effc6b80aee (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=367a470ffe60c58c69ae8bf288cbb4615002729b (commit)] * Add SOCK_SEQPACKET for Unix domain sockets [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=32b46f96d41dfc67ad9d81c39487242ecc84be16 (commit)] * Support for the Intel "ia32e" arch * PPC64 iommu and TBL flush rework [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=aeb9bd1688d76c938acc4b17da8db33e8cbe1133 (commit)] - [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=7fb3b50550a866099fc8ea34b8565f12a104e2fa (commit)] * UTF-8 tty mode [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=8026954da2b98a1a97af65d82c492816681c0faa (commit)] * Dynamic PTY allocation (up to a million PTY devices) * Sysfs support for SCSI tapes and bluetooth devices * ARC4 crypto module Support for large numbers of groups * Generic kernel thread infrastructure [http://lwn.net/Articles/65178/ (LWN article)] * Groundwork for the hotplug CPU code * ARC4 crypto module [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=d0119535d80f4f46d831fb48f1747e732c539c79 (commit)] * Add dm-crypto crypto module [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=f3abc91effde1fd547e6005f36c94313fe970dd2 (commit)] * Enable coredumps > 2 GB [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=0d274048bea986c7498a52ea5152d66833cd2cec (commit)] * Add -mregparm=3 config option [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=cef3796e3aa0003e818a64374f439d353c49d574 (commit)] ===== 2.6.3 ===== * Released February 18, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.3 changelog] * G5 support [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=7f13170c2069ff86a2a0bfc3a247ade8aefeb6aa (commit)] * Support up to 255 char columns in virtual terminals [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=f3706e57b8e26db88ddaa5b0558e5db545f2fed7 (commit)] * Set HZ to 1000 in PPC32 [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=eb6e9d736fa3e79f97ee19325c996f69079f276e (commit)] * Removal of the USB scanner code: moved support to userspace (libusb) * New DMA pool abstraction [http://lwn.net/Articles/69402/ (LWN article)] * "context mount" support for SELinux ===== 2.6.2 ===== * Released February 4, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.2 changelog] * RAID 6 implementation [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=8869ce42bfc6301d645eabb64eea343569be9575 (commit)] * One-shot support for epoll [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=b248eb341da327a418e3fdd55bcad209c3802892 (commit)] * Add support for m68knommu [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=ccc218ff4f93913018f735201586caa19dc022db (commit)] * Schedulers interactivity improvements [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=80605ac9c461beed318da1af7f0355c66d90f66c (commit)] * New Qlogic SCSI driver ===== 2.6.1 ===== * Released January 9, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.1 changelog] * Message Signaled Interrupt support - MSI [http://lwn.net/Articles/44135/ (LWN article)] [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=805bdfd65d2a8866870d1813cd39d739d1e2942e (commit)] * Add 32bit a.out support for x86-64 [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=dabe6cb0fc24dd4d3ee5b51c99f551a883dc2d66 (commit)] * Add `gcc -Os' config option [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=4b8ca7b0c8fb01ba87f9f6fa23f287e683f06346 (commit)] * Extensible Firmware Interface (EFI) support. [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git;a=commit;h=556bd742f63bdc0d0fdbfb28f907e272ed61d370 (commit)] ===== 2.6.0 ===== * Released December 18, 2003 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.0 changelog] Rules: * Name of the new feature/description of the change, including a small explanation if possible * If its a feature and the feature has some web page add a link to it * If there's a paper (OLS!) or an article add a link to it. Or write one ;) * If there's a interesting mail (benchmarks, announcements if there's no web page, etc) about it in the mailing list, get a link in one of the list's archives (at [http://marc.theaimsgroup.com/?l=linux-kernel http://marc.theaimsgroup.com/?l=linux-kernel] please) and add the link here * Add commit's link if possible. For commits add a "(commit)" word and add the link there. Don't add the commit link to another word (please). * Searching commits for a given feature is easy. Just look for it in the shortlog, or try to find a file related with that change, then search it in the GIT tree representation and click the "history" link to see all the changes made which affects that file. The release dates will help you too. * There're two main GIT trees where you can search for commits: [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git the one which has all the stuff commited after 2.6.12-rc2] and [http://kernel.org/git/?p=linux/kernel/git/torvalds/old-2.6-bkcvs.git the one which has all the stuff BEFORE 2.6.12-rc2] TODO: * Import relevant data from [http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14-rc5/2.6.14-rc5-mm1/broken-out/post-halloween-doc.patch davej's post halloween document] or remaining stuff from [http://kernelnewbies.org/status/latest.html Kernelnewbies status] * Find links to corresponding changesets (!!) * Keep track of what gets changed |
<<Include(Linux_5.10)>> |
Changes done in each Linux kernel release. Other places to get news about the Linux kernel are LWN kernel status or the Linux Kernel mailing list (there is a web interface in www.lkml.org or lore.kernel.org/lkml). List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules!
You can discuss the latest Linux kernel changes on the New Linux Kernel Features Forum.
Linux 5.10 was released on Sun, 13 December 2020.
Summary: This new Linux version is a Long Term Support release, and it brings support for a fast commit mode in Ext4 which provides faster fsync(); support for safer sharing of io_uring rings between processes; a new syscall to provide madvise(2) hints for other processes, code patching to allow direct calls to be used instead of indirect calls for improved repotline performance, support for register encryption in AMD's virtualized guests; faster and lean virtio-fs performance; support for ARM Memory Tagging Extension that prevents a number of security issues; and code patching to allow direct calls to be used instead of indirect calls. As always, there are many other new drivers and improvements.
Contents
-
Prominent features
- Long Term Support
- Ext4 fast commit support, for faster metadata performance
- Support io_uring restrictions to facilitate secure sharing of rings
- Memory hints for other processes
- Faster performance and memory consumption in virtio-fs
- AMD support for encryption of register in virtualized guests
- Static calls for improved post-Spectre performance
- Support ARM Memory Tagging Extension
- Core (various)
- File systems
- Memory management
- Tracing, perf and BPF
- Block layer
- 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) and Thunderbolt
- Serial Peripheral Interface (SPI)
- Watchdog
- Serial
- CPU Frequency scaling
- Voltage, current regulators, power capping, power supply
- Real Time Clock (RTC)
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Multi Function Devices (MFD)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C + I3C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Hardware Random Number Generator (hwrng)
- Cryptography hardware acceleration
- PCI
- FRU Support Interface (FSI)
- Clock
- PHY ("physical layer" framework)
- EDAC (Error Detection And Correction)
- Various
- List of Pull Requests
- Other news sites
1. Prominent features
1.1. Long Term Support
This release is a Long Term Support release, which means that maintainers will provide bugfixes for this kernel revision for a much longer period of time than for other stable kernel releases.
1.2. Ext4 fast commit support, for faster metadata performance
Many applications use fsync(2) to ensure that data is reliably placed on disk. Such operation attempts to synchronize to the disk a few more metadata than expected. In this release, Ext4 will use a novel journaling technique, consisting in optimistically only journal the minimum required information through which a crash recovery operation can recover the metadata modified through an fsync operation. This speeds up fsync() and metadata heavy operations. This feature needs to be enabled at mkfs time.
Recommended LWN article: Fast commits for ext4
1.3. Support io_uring restrictions to facilitate secure sharing of rings
Since io_uring was introduced in Linux 5.1, it has seen widespread adoption. As usual, widespread adoption leads to new use cases, such as processes that might want share a ring with less trusted processes. This release adds a few API changes that add some restrictions and make possible for host application to grant access to some of its file descriptors and allow untrusted applications or guests to safely use io_uring.
Recommended LWN article: Operations restrictions for io_uring
1.4. Memory hints for other processes
Processes in Linux can use the madvise() system call to inform the kernel about their behaviour in order to get better performance. However, in some platforms (e.g., Android), the information required to make the hinting decision is not known to the process. Instead, it is known to a centralized userspace daemon(e.g., ActivityManagerService), and that daemon must be able to initiate memory reclaim on its own without any app involvement. To solve the concern, this patch introduces new syscall - process_madvise(2). Basically, it's same with madvise(2) syscall, except that it requires a pidfd of a target process, and for now it supports a more limited set of possible memory hints.
Recommended LWN article: process_madvise(), pidfd capabilities, and the revenge of the PIDs
1.5. Faster performance and memory consumption in virtio-fs
virtio-fs was added in Linux 5.4 as a solution to share parts of the host file systems with guest VMs in a high-performance, API-compatible way. In this release, virtio-fs adds supports for DAX, which allows bypassing guest page cache and allows mapping host page cache directly in guest address space. This can speed up things considerably in many situations. Also this can result in substantial memory savings as file data does not have to be copied in guest and it is directly accessed from host page cache.
1.6. AMD support for encryption of register in virtualized guests
Linux supports SEV since Linux 4.15. SEV is an AMD feature that encrypts the memory of virtualized guests, such that hosts can't access it unencrypted. This release enhances it by also encrypting the guest register state, making the registers inaccessible to the hypervisor by en-/decrypting them on world switches. Thus, it adds additional protection to Linux guests against exfiltration, control flow and rollback attacks. With SEV-ES, the guest is in full control of what registers the hypervisor can access.
1.7. Static calls for improved post-Spectre performance
Static calls are a replacement for global function pointers. They use code patching to allow direct calls to be used instead of indirect calls. They give the flexibility of function pointers, but with improved performance. This is especially important for cases where retpolines would otherwise be used, as retpolines can significantly impact performance. The new APIs are utilized in the x86 perf code, a heavy user of function pointers, where static calls speed up the PMU handler by 4.2%.
Recommended LWN article: Relief for retpoline pain
1.8. Support ARM Memory Tagging Extension
Memory Tagging Extension (part of the ARMv8.5 Extensions) provides a mechanism to detect the sources of memory related errors which may be vulnerable to exploitation, including bounds violations, use-after-free, use-after-return, use-out-of-scope and use before initialization errors.
Recommended LWN article: The Arm64 memory tagging extension in Linux
2. Core (various)
Add a nosymfollow mount option, disables symbolic link resolution in specified mounts commit
Support non-blocking pidfds. Passing a non-blocking pidfd to waitid() currently has no effect, i.e. is not supported. There are users which would like to use waitid() on pidfds that are O_NONBLOCK and mix it with pidfds that are blocking and both pass them to waitid(). Non-blocking pidfds will return EAGAIN from waitid() when no child process is ready yet commit, commit, commit, commit
fs: Prepare for upcoming Casefolding/Encryption commit, commit, commit, commit
- io_uring
(FEATURED) Add some restrictions to the operations (sqe opcode and flags, register opcode) to safely allow untrusted applications or guests to use io_uring queues commit, commit, commit
Add blkcg accounting to offloaded operations commit
Enable an application to wait on SQ ring consumption if using SQPOLL, instead of having to use busy polling for that part commit
lockdep: Support deadlock detection for recursive read locks commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
kcsan: adds support for enabling compounded read-write instrumentation commit, commit, commit, commit, commit, commit, commit, commit
printk: replace ringbuffer with a fully lockless ringbuffer implementation, including the support for continuous lines. It will allow to store and read messages in any situation wihtout the risk of deadlocks and without the need of temporary per-CPU buffers. Recommended LWN article commit, commit, commit, commit
- Locking
RCU: adds strict grace periods that are as short as is reasonably practical, for the use of KASAN commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rseq/membarrier: add MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ. It issues an IPI to a CPU, restarting a potentially active RSEQ critical section on the CPU commit, commit, commit
seqlock: Introduce seqcount_latch_t. Latch sequence counters are a multiversion concurrency control mechanism where the embedded seqcount_t counter even/odd value is used to switch between two copies of protected data. This allows the sequence counter read side to be invoked from NMIs and safely interrupt its own write side critical section commit, commit, commit, commit, commit, commit, commit, commit
seqlock: Introduce PREEMPT_RT support commit, commit, commit, commit, commit
rcutorture: Add gdb support commit
lockdep: Support deadlock detection for recursive read locks commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Task scheduler: Improve fairness between cfs tasks commit, commit, commit, commit
(FEATURED) Add static_call(), which uses the idea of static_branch() applied to indirect function calls. Remove a data load (indirection) by modifying the text. The new APIs are utilized in the x86 perf code, a heavy user of function pointers, where static calls speed up the PMU handler by 4.2% commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
tools/bootconfig: Add boot-time tracing script commit, commit, commit, commit, commit, commit
ubsan: introduce CONFIG_UBSAN_LOCAL_BOUNDS for Clang commit
fonts: add font 6x8 for OLED display commit
Add backtrace_idle parameter to force backtrace of idle CPUs commit
FUSE: Auto-mounted submounts. virtiofsd just passes through the stat.st_ino value from the host to the guest, without taking stat.st_dev into account. Therefore, it is generally impossible to uniquely identify nodes in the guest by their st_dev/st_ino combinations. This release allows to pass through st_dev alongside st_ino: It lets the guest create auto-mounted submounts for every host mount point, so that they get their own dedicated st_dev. This is similar to what NFS does with the crossmnt option commit, commit, commit, commit, commit, commit
kunit: allow generating test results in JSON commit
3. File systems
- BTRFS
Performance improvements for fsync and rename/link commit, commit, commit
Switch Direct IO implementation to iomap infrastructure commit
Convert data reservations to the ticketing infrastructure that metadata uses commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Preparatory work to switch locking from custom tree locks to standard rwsem commit, commit, commit, commit, commit, commit, commit, commit
sysfs: export supported send stream version commit
- XFS
Store inode btree counts in the AGI to speed up certain mount time per-AG block reservation operations and add a little more metadata redundancy commit, commit, commit, commit, commit
Widen timestamps to deal with y2038 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Deprecate the V4 format commit
- CIFS
- EXT4
- F2FS
- NFS
Add client support for the READ_PLUS operation, which breaks read requests into several "data" and "hole" segments when replying to the client commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
add server support for the READ_PLUS operation, which breaks read requests into several "data" and "hole" segments when replying to the client commit, commit, commit, commit, commit
NFSv4.2: Support EXCHGID4_FLAG_SUPP_FENCE_OPS flag, introduced in RFC 7862 commit
- OVERLAYFS
- QUOTA
Widen timestamps to handle quota grace expiration times beyond 2038 commit
- CEPH
- ZONEFS
4. Memory management
(FEATURED) Introduce memory hinting syscall, process_madvise(2), for external process commit, commit, commit
Remove assumptions of THP size commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
memcontrol: Implements memcg-based memory accounting of allocations made from an interrupt context commit, commit, commit, commit
memcontrol: add the missing numa_stat interface for cgroup v2 commit
HWPOISON: soft offline rework commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
IOMMU user API enhancement commit, commit, commit, commit, commit, commit
device-dax: support sub-dividing soft-reserved ranges commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
5. Tracing, perf and BPF
- BPF
BPF TCP header options commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce minimal support for sleepable progs. Recommended LWN article commit, commit, commit, commit, commit
Add a kernel module with user mode driver that populates bpffs with two BPF iterators commit, commit, commit, commit
Add tcp_notsent_lowat bpf setsockopt commit
Introduce BPF_F_PRESERVE_ELEMS to perf event array for better sharing of perf event. By default, perf event array removes the perf event when the map fd used to add the event is closed. With BPF_F_PRESERVE_ELEMS set, however, the perf event will stay in the array until it is removed, or the map is closed commit, commit
BTF support for ksyms commit, commit, commit, commit, commit, commit
Add support attaching freplace BPF programs to multiple targets. This is needed to support incremental attachment of multiple XDP programs using the libxdp dispatcher model commit, commit, commit, commit, commit, commit, commit
Allow updating sockmap / sockhash from BPF commit, commit, commit, commit, commit, commit
Add two BPF helpers, that is, one for retrieving the classid of an skb and another one to redirect via the neigh subsystem commit, commit, commit, commit, commit, commit
Follow-up BPF helper improvements commit, commit, commit, commit, commit, commit
Generalizing bpf_local_storage to allow easy implementation of local storage for other objects, implement local storage for inodes and allow LSM to use storage commit, commit, commit, commit, commit, commit, commit
Implement link_query for bpf iterators commit, commit, commit
Add d_path helper function that returns full path for given 'struct path' object, which needs to be the kernel BTF 'path' object commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- libpf
Add full support for BPF-to-BPF calls commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Implements logic to auto-adjust memory size (1-, 2-, 4-,8-bytes) of load/store (LD/ST/STX) instructions which have BPF CO-RE field offset relocation associated with it. In practice this means transparent handling of 32-bit kernels, both pointer and unsigned integer commit, commit, commit, commit
Support loading/storing any BTF endianness commit, commit, commit
Add support for type-based and enum value-based CO-RE relocations commit, commit, commit, commit, commit, commit, commit, commit, commit
Add perf_buffer APIs for better integration with outside epoll loop commit
Add BTF APIs to libbpf that allow to conveniently produce BTF types and strings commit, commit, commit
Allow storage of flexible metadata information for eBPF programs with the ntroduction of a new syscall flag, BPF_PROG_BIND_MAP, to add a map to a program's used_maps, even if the program instructions does not reference the map commit, commit, commit, commit, commit
- Tracing
boot: Start boot-time tracing in earlier stage commit, commit, commit, commit, commit, commit
boot: Add new options for tracing specific period, kretprobe and tracing_on option. The combination of these options allow to trace events during a specific function call period commit, commit, commit, commit, commit, commit, commit
Currently, only function trace can export trace packets to other destination, add support to event trace and trace_maker commit, commit, commit, commit, commit, commit
Add dynamic strings support for synthetic events commit, commit, commit, commit, commit, commit, commit
- perf
Enable AUX area tracing snapshots using a FIFO commit, commit, commit, commit, commit, commit, commit, commit
ftrace: Add filter support for option -F/--funcs commit
Support PE executable symbol tables using libbfd, to profile, for instance, wine binaries commit, commit, commit, commit
perf inject: Speed build-id injection commit, commit, commit, commit, commit, commit
Introduce branch history "streams", to compare 'perf record' runs with 'perf diff' based on branch records and report hot streams commit, commit, commit, commit, commit, commit, commit
c2c: Refine the organization of metrics commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for exclusive groups/events via the new ':e' event modifier commit
perf stat: Add --for-each-cgroup option to make it easy for that case. It will create NxM events from N events and M cgroups commit, commit, commit, commit, commit
6. Block layer
Allow IOPRIO_CLASS_RT for CAP_SYS_NICE commit
- blk-iocost
Improves iocost in three areas to make iocost internal operations more accurate and immediate with the goal of improving work conservation and distribution fairness, and removing dependence on vrate adjustments for masking work conservation issues. This improves overall control quality and allows regulating vrate more tightly for more consistent behavior as vrate now only needs to respond to device behavior changes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Improve debt forgiveness logic commit, commit, commit, commit, commit
xen-blk(back|front): Let users disable persistent grants commit, commit, commit
scsi: Provide hostwide shared tags for SCSI HBAs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
null_blk: add support for max open/active zone limit for zoned devices commit
md: raid10: Improve performance handling raid10 discard request commit, commit
7. Virtualization
Add support for Nitro Enclaves, a new Amazon Elastic Compute Cloud (EC2) capability that allows customers to carve out isolated compute environments within EC2 instances commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Pass zPCI hardware information via VFIO commit, commit, commit, commit, commit
VFIO support for FSL-MC device commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
vhost scsi: Add support for LUN resets commit
vdpasim: allow to set MAC address commit
Support virtio cross-device resources commit, commit, commit
(FEATURED) virtiofs: Adds DAX support. This allows bypassing guest page cache and allows mapping host page cache directly in guest address space. This can speed up things considerably in many situations. Also this can result in substantial memory savings as file data does not have to be copied in guest and it is directly accessed from host page cache commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
8. Cryptography
crypto: introduce OSCCA certificate and SM2 asymmetric algorithm commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Mark ecb(arc4) skcipher as obsolete commit, commit, commit, commit, commit, commit, commit
In an effort to improve the pseudo-random number generator used by the network subsystem (for things like port numbers and packet sequence numbers), Linux’s home-grown pRNG has been replaced by the SipHash round function, and perturbed by hard-to-predict internal kernel states commit, See this recommended LWN article commit, commit, commit
9. Security
integrity: Load MOK certificates from an EFI config table commit, commit, commit
selinux: add detailed tracepoint on audited events commit, commit
- integrity: improve user feedback for invalid bootparams
LSM: SafeSetID: Add set*git security policy commit
LSM: Introduce kernel_post_load_data() hook commit
selinux: move policy commit after updating selinuxfs commit
10. Networking
IP: Expose all exisiting inet sockopt bits through inet_diag for debug purpose commit
IP: ensure the route lookup is performed on the right routing table in VRF configurations commit, commit
icmp: randomize the global rate limiter to avoid leaking details of network state commit
IPv4: Allow more than 255 IPv4 multicast interfaces commit, commit, commit
TCP: Allow to reflect TOS value received in SYN, and send it out in SYN-ACK, and eventually set the TOS value of the established socket with this reflected TOS value. This provides a way to set the traffic class/QoS level for all traffic in the same connection to be the same as the incoming SYN. It could be useful for datacenters to provide equivalent QoS according to the incoming request. This feature is guarded by /proc/sys/net/ipv4/tcp_reflect_tos, and is by default turned off commit, commit, commit, commit
- Multi-Path TCP
MPTCP merge progresses with support concurrent transmission of data on multiple subflows in a load balancing scenario. Enhance advertising addresses via the RM_ADDR/ADD_ADDR options commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Include two enhancements for MPTCP path management, namely RM_ADDR support and ADD_ADDR echo support, as specified by RFC sections 3.4.1 and 3.4.2 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- Wireless (802.11)
Add support for FILS discovery transmission as per IEEE Std 802.11ai-2016 commit, commit
Unsolicited broadcast probe response tranmission is used for in-band discovery in 6GHz band (IEEE P802.11ax/D6.0 26.17.2.3.2, AP behavior for fast passive scanning) commit, commit
Add support for S1G association commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for setting fixed HE rate/gi/ltf commit
Support 6 GHz scanning commit
Allow the user to configure below Spatial Reuse Parameter Set element: Non-SRG OBSS PD Max Offset, SRG BSS Color Bitmap, SRG Partial BSSID Bitmap commit
Add support for WPA/WPA2-PSK 4-way handshake and SAE offload in AP mode commit, commit, commit
- Netfilter
Add support for the inet ingress chain type in nf_tables commit, commit, commit, commit, commit
conntrack: add ct stats for clash resolution commit
ip6t_NPT: rewrite addresses in ICMPv6 original packet commit
Enable userdata for objects. Initially used to store comments, can be extended for other use cases in the future commit, commit
Add userdata attributes to nft_table commit
Implement fast bitwise expression commit
nft_socket: add wildcard support commit
Allow re-computing sctp CRC-32C in 'payload' statements commit
- Bluetooth
Add boot option to not create fall-back tunnels in root-ns as well commit
- bridge
mcast: IGMPv3/MLDv2 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, part 2 IGMPv3/MLDv2 fast-path commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- can
- devlink
Introduce support for a new attribute to the flash update command which allows userspace to specify what set of subfields to overwrite when performing a flash update for a device commit, commit, commit, commit, commit
Add devlink reload action and limit options commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
devlink show controller number commit, commit, commit, commit, commit, commit
Introduce a health reporter for mlxsw that reports FW fatal events commit, commit, commit, commit, commit, commit, commit, commit
DSA with VLAN filtering and offloading masters commit, commit, commit, commit, commit, commit, commit, commit, commit
- ethtool
- genetlink
xfrm: Add 32 bit compat layer commit, commit, commit, commit, commit, commit, commit
netlink: Export the policy used for attribute validation when it fails, so e.g. for an out-of-range attribute userspace immediately gets the valid ranges back commit, commit
rxrpc: allow more simultaneous calls to be made to the same peer with the same security parameters commit, commit, commit
packet scheduler: Add the necessary TC actions for supporting layer 2 MPLS VPNs (VPLS) commit, commit
smc: introduce SMC-Dv2 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Tighten the definition of interface statistics commit
TIPC: Add more encryption features commit, commit, commit, commit
TLS: Implement getsockopt SOL_TLS TLS_RX. The primary usecase is to use it in conjunction with TCP_REPAIR to checkpoint/restore the TLS record layer state commit
xsk: adds support to share a umem between AF_XDP sockets bound to different queue ids on the same device or even between devices. It has already been possible to do this by registering the umem multiple times, but this wasted a lot of memory commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ipvlan: advertise link netns via netlink commit
11. Architectures
11.1. ARM
Add support for Kontron sl28cpld commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for driving the TPM on Socionext SynQuacer platform commit
iommu/arm-smmu-v3: permit users to disable msi polling commit, commit, commit
iommu: Shared Virtual Addressing for SMMUv3 (PT sharing part) commit, commit, commit, commit, commit, commit, commit, commit
Add genpd support to the PRM (Power and Reset Module) driver commit, commit, commit, commit, commit, commit
soc: Add TI PRUSS platform driver commit, commit, commit, commit, commit, commit, commit
coresight: etm4x: Add Support for HiSilicon ETM device commit
perf: Add Arm CMN-600 PMU driver commit
- ARM64
(FEATURED) Memory Tagging Extension user-space support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for PR_SPEC_DISABLE_NOEXEC prctl() option commit
Add Armv8.3 pointer authentication enhancements commit, commit, commit, commit
perf: Add general hardware LLC events for PMUv3 commit
- KVM
SoCs
- Devicetree updates
- Broadcom boards
- Actions Semi boards
- Allwinner SoCs/boards
- Amlogic boards
- Aspeed boards/platforms
Hisilicon SoC: SD5203 SoC commit
Nvidia boards: Tegra234 VDK, for pre-silicon Orin SoC commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- NXP i.MX boards
- Rockchip boards
- STM32 boards
Toshiba SoCs/boards: Visconti SoC and TPMV7708 board commit, commit, commit, commit
qcom: sc7180-trogdor: add initial trogdor and lazor dt commit, commit
qcom: Add support for Xiaomi Poco F1 (Beryllium) commit
Renesas: Add HiHope RZ/G2H board with idk-1110wr display commit
Support for Qualcomm Robotics RB5 Platform based on QRB5165 SoC which is a derivative of SM8250 SoC customized for robotics application commit, commit, commit, commit, commit, commit
Support for latest new SoC, J7200, from Texas Instruments. The J7200 SoC is a part of the K3 Multicore SoC architecture platform commit, commit, commit, commit
am335x: add common dtsi for MOXA UC-8100 series commit
sun8i: s3l: add support for Pine64 PineCube IP camera commit, commit, commit, commit, commit, commit, commit
at91: Add GARDENA smart Gateway (Art. 19000) support commit
11.2. X86
(FEATURED) SEV-ES Guest Support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add emulation/spoofing of SLDT and STR for both 32- and 64-bit processes, needed for wine users commit
Initial support for sharing virtual addresses between the CPU and devices which doesn't need pinning of pages for DMA anymore. Add support for the command submission to devices using new x86 instructions like ENQCMD{,S} and MOVDIR64B. In addition, add support for process address space identifiers (PASIDs) which are referenced by those command submission instructions along with the handling of the PASID state on context switch as another extended state commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for Centaur Family >= 7 of CPUs commit
Add 'nohmat' option for debug, to workaround broken platform instances, or cases where it is otherwise not wanted commit
Allow multiple bits in clearcpuid= parameter commit
Add support for hardware-enforced cache coherency on AMD which obviates the need to flush cachelines before changing the PTE encryption bit commit, commit, commit
Use SERIALIZE in sync_core() when available commit
- platforms
chrome: cros_ec_typec: USB4 support commit
acer-wmi: add automatic keyboard background light toggle key as KEY_LIGHTS_TOGGLE commit
hp-wmi: add support for thermal policy commit
intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC commit
intel_pmc_core: Add Intel RocketLake (RKL) support commit
thinkpad_acpi: add P1 gen3 second fan support commit
touchscreen_dmi: Add info for the Irbis TW118 tablet commit
touchscreen_dmi: Add info for the Predia Basic tablet commit
thinkpad: Add 4 new keycodes and use them for 4 new hotkeys on new Lenovo Thinkpads commit, commit, commit, commit
Add changes needed for new UV5 UV architecture commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- perf
vendor events amd: Add recommended events commit
TopDown metrics support for Icelake commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rapl: Add AMD Fam19h RAPL support commit
amd/uncore: Support user core/thread and slice specification commit, commit, commit, commit
Support PCIe3 uncore PMU on Snow Ridge commit, commit, commit, commit, commit, commit
msr: Add Jasper Lake support commit
intel: Add Jasper Lake support commit
events amd: Add ITLB Instruction Fetch Hits event for zen1 commit
events amd: Add L2 Prefetch events for zen1 commit
- intel_th
resctl: enumerate Memory Bandwidth Allocation (MBA) per-thread feature and introduces a new resctrl file "thread_throttle_mode". The file shows either "per-thread" on newer systems that implement the MBA per-thread feature or "max" on other systems that allocate maximum throttling per-core commit, commit
- KVM
Introduce a new implementation of much of the KVM MMU, optimized for running guests with Two Dimensional Paging commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Allow user space to restrict and augment MSR emulation commit, commit, commit, commit, commit, commit, commit, commit
Restrict PV features to only enabled guests commit, commit, commit, commit
Introduce TSX suspend load tracking feature and expose it to KVM CPUID for processors which support it. KVM reports this information and guests can make use of it commit, commit
Add the support for PCID/INVPCID on AMD guests commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
11.3. S390
Introduce Failure Injection feature commit
ap: Add support for SCLP AP adapter config/deconfig commit, commit, commit
zcrypt: Support for CCA APKA master keys commit
pkey: Support CCA and EP11 secure ECC private keys commit
Add sysfs file to show scheduled leap seconds commit
Allow configuration of TX queues for OSA devices commit
Implement ndo_bridge_getlink commit and ndo_bridge_setlink for learning_sync commit
Make ip_fast_csum() faster commit
Add NVMe firmware-assisted kernel dump support commit, commit, commit
Remove cad commandline option commit
Convert architecture code to GENERIC_VDSO commit
Add ARCH_HAS_DEBUG_WX support commit
Add HAVE_GET_KERNEL_NOFAULT support commit
11.4. POWERPC
Add coregroup support on Powerpc. Coregroup is a group of (subset of) cores of a DIE that share a resource commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
CVE-2020-4788: Speculation on incompletely validated data on IBM Power9 commit, commit, commit, commit, commit
powernv/idle: add a basic stop 0-3 driver for POWER10 commit
ptrace: new flag for detecting ISA v3.1 (Power10) watchpoint features commit
hv-gpci: Add sysfs files inside hv-gpci device to show cpumask commit
Add PAPR command family to pass-through command-set commit
Remove support for PowerPC 601 commit, commit, commit, commit, commit, commit, commit, commit
11.5. RISCV
11.6. MIPS
Add support for ZSTD-compressed kernels commit
Ingenic: Add system type for new Ingenic SoCs commit
Convert Ingenic to a generic board commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Loongson-3: Enable COP2 usage in kernel commit
octeon: Add Ubiquiti E200 and E220 boards commit
ralink: enable zboot support commit
Remove PNX833x alias NXP_STB22x commit
11.7. PARISC
Add qemu fw_cfg interface commit
11.8. IA64
Remove perfmon commit
11.9. ARC
11.10. UM
vector: Add dynamic tap interfaces and scripting (functionality roughly compatible with the existing qemu ifup scripting) commit
12. Drivers
12.1. Graphics
- amdgpu
Remove experimental flag from navi12 commit
Add device ID for sienna_cichlid commit
New ids flag for tmz commit
Add SI support to AMD DC commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
powerplay: Support for gpu metrics export commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
powerplay: add one sysfs file to support the feature to modify gfx clock on Raven/Raven2/Picasso APU commit
powerplay: fan boost enablement commit, commit, commit, commit
Implement power metrics commit and voltage metrics for RENOIR commit
Enable P2P dmabuf over XGMI commit
Implement PCI Error Recovery on Navi12 commit, commit, commit, commit, commit, commit, commit
Add DID for navi10 blockchain SKU commit
Add Green Sardine support commit, commit, commit, commit, commit, commit, commit
Add an auto setting to the noretry parameter commit
Add bad page count threshold in module parameter commit
Add debugfs interface for RAP test commit
Add debugfs node to toggle ras error cnt harvest commit
Add DSC force disable to dsc_clock_en debugfs entry commit
Add connector HPD trigger debugfs entry commit
Add debug param to force dio disable commit
Add debugfs for connector's FEC & DSC capabilities commit
Add debugfs for forcing stream timing sync commit
Enable DP YCbCr420 mode support for DCN10 commit
amdkfd: Show number of compute units that are in use in sysfs commit
Introduce a new parameter to configure how many KCQ we want commit
amdkfd: Add GPU reset SMI event commit
amdkfd: Add process eviction counters to sysfs commit
amdkfd: Add thermal throttling SMI event commit
amdkfd: SMI interface events ioctl update commit
- bridge:
Add Cadence MHDP8546 DisplayPort bridge driver commit, commit
dw-mipi-dsi.c: Add VPG runtime config through debugfs commit
lvds-codec: Add support for regulator commit
tc358762: Add basic driver for Toshiba TC358762 DSI-to-DPI bridge commit
TC358775 DSI/LVDS driver commit
cdns-mhdp8546: Add TI J721E wrapper commit
- i915
GEN 12 HOBL display powersaving commit
Introduce a mechanism to extend execbuf2 commit
syncobj timeline support commit
Rocket Lake display additions commit, commit, commit, commit, commit
Add support for HDCP 1.4 over MST commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
radeon: expose sclk via sysfscommit
- msm
imx: Add initial support for DCSS on iMX8MQ commit
mgag200: Add support for G200 desktop cards commit
mst: Add support for QUERY_STREAM_ENCRYPTION_STATUS MST sideband message commit
- panel
Add panel driver for the Mantix MLAF057WE51-X DSI panel commit
ilitek-ili9881c: add support for Feixin K101-IM2BYL02 panel commit
s6e63m0: Add DSI transport commit
simple: Add AM-1280800N3TZQW-T00H commit
simple: Add Chefree CH101OLHLWH-002 panel commit
simple: Add KD116N21-30NV-A010 commit
simple: Add Powertip PH800480T013 panel commit
sticon: Add user font support commit
- rcar-du
mxsfb: i.MX7 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mxsfb: Support the alpha plane commit
- panfrost:
vc4: Support BCM2711 (and thus the RaspberryPi 4) Display Pipeline merge
virtio: report uuid in debugfs commit
backlight: Add Kinetic KTD253 backlight driver commit
fbdev: remove mbx framebuffer driver commit
Report dp downstream port type as a subconnector property commit
12.2. Storage
- ahci
- SCSI
arcmsr: Add support for ARC-1886 series RAID controllers commit
fc: Add 256GBit speed setting to SCSI FC transport commit
hisi_sas: Add BIST support for fixed code pattern commit and for phy FFE commit
hisi_sas: Add runtime PM support for v3 hw commit, commit, commit, commit, commit, commit, commit
qedi: Add support for handling PCIe errors commit
qla2xxx: Add SLER and PI control support commit
qla2xxx: Add rport fields in debugfs commit
scsi_debug: Implement lun_format commit
smartpqi: Add id support for SmartRAID 3152-8i commit
smartpqi: Support device deletion via sysfs commit
ufs-mediatek: Support performance mode for inline encryption engine commit
ufs-pci: Add LTR support for Intel controllers commit
nvmet: add passthru ZNS support commit
12.3. Drivers in the Staging area
hikey9xx: add build for the Kirin 970 PHY driver commit
mfd: add a PMIC driver for HiSilicon 6421 SPMI version commit
most: add character device interface driver commit
phy: Move phy-rockchip-dphy-rx0 out of staging commit
rtl8723bs: Add 024c:0627 to the list of SDIO device-ids commit
SPMI patches needed by Hikey 970 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
media: Support for Tegra video capture from external sensor commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
media: staging: rkisp1: add support to V4L2_CAP_IO_MC commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
media: zoran: restore deprecated driver commit
media: usbvision: remove deprecated driver commit
12.4. Networking
- Bluetooth
- IB
- RDMA
- ag71xx
- ath10k
- ath11k
Add support spectral scan for IPQ6018 commit
Firmware and board file support for PCI devices commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add ipq6018 support commit
qca6390: packet log support commit, commit, commit, commit, commit
Add raw mode and software crypto support commit
Initial PCI support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
CE and HAL support for QCA6390 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support loading ELF board files commit
ath9k: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support commit
atlantic: phy tunables from mac driver commit, commit, commit
- bnxt_en
Add a software counter for RX ring reset commit
Implement ethtool set_fec_param() method commit
Report Active FEC encoding during link up commit
Report FEC settings to ethtool commit
Update firmware interface spec to 1.10.1.65 commit
Add basic infrastructure to support PAM4 link speeds commit, commit
brcmfmac: support SAE authentication offload in AP mode commit
caif: Remove unused caif SPI driver commit
- can
flexcan FD support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
flexcan: add flexcan driver for i.MX8MP commit
mcp251x: add GPIO support commit
mcp251x: add support for half duplex controllers commit
mcp25xxfd: add driver for Microchip MCP25xxFD SPI CAN commit
pcan_usb: add support of rxerr/txerr counters commit
dp83869: Add ability to advertise Fiber connection commit
- dpaa2
- DSA
dsa: b53: Report VLAN table occupancy via devlink commit
dsa: mt7530: Add the support of MT7531 switch commit
mv88e6xxx: Add devlink regions commit, commit, commit, commit, commit, commit, commit, commit, commit
mv88e6xxx: Add per port devlink regions commit, commit, commit, commit, commit, commit, commit
rtl8366rb: Support setting MTU commit
sja1105: Devlink regions for SJA1105 DSA driver commit, commit, commit
e1000e: Add support for Meteor Lake commit
ena: ethtool: Add new device statistics commit
ena: ethtool: add stats printing to XDP queues commit
ena: xdp: add queue counters for xdp actions commit
ti: ale: add static configuration commit, commit, commit, commit, commit, commit, commit, commit, commit
gve: Add GVE Features commit, commit, commit, commit, commit, commit, commit, commit
- hinic
- hns3
Add support for querying device capabilities and specifications commit, commit, commit, commit, commit, commit, commit
Add UDP segmentation offload support commit
Add RoCE VF reset support commit
Add a hardware error detect type commit
Add debugfs of dumping pf interrupt resources commit
Add support for 200G device commit
debugfs add new command to query device specifications commit
dump tqp enable status in debugfs commit
ibmvnic: set up 200GBPS speed commit
- igc
- ionic
- iwlwifi
Support new ppag table command v2 commit
Add new card for MA family commit
Add new cards for AX201 family commit
Add new cards for MA family commit
Add dumping special device memory commit
Enable twt by default commit
Add support for new WOWLAN_TSC_RSC_PARAM version commit
Add support for new version of WOWLAN_TKIP_SETTING_API_S commit
Add support for range request command ver 11 commit
Add support for responder dynamic config command version 3 commit
Support GCMP ciphers commit
Support ADD_STA_CMD_API_S ver 12 commit
Support more GTK rekeying algorithms commit
Support new KEK KCK api commit
Support an additional Qu subsystem id commit
Updates in the ACPI code to support new tables and FW versions commit, commit, commit, commit, commit
Support new temperature measurement API commit
mac80211_hwsim: indicate support for S1G commit
macb: support the two tx descriptors on at91rm9200 commit
marvell: prestera: Add Switchdev driver for Prestera family ASIC device 98DX3255 (AC3x) commit, commit, commit, commit, commit, commit
mdio-ipq4019: add Clause 45 support commit
- mlxsw
Expose critical and emergency module alarms commit, commit, commit
Expose transceiver overheat counter commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for Multi packet tx descriptors for SKBs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Connection Tracking in NIC mode commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add xfrm IPSec TX offload support commit, commit, commit, commit
Add support for tc trap commit
Add IPv6 traffic class (DSCP) header rewrite support commit
Add CQE compression support for multi-strides packets commit
Support for Flow source hint in software steering and E-Switch commit, commit
Enable use of vport meta data by default commit, commit, commit, commit
- mscc
mscc_ocelot: HW support for VCAP IS1 and ES0 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Offload tc-flower to mscc_ocelot switch using VCAP chains commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- mt76: mt7915
- mvpp2
nfp: flower: add support to offload QinQ match commit
- octeontx2-af
netdevsim: Add debugfs toggle to reject BPF programs in verifier commit
pcs-lynx: add support for 10GBASER commit
- phy
qed: introduce devlink health support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
qmi_wwan: add Telit LE910Cx 0x1230 composition commit
- rtw88
- sfc
smc: introduce System Enterprise ID (SEID) commit
smsc95xx: add phylib support commit
- stmmac
systemport: Manage Wake-on-LAN clock commit
wcn36xx: Add basic support for wcn3680 up to MCS7/40MHz commit, commit, commit, commit, commit, commit, commit, commit, commit
12.5. Audio
- soundwire
intel: add multi-link support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
intel: add power management support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
qcom: add support for mmio soundwire master commit, commit, commit, commit
sysfs: add slave status and device number before probe commit
- hda
Add Alderlake-S PCI ID and HDMI codec vid commit
realtek: Add supported mute Led for HP commit
realtek: Add supported for Lenovo ThinkPad Headset Button commit
realtek: Enable headphone for ASUS TM420 commit
realtek: Add mute Led support for HP Elitebook 845 G7 commit
ca0132: Add full-range speaker selection controls commit
ca0132: Add output selection for SoundBlaster AE-7 commit
realtek: Add new codec supported for ALC897 commit
Add Intel DG1 PCI and HDMI ids commit
ca0132: Add AE-7 support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- ASoC
Intel: Catpt - Lynx and Wildcat point commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Intel: KMB: Enable TDM audio capture commit
Intel: Remove obsolete solutions and components commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Intel: add support for new SoundWire hardware layout on TGL commit
Intel: soc-acpi: add support for SDCA boards commit
Intel: soc-acpi: cnl: add support for rt5682 on SoundWire link2 commit
Intel: sof-soundwire: add support for rt5682 on link2 commit
Intel: Soundwire integration commit
SOF: Intel: Add support for tgl-h commit
SOF: imx: Add debug support for imx platforms commit
SOF: support topology components on secondary cores commit
ak4458: Add DSD support for ak4458 and ak4497 commit
ak4458: Add regulator support commit
ak5558: Add regulator support commit
codec: tlv3204: Enable 24 bit audio support commit
codec: tlv3204: Increased maximum supported channels commit
cs4234: Add support for Cirrus Logic CS4234 codec commit
fsl-asoc-card: add support for TLV320AIC32x4 codec commit
hdac_hdmi: support 'ELD' mixer commit
intel: sof_sdw: add rt711 rt1316 rt714 SDCA codec support commit
mchp-spdifrx: Add driver for Microchip S/PDIF RX commit
mchp-spdiftx: add driver for S/PDIF TX Controller commit
mediatek: mt6359: add codec driver commit
mediatek: mt8183-da7219: support machine driver with rt1015p commit
q6afe-clocks: add q6afe clock controller commit
qdsp6: add gapless compressed audio support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
q6dsp: q6afe: add support to Codec DMA ports commit
q6dsp: q6routing: add support to Codec DMA ports commit
qcom: Add support for lpass hdmi driver commit
qcom: lpass-sc7180: Add platform driver for lpass audio commit
qcom: sc7180: Add support for audio over DP commit
rt1015: add delay to fix pop noise from speaker commit
rt1015p: add codec driver commit
sun50i-codec-analog: Cleanup and power management commit, commit, commit, commit, commit, commit, commit, commit
tas2562: Add the TAS2110 class-D amplifier commit
tas2562: Add the TAS2564 compatible commit
tas2764: Add the driver for the TAS2764 commit
ti: j721e-evm: Add support for j7200-cpb audio commit
tlv320adcx140: Add digital mic channel enable routing commit
tlv320adcx140: Add support for configuring GPIO pin commit
wm8962: Export DAC/ADC monomix switches commit
usb-audio: Add mixer support for Pioneer DJ DJM-250MK2 commit
SoC: Intel: sof_sdw: Add support for product Ripto commit
12.6. Tablets, touch screens, keyboards, mouses
Add zinitix touchscreen driver commit
joystick: add ADC attached joystick driver commit
logitech-hidpp: Add PID for MX Anywhere 2 commit
soc_button_array - add support for INT33D3 tablet-mode switch devices commit
synaptics: enable InterTouch for ThinkPad P1/X1E gen 2 commit
synaptics: enable InterTouch for ThinkPad T14 Gen 1 commit
synaptics-rmi4: add support for F3A commit
synaptics-rmi4: support bootloader v8 in f34v7 commit
xpad: support Ardwiino Controllers commit
soc_button_array: add Lenovo Yoga Tablet2 1051L to the dmi_use_low_level_irq list commit
- HID
uclogic: Add ID for Trust Flex Design Tablet commit
Add support for Sega Saturn commit
cypress: Support Varmilo Keyboards' media hotkeys commit
apple: Add support for Matias wireless keyboard commit
ite: Add USB id match for Acer One S1003 keyboard dock commit
multitouch: Lenovo X1 Tablet Gen2 trackpoint and buttons commit
multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons commit
Add vivaldi HID driver commit
12.7. TV tuners, webcams, video capturers
v4l2-ctrl: Add VP9 codec levels commit
Add new controls for CQ and Frame-skip commit, commit, commit, commit, commit, commit
Add support for colorspace conversion API (CSC) for video capture and subdevices commit, commit, commit, commit, commit, commit
Implements support for the MyGica iGrabber commit
camss: extend VIDIOC_ENUM_* ioctls support commit, commit, commit
exynos4-is: Add support for multiple sensors on one port commit
i2c: ov5640: Add support for BT656 mode commit
ice: add the DDP Track ID to devlink info commit
mtk-vcodec: venc: support for MT8183 commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ov8856: Add support for 1632x1224 mode commit and 3264x2448 mode commit
Add support for mt2701 JPEG ENC support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rc: gpio-ir-recv: add QoS support for cpuidle system commit
rcar-{csi2,vin}: Extend RAW8 support to all RGB layouts commit, commit
rcar-csi2: Enable support for R8A774E1 commit
rcar-vin: Enable support for R8A774E1 commit
- venus
- vidtv
12.8. Universal Serial Bus (USB) and Thunderbolt
- Thunderbolt
dwc-meson-g12a: Add support for USB on AXG SoCs commit
dwc2: add support for APM82181 USB OTG commit
dwc3: pci: add support for the Intel Alder Lake-S commit
dwc3: qcom: Add interconnect support in dwc3 driver commit
dwc3: simple: add support for Hikey 970 commit
- serial
ftdi_sio: add support for FreeCalypso JTAG+UART adapters commit
option: Add Telit FT980-KS composition commit
option: add Cellient MPL200 card commit
option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 commit
option: add Quectel EC200T module support commit
option: add Telit FN980 composition 0x1055 commit
pl2303: add device-id for HP GC device commit
option: add Fibocom NL668 variants commit
option: add support for Thales Cinterion EXS82 commit
serial: ch341: add new Product ID for CH341A commit
Introduce PMIC based USB type C detection commit
TCPM support for FRS and AutoDischarge Disconnect commit, commit, commit, commit, commit, commit, commit
typec: add support for STUSB160x Type-C controller family commit
typec: intel_pmc_mux: Support for device role (UFP) commit
typec: mt6360: Add support for mt6360 Type-C driver commit
Raspberry Pi 4 USB firmware initialization rework commit, commit, commit, commit, commit, commit, commit, commit, commit
xhci: add debugfs support for ep with stream commit
12.9. Serial Peripheral Interface (SPI)
dw: Add full Baikal-T1 SPI Controllers support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dw: Add KeemBay Master capability commit
dw: Add Microchip Sparx5 support commit
spi-mtk-nor: Add power management support commit
12.10. Watchdog
Add Toshiba Visconti watchdog driver commit
Add support for sl28cpld watchdog commit
it87_wdt: add IT8772 ID commit
it87_wdt: add IT8784 ID commit
renesas_wdt: support handover from bootloader commit
12.11. Serial
12.12. CPU Frequency scaling
Prevent "ondemand" and "conservative" from being configured as the default cpufreq governor in the case when schedutil is the default choice for the default governor setting. commit
sti-cpufreq: add stih418 support commit
qcom-hw: Add cpufreq support for SM8250 SoC commit
12.13. Voltage, current regulators, power capping, power supply
power: supply: Add support for RN5T618/RC5T619 charger and fuel gauge commit
power: supply: gpio-charger: add charge-current-limit feature commit
power: supply: bq27xxx: add support for TI bq34z100 commit
power: supply: smb347-charger: Support SMB345 and SMB358 commit
power: supply: max17040: Support compatible devices commit
power: supply: max17040: Support soc alert commit
power: supply: max17040: Support setting rcomp commit
power: supply: bq25980: Add support for the BQ259xx family commit
power: reset: ocelot: Add support for Sparx5 commit
regulator: mt6360: Add support for MT6360 regulator commit
regulator: qcom_spmi: Add PM660/PM660L regulators commit
regulator: qcom_smd: Add PM660/PM660L regulator support commit
regulator: Support ROHM BD9576MUF and BD9573MUF commit
regulator: qcom_smd: add pm8953 regulators commit
regulator: rt4801: Add support for RT4801 Display Bias regulator driver commit
regulator: rpi-panel: Add regulator/backlight driver for RPi panel commit
regulator: rtmv20: Adds support for Richtek RTMV20 load switch regulator commit
12.14. Real Time Clock (RTC)
ds1307: enable rx8130's backup battery, make it chargeable optionally commit
rv3032: Add a driver for Microcrystal RV-3032 commit
12.15. Pin Controllers (pinctrl)
Ingenic: Add support for SSI and I2S pins commit, commit, commit
actions: Add Actions S500 pinctrl driver commit
mediatek: Add MT8167 Pinctrl driver commit
mediatek: Add pinctrl driver for mt8192 commit
qcom: Add msm8226 pinctrl driver commit
sunxi: add support for the Allwinner A100 pin controller commit
visconti: Add Toshiba Visconti SoCs pinctrl support commit
12.16. Multi Media Card (MMC)
sdhci-iproc: Enable eMMC DDR 3.3V support for bcm2711 commit
sdhci-of-sparx5: Add Sparx5 SoC eMMC driver commit
sdhci-pci-gli: Add CQHCI Support for GL9763E commit
sdhci: Add LTR support for some Intel BYT based controllers commit
sdhci_am654: Add support for input tap delay commit
sdhci_am654: Add support for software tuning commit
12.17. Memory Technology Devices (MTD)
nand: Introduce the ECC engine framework commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
hyperbus: add Renesas RPC-IF driver commit
physmap: Add Baikal-T1 physically mapped ROM support commit
spi-nor: intel-spi: Add support for Intel Alder Lake-S SPI serial flash commit
spi-nor: macronix: Add SECT_4K to mx25l12805d commit
spi-nor: winbond: Add support for w25q64jwm commit
spinand: gigadevice: Add support for GD5F4GQ4xC commit
spinand: macronix: Add support for MX31LF1GE4BC commit and for MX31UF1GE4BC commit
12.18. Industrial I/O (iio)
accel: adxl372: Add support for FIFO peak mode commit
accel: kxcjk1013: Add support for KIOX010A ACPI DSM for setting tablet-mode commit
adc: ad9467: add support for AD9265 high-speed ADC commit and AD9434 high-speed ADC commit
chemical: atlas-ezo-sensor: add humidity sensor support commit and for O2 sensor commit
gyro: Add driver support for ADXRS290 commit
gyro: adxrs290: Add triggered buffer support commit and debugfs register access support commit
humidity: Add TI HDC20x0 support commit
light: as73211: New driver commit
mlx90632: Adding extended calibration option commit
12.19. Multi Function Devices (MFD)
Add simple regmap based I2C driver commit
Add ACPI support to Kontron PLD driver commit
ene-kb3930: Add driver for ENE KB3930 Embedded Controller commit
intel-lpss: Add device IDs for UART ports for Lakefield commit
intel-m10-bmc: Add Intel MAX 10 BMC chip support for Intel FPGA PAC commit
lp87565: Add LP87524-Q1 variant commit
simple-mfd-i2c: Add sl28cpld support commit
12.20. Pulse-Width Modulation (PWM)
Add support for sl28cpld PWM controller commit
12.21. Inter-Integrated Circuit (I2C + I3C)
Add slave testunit driver commit
i801: Add support for Intel Alder Lake PCH-S commit
ismt: Add support for Intel Emmitsburg PCH commit
mlxbf: I2C SMBus driver for Mellanox BlueField SoC commit
rcar: add HostNotify support commit
stm32f7: Add SMBus Host-Notify protocol support commit
12.22. Hardware monitoring (hwmon)
Extending hwmon ABI with attributes for rated values commit, commit
Expose PEC debugfs attribute commit
- pmbus
Add support for the sl28cpld hardware monitoring controller commit
k10temp: Add support for Zen3 CPUs commit
lm75: Add regulator support commit
Add hwmon driver for Intel MAX 10 BMC commit
Add hardware monitoring driver for Moortec MR75203 PVT controller commit
gsc-hwmon: add fan sensor commit
12.23. General Purpose I/O (gpio)
Implement a new version of the GPIO CDEV uAPI to address existing 32/64-bit alignment issues, add support for debounce, event sequence numbers, and allow for requested lines with different configurations commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for the sl28cpld GPIO controller commit
pca953x: Add support for the NXP PCAL9554B/C commit
12.24. Leds
Add driver for Acer Iconia Tab A500 commit
lp50xx: Add the LP50XX family of the RGB LED driver commit
pca955x: Add an IBM software implementation of the PCA9552 chip commit
12.25. DMA engines
xilinx: dpdma: Add debugfs support commit
idxd: add support for configurable max wq batch size commit and max wq xfer size commit
idxd: add command status to idxd sysfs attribute commit
12.26. Hardware Random Number Generator (hwrng)
ingenic: Add hardware TRNG for Ingenic X1830 commit
xiphera-trng: add support for XIP8001B hwrng commit
12.27. Cryptography hardware acceleration
caam: xts(aes): Add ability to process XTS with 16B IV in HW commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
inside-secure: Add support for EIP197 with output classifier commit
allwinner: add xRNG and hashes commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
n2: remove ecb(arc4) support commit
bcm-iproc: remove ecb(arc4) support commit
12.28. PCI
Add Kconfig options for MPS/MRRS strategy commit
brcmstb: Add bcm7278 PERST# support commit
hip: Add handling of HiSilicon HIP PCIe controller errors commit
layerscape: Add EP mode support for ls1088a and ls2088a commit
12.29. FRU Support Interface (FSI)
aspeed: Support cabled FSI commit
aspeed: Support CFAM reset GPIO commit
aspeed: Add module param for bus divisor commit
12.30. Clock
axi-clkgen: Add support for fractional dividers commit
imx: imx21: Remove clock driver commit
mediatek: Add MT8167 clock support commit
meson: add sclk-ws driver commit
qcom: Add SM8150 and SM8250 videocc drivers commit, commit, commit, commit, commit
qcom: Add display clock controller driver for SM8150 and SM8250 commit
renesas: cpg-mssr: Add support for R-Car V3U commit
sp804: Add support for Hisilicon sp804 timer commit
sunxi-ng: add support for the Allwinner A100 CCU commit
12.31. PHY ("physical layer" framework)
Add USB3 PHY support for Intel LGM SoC commit
Add support for multilink configurations in Cadence Torrent PHY driver commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
freescale: imx8mq-usb: add support for imx8mp usb phy commit
intel: Add Keem Bay eMMC PHY support commit
Support qcom USB3+DP combo phy (or type-c phy) commit, commit, commit, commit, commit, commit, commit, commit
socionext: Add UniPhier AHCI PHY driver support commit
12.32. EDAC (Error Detection And Correction)
al-mc-edac: Add Amazon's Annapurna Labs Memory Controller driver commit
12.33. Various
bus/fsl-mc: Extend mc-bus driver functionalities in preparation for mc-bus VFIO support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mhi: core: Introduce counters to track MHI device state transitions commit
mhi: core: Introduce debugfs entries for MHI commit
dt-bindings: reset: Updated binding for Versal reset driver commit
eeprom: at24: Add support for the Sony VAIO EEPROMs commit
- habanalabs
interconnect: Add interconnect sync state support commit, commit, commit
Add SM8150 and SM8250 interconnect drivers commit, commit, commit, commit, commit
interconnect: Add L3 provider support for SM8150/SM8250 commit, commit, commit, commit, commit, commit, commit
irq: dw-apb-ictl: Add primary interrupt controller support commit
irq: irq-mst: Add MStar interrupt controller support commit
irq: Add TI PRUSS Local Interrupt Controller IRQChip driver commit, commit, commit, commit, commit
irq: Add Actions Semi Owl family sirq support commit
mailbox: arm_mhu: Add ARM MHU doorbell driver commit
misc: fastrpc: add ioctl for attaching to sensors pd commit
misc: hisi_hikey_usb: add support for Hikey 970 commit, commit, commit
misc: mic: remove the MIC drivers commit
Add support for PCIe EP nodes to Renesas r8a774a1, r8a774b1 and r8a774c0 SoC's commit
Add PCIe EP to RZ/G2H commit
dwc: Add the multiple PF support for DWC and Layerscape commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
ptp_qoriq: support FIPER3 commit
regmap: add Intel SPI Slave to AVMM Bus Bridge support commit
- remoteproc
reset: reset-zynqmp: Added support for Versal platform commit
rpmsg: glink: Add support for rpmsg glink chrdev commit
w1_therm: Add sysfs entries to control conversion time and driver features commit
w1_therm: Add support for GXCAS GX20MH01 device commit
13. List of Pull Requests
14. Other news sites
Phoronix 5.10 feature overview