27583
Comment: more typos
|
1055
|
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]. A interesting place to get good information about the linux kernel is LWN and their [http://lwn.net/Kernel/ "kernel status" articles], [http://lwn.net/Articles/driver-porting/ driver porting guide] and lots of nice stuff - many of the links here are linking to LWN articles and we wouldn't have been able to restore the 2.5.x-2.6.x changelog without them (you may be insterested in subscribing so Jonathan can keep up the good work ;) ) Before adding things here look at the RULES section at the end of the page!! | #pragma keywords Linux, Kernel, Operating System, Linus Torvalds, Open Source, drivers, filesystems, network, memory management, scheduler, preemption, locking #pragma description Summary of the changes and new features merged in the Linux Kernel during the 2.6.x and 3.x development Changes done in each Linux kernel release. Other places to get news about the Linux kernel are [[http://lwn.net/Kernel/|LWN kernel status]] or the Linux Kernel mailing list (there is a web interface in [[http://www.lkml.org|www.lkml.org]] or [[https://lore.kernel.org/lkml/|lore.kernel.org/lkml]]). The lore.kernel.org/lkml/ archive is also available via NTTP if you prefer to use a newsreader: use `nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel` for that. List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules! |
Line 3: | Line 5: |
You can discuss the latest Linux kernel changes on the [[http://forum.kernelnewbies.org/list.php?4|New Linux Kernel Features Forum]]. | |
Line 4: | Line 7: |
2.6.14 '''STILL NOT RELEASED!!''': * Add /proc/<pid>/smaps: how much memory is resident in each mapping [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e070ad49f31155d872d8e96cab2142840993e3c0 (commit)] * Numa-aware slab allocator [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(): 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)] * 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 (useless) [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b01d8684e9e5b04270970c97df856d47668267e3 (commit)] * Add netlink connector: userspace <-> kernel space easy to use communication module which implements easy to use bidirectional message bus using netlink as it's backend [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7672d0b54411371e0b6a831c1cb2f0ce615de6dc (commit)] * Suspend support for CIFS filesystem [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ede1327ea4ca8019ec6df24b3e837def091c26b8 (commit)] * PPTP protocol support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=926b50f92a30090da2c1a8675de954c2d9b09732 (commit)] * [http://fuse.sourceforge.net/ FUSE]: FUSE allows to implement a fully functional filesystem in a userspace program * [http://v9fs.sourceforge.net/ 9P support]: Linux port of the famous [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)] * ipw2100 and 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://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6582c164f2b3b6e58d1f13c1c031b19ee691eb14 (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)] * [http://lwn.net/Articles/149756/ DCCP]: "Datagram Congestion Control Protocol". Datagram protocol (like UDP), but with a congestion control mechanism. 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)] * [http://relayfs.sourceforge.net/ RelayFS]: "Basically 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)] * 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)] 2.6.13 released August 29, 2005 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.13 changelog]: * x86 now uses the generic PCI bus setup code for assigning unassigned resources * [http://lwn.net/Articles/104343/ inotify] * Support for the Xtensa architecture: [http://www.tensilica.com/products/xtensa_architecture.htm 32-bit architecture] used in embedded devices * [http://lwn.net/Articles/108595/ 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/135472/ 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/145973/ build-time configurable clock interrupt frequency]: * [http://lwn.net/Articles/143474/ Improved CFQ IO scheduler]: With support for I/O priorities * Voluntary preemption patches * 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]: * [http://lwn.net/Articles/140164/ API changes] * New driver for the "trusted computing" (TPM) crap^Wchip * [http://www.superh.com/products/shyway.htm SuperHyway bus support] * Multilevel security implementation for SELinux * [http://lwn.net/Articles/124703/ device mapper multipath support] * [http://lwn.net/Articles/121845/ Address space randomization] * Restore the Philips webcam driver * I/O barrier support for serial ATA drives * [http://lwn.net/Articles/134460/ "resource limits"] * [http://lwn.net/Articles/127936/ cpusets] * Remove IPV6 "experimental" status * Hot-pluggable parallel ports * Block I/O barrier rewrite (enables full barrier support on serial ATA drives) 2.6.11 released March 2, 2005 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.11 changelog]: * [http://lwn.net/Articles/117749/ Conversion to 4-level page tables] * [http://lwn.net/Articles/112531/ Infiniband support] * Support for Extended Attributes in the body of large inode in ext3: saves space and improves performance in some cases * Fujitsu FR-V CPU arch implementation * SATA support for Intel ICH7 * [http://lwn.net/Articles/115405/ DebugFS] * [http://lwn.net/Articles/118750/ New Pipe implementation] * [http://lwn.net/Articles/102253/ "Big Kernel Sempahore"] 2.6.10 released December 24, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.10 changelog]: * [http://lwn.net/Articles/109505 Reworking of spin lock initialization] * Big Kernel Lock preemption * IRQ subsystem code rework * Removal of the "BIO walking" helper functions * [http://lwn.net/Articles/107314/ generic circular buffer type] * Ext3 block reservation and online resizing patches * [http://lwn.net/Articles/69523/ sysfs backing store] * [http://lwn.net/Articles/103183/ I/O space write barriers] * On-the-fly switchable I/O schedulers * BSD secure levels module * kernel events notification mechanism * In-kernel cryptographic key management * DVD+RW and CDRW packet writing support 2.6.9 released October 19, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.9 changelog]: * [http://lwn.net/Articles/96621 Token-based thrashing control] * Support of block I/O barrier * m32r architecture support * Allow unprivileged processes to lock small amounts of memory in RAM * 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 * [http://lwn.net/Articles/97537/ Out-of-line spinlocks] * Support for POSIX's waitid() * Shared memory scalability improvements * [http://lwn.net/Articles/91829/ "flex mmap" user-space memory layout] * 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 * [http://lwn.net/Articles/101215/ NETIF_F_LLTX interface] * Removal of the ancient "busmouse" driver * Infrastructure for cluster-wide file locking * DRM subsystem cleanups * more filesystem conversions to the new symbolic link resolution code (which will eventually allow an increase in the maximum link depth) * "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 * Removal of the Philips webcam driver * 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]: * support for 64-bit Super-H hardware * Removal of the PC9800 subarchitecture (lack of mainteinance) * x86 no-execute support, asynchronous I/O support for USB gadgets * [http://lwn.net/Articles/91959/ reworked symbolic link lookup implementation] * New "CPU mask" implementation * RCU performance improvements * Support for new Apple Powerbooks * New wait_event_interruptible_exclusive() macro * Support for the O_NOATIME flag in the open() call * Sysfs knobs for tuning the CFQ I/O scheduler * Mirroring and snapshot targets for the device mapper * Reiserfs data=journal support * Preemptible kernel support for the PPC64 architecture * "Khazad" crypto algorithm * [http://lwn.net/Articles/98379/ Added permissions checking on raw SCSI commands from user space] * Removal of the fcntl() file operations method * New internal infrastructure for handling file positioning and seekability * Support for the O_NOATIME flag in the open() call * Removal of the (non-functional) "fastroute" networking option * TEA and XTEA crypto algorithms 2.6.7 released June 16, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.7 changelog]: * [http://lwn.net/Articles/80911/ Scheduling Domains] * [http://lwn.net/Articles/83633/ Filtered Wakeups] * Ability to re-enable interrupts while waiting in spin_lock_irqsave() (for all architectures now) * msleep() function for millisecond-scale waits * [http://lwn.net/Articles/84836/ del_singleshot_timer()]: Deleting timers quickly * shrink "dentry" structure * Removal of the Intermezzo filesystem (lack of mainteinance) * Support for quotas and external attributes in reiserfs * Removal of IDE tagged command queueing support (never worked well) * new API for NUMA systems 2.6.6 released May 10, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.6 changelog]: * [http://lwn.net/Articles/80472/ full object-based reverse-mapping scheme and removal of the per-page PTE chains] * Network packet timestamping optimization * [http://www.geocities.com/wronski12/posix_ipc/index.html POSIX message queues] * Message queues for the x86_64 and s390 architectures * fsync() and fdatasync() speed improvements to ext2/3 * [http://lwn.net/Articles/77190/ addition of the fcntl() method to the file_operations structure] * [http://lwn.net/Articles/65437/ "Laptop Mode"] * 4KB kernel stacks option for the i386 architecture * Non-executable stack support for several architectures * Reiserfs updates: data=ordered support, space preallocation, laptop mode support * IPv6 support in SELinux * [http://lwn.net/Articles/79326/ The lightweight auditing framework] * A mechanism which allows block drivers to respond to queries about the congestion state of their queues * [http://lwn.net/Articles/75233/ "per-device unplugging patch"] * CFQ scheduler * External module support * Generic snapshot support code for filesystems (taken from XFS) 2.6.5 released April 4, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.5 changelog]: * [http://lwn.net/Articles/75944 Netpoll infrastructure] * [http://lwn.net/Articles/75920 New "kref" reference counting mechanism] 2.6.4 released March 11, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.4 changelog]: * HFS rewrite * Support for the Intel "ia32e" arch * UTF-8 tty mode * 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] * [http://lwn.net/Articles/65178/ Generic kernel thread infrastructure] * Groundwork for the hotplug CPU code * ARC4 crypto module 2.6.3 released February 18, 2004 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.3 changelog]: * Removal of the USB scanner code: moved support to userspace (libusb) * [http://lwn.net/Articles/69402/ New DMA pool abstraction] * "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]: * 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]: * [http://lwn.net/Articles/44135/ Message Signaled Interrupt support] * Extensible Firmware Interface (EFI) support. 2.6.0 released December 18, 2003 [http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.0 changelog]: 2.6.0-test9: * [http://lwn.net/Articles/44243/ libata driver architecture] 2.6.0-test6: * [http://marc.theaimsgroup.com/?l=linux-kernel&m=104344596912094&w=2 32-bit dev_t] * Direct I/O support for reiserfs 2.6.0-test3: * [http://www.nsa.gov/selinux/index.html SELinux] 2.6.0-test1: * [http://www.linuxvirtualserver.org/ Linux Virtual Server layer] 2.5.75 released July 10, 2003: * [http://marc.theaimsgroup.com/?l=linux-mm&m=104529418208788&w=2 Anticipatory Scheduler] * "kblockd" kernel threads * "nointegrity" JFS mount option 2.5.74 released July 2, 2003: 2.5.73 released June 22, 2003: 2.5.72 released June 17, 2003: 2.5.71 released June 14, 2003: * [http://marc.theaimsgroup.com/?l=linux-kernel&m=104981044405395&w=2 Switch the IDE I/O layers to taskfile] 2.5.70 released May 27, 2003: * [http://www.linux-usb.org/gadget USB gadget support] 2.5.69 released May 5, 2003: * [http://lwn.net/Articles/29555/ New interrupt handling API] * Runtime barrier instruction patching: Allows optimal performance on different processors without the need to ship multiple kernels 2.5.68 released April 20, 2003: * Merging s390 and s390x into a single architecture * Generation of hotplug events from kobject registration 2.5.67 released April 7, 2003: 2.5.66 released March 24, 2003: 2.5.65 released March 17, 2003: * [http://www.kerneltrap.org/node.php?id=603 Desktop Interactivity Improvements] 2.5.64 released March 5, 2003: 2.5.63 released February 24, 2003: * [http://high-res-timers.sourceforge.net/ POSIX timers] 2.5.62 released February 17, 2003: * [http://lse.sourceforge.net/locking/dcache/dcache_lock.html Avoid dcache_lock while path walking] 2.5.61 released February 15, 2003: 2.5.60 released February 10, 2003: * New modversions implementation * 64-bit jiffies 2.5.59 released Janury 17, 2003: * [http://home.arcor.de/efocht/sched/ NUMA aware scheduler extensions] 2.5.58 released January 14, 2003: 2.5.57 released January 13, 2003: * [http://www.zipworld.com.au/~akpm/linux/schedlat.html Remove long-held locks for low scheduling latency] 2.5.56 released January 10, 2003: 2.5.55 released January 9, 2003: 2.5.54 released January 2, 2003: * [http://secure.netroedge.com/~lm78/ Add lm-sensors drivers for hardware health monitoring] * Support for AGP 3.0 2.5.53 released December 24, 2002: * "sysenter" support 2.5.52 released December 16, 2002: 2.5.51 released December 10, 2002: * [http://linuxconsole.sourceforge.net/ Rewrite of the console layer] * Compatibility syscall layer 2.5.50 released November 27, 2002: 2.5.49 released November 22, 2002: 2.5.48 released November 18, 2002: * [http://lists.insecure.org/lists/linux-kernel/2002/Oct/6214.html In-kernel module loader] 2.5.47 released November 11, 2002: * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0204.1/0429.html Zerocopy NFS] 2.5.46 released November 4, 2002: * [http://www.xmailserver.org/linux-patches/nio-improve.html Better I/O performance with epoll] * Per-cpu hot & cold page lists * [http://lists.insecure.org/lists/linux-kernel/2002/Oct/7027.html MMU-less processor support (ucLinux)] * [http://marc.theaimsgroup.com/?l=linux-kernel&m=101095500820185&w=2 Replace initrd by initramfs] * Extended Attributes and ACLs for ext2/ext3 2.5.45 released October 31, 2002: * [http://www.xs4all.nl/~zippel/lc/ New Linux configuration system: kconfig] * [http://samba.org/~jamesm/crypto/ CryptoAPI] * [ftp://ftp.linux-ipv6.org/pub/usagi/patch/ipsec/ IPSEC] * [http://www.linuxtv.org/dvb/ Digital Video Broadcasting (DVB) layer] * [http://www.sistina.com/products_lvm.htm Device mapper for Logical Volume Manager (LVM2)] 2.5.44 released October 19, 2002: * New sysfs filesystem (formerly known as driverfs) * Plug'N Play Layer Rewrite * [http://lwn.net/Articles/9042/ x86 BIOS Enhanced Disk Device (EDD) polling] 2.5.43 released October 16, 2002: * [http://www.psc.edu/general/filesys/afs/ Andrew File System (AFS) support] * [http://oprofile.sourceforge.net/ OProfile, a low-overhead profiler] * [http://lse.sourceforge.net/locking Read-Copy Update (RCU) Mutual Exclusion] * [http://www.citi.umich.edu/projects/nfsv4/ Add support for NFS v4] * Remove kiobufs 2.5.42 released October 12, 2002: * [http://marc.theaimsgroup.com/?l=linux-kernel&m=103298446916066&w=2 ext2/ext3 large directory support: HTree index] * [http://us1.samba.org/samba/Linux_CIFS_client.html Add new CIFS (Common Internet File System)] * [http://www.gelato.unsw.edu.au/ Remove the 2TB block device limit] * Improved i2o (Intelligent Input/Ouput) layer 2.5.41 released October 7, 2002: 2.5.40 released October 1, 2002: * [http://lse.sourceforge.net/numa Parallelizing page replacement] * [http://lse.sourceforge.net/numa NUMA topology support * [http://www.brodo.de/cpufreq/ Add support for CPU clock/voltage scaling] 2.5.39 released September 27, 2002: * New IO scheduler ("deadline") 2.5.38 released September 22, 2002: 2.5.37 released September 20, 2002: * [http://users.pandora.be/bart.de.schuymer/ebtables/ Ethernet bridge tables support] * Remove the global tasklist 2.5.36 released September 18, 2002: * Hugepage support * [http://oss.sgi.com/projects/xfs/ XFS filesystem from SGI] 2.5.35 released September 16, 2002: * Serial ATA support * [http://user-mode-linux.sourceforge.net/index.html Add User-Mode Linux (UML)] 2.5.34 released September 9, 2002: * POSIX threading support for signals * [http://lse.sourceforge.net/numa discontigmem support (ia32)] 2.5.33 released August 31, 2002: * TCP segmentation offload * [http://www.sf.net/projects/lksctp SCTP (Stream Control Transmission Protocol)] 2.5.32 released August 27, 2002: * [http://people.redhat.com/drepper/nptl-design.pdf Improved POSIX threading support] * [http://freshmeat.net/projects/linux-aio/ Asynchronous IO (aio) support] * Porting all input devices over to input API * New MTRR (Memory Type Range Register) driver 2.5.31 released August 11, 2002: * Support insane number of processes * Disk description cleanups * Remove incomplete SPX network stack 2.5.30 released August 1, 2002: * Remove khttpd 2.5.29 released July 27, 2002: * Strict address space accounting * [http://lsm.immunix.org/ Add Linux Security Module (LSM)] * [http://people.redhat.com/mingo/tls-patches/ Thread-Local Storage (TLS) support] 2.5.28 released July 24, 2002: * Remove the "Big IRQ lock" * Serial driver restructure 2.5.27 released July 20, 2002: * [http://surriel.com/patches/ New VM with reverse mappings] 2.5.26 releasaed July 16, 2002: * Direct pagecache <-> BIO disk I/O 2.5.25 releaseed July 5, 2002: * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0207.0/0741.html Faster internal kernel clock frequency] * Unified naming for disk devices 2.5.24 released June 20, 2002: 2.5.23 released June 19, 2002: * [http://www.kernel.org/pub/linux/kernel/people/rusty/patches/Hotcpu/ Hotplug CPU support] * [http://bazar.conectiva.com.br/~acme/patches/wip More complete IEEE 802.2 stack] 2.5.22 released June 17, 2002: 2.5.21 released June 9, 2002: 2.5.20 released June 3, 2002: 2.5.19 released May 29, 2002: 2.5.18 released May 25, 2002: * [http://falcon.sch.bme.hu/~seasons/linux/swsusp.html Software suspend (to disk & RAM)] * ->getattr() ->setattr() ->permission() changes 2.5.17 released May 21, 2002: * Move ISDN4linux to CAPI based interface * [http://marc.theaimsgroup.com/?l=linux-fsdevel&m=101586205801483&w=2 New quota system supporting plugins] 2.5.16 released May 18, 2002: 2.5.15 released May 9, 2002: 2.5.14 released May 6, 2002: * Bluetooth support (no longer experimental!) * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0204.1/1250.html Support for IDE TCQ (Tagged Command Queueing)] 2.5.13 released May 3, 2002: 2.5.12 released May 1, 2002: * Rewrite of the buffer layer 2.5.11 released April 29, 2002: * Rewrite of the framebuffer layer * [http://www.ussg.iu.edu/hypermail/linux/kernel/0204.3/0129.html Fast walk dcache] * [http://linux-ntfs.sourceforge.net/ Replace old NTFS driver with NTFS TNG driver] 2.5.10 released April 24, 2002: 2.5.9 released April 22, 2002: * Smarter IRQ balancing 2.5.8 released April 14, 2002: * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0204.1/0215.html Radix-tree pagecache] * [http://www.kernel.org/pub/linux/kernel/people/rml/cpu-affinity Syscall interface for CPU task affinity] 2.5.7 released March 18, 2002: * [http://sourceforge.net/projects/acpi/ ACPI (Advanced Configuration & Power Interface)] * [ftp://robur.slu.se/pub/Linux/net-development/NAPI/ NAPI network interrupt mitigation] * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0203.0/0884.html Futexes (Fast Lightweight Userspace Semaphores] * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0203.0/0335.html Video for Linux (V4L) redesign] * [http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html New driver API for Wireless Extensions] 2.5.6 released March 8, 2002: * [http://www.hojdpunkten.ac.se/054/samba/ http://www.hojdpunkten.ac.se/054/samba/] * [http://www.cs.helsinki.fi/linux/linux-kernel/2002-01/0438.html HDLC (High-level Data Link Control) update] * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0202.2/0920.html per_cpu infrastructure] * [http://www-124.ibm.com/jfs/ Add JFS (Journaling FileSystem from IBM)] * Killing kdev_t for block devices 2.5.5 released February 20, 2002: * [http://linuxppc64.org/ New architecture: PowerPC 64-bit (ppc64)] * [http://www.x86-64.org/ New architecture: AMD 64-bit (x86-64)] * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0202.2/0297.html Pagetables in highmem support] * [http://www.alsa-project.org/ Add ALSA (Advanced Linux Sound Architecture] 2.5.4 released February 11, 2002: * [http://www-124.ibm.com/developerworks/oss/pthreads/ Support for Next Generation POSIX Threading] * [ftp://ftp.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/ Add preempt kernel option] * Per network protocol slabcache & sock.h * [http://marc.theaimsgroup.com/?l=linux-kernel&m=100942323913586&w=2 Per filesystem slabcache & fs.h] 2.5.3 released January 30, 2002: * [http://kernel.org/pub/linux/kernel/people/mochel/doc/ New driver model & unified device tree] * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0109.3/1341.html PnP BIOS driver] * [http://www.geocrawler.com/mail/msg.php3?msg_id=7686796&list=35 Generic Extended Attribute support] * [http://marc.theaimsgroup.com/?l=linux-kernel&m=101077476005939&w=2 Support reiserfs external journal] * [http://marc.theaimsgroup.com/?l=linux-kernel&m=101121711408999&w=2 IDE layer update] * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0202.0/0260.html Untangle sched.h & fs.h include dependancies] * [http://www.geocrawler.com/lists/3/Linux/35/100/7642826/ Break Configure.help into multiple files] 2.5.2 released January 15, 2002: * [http://marc.theaimsgroup.com/?l=linux-kernel&m=100992347220716&w=2 New kernel device structure (kdev_t)] * [http://people.redhat.com/mingo/O(1)-scheduler/ O(1) scheduler for improved scalability] * [http://marc.theaimsgroup.com/?l=linux-fsdevel&m=98307457705210&w=2 Filesystem per-process namespaces, late-boot cleanups] * [http://www.linux-usb.org/usb2.html Initial support for USB 2.0] 2.5.1 December 17, 2001: * Rewrite of the block IO (bio) layer 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 and add the link here * Add commit's link if possible (search them [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=log here)] TODO: * Import relevant data from [http://www.codemonkey.org.uk/post-halloween-2.5.txt davej's post halloween document] or remainig stuff from [http://kernelnewbies.org/status/latest.html Kernelnewbies status] * Find links to corresponding changesets (!!) * Keep track of what gets changed |
<<Include(Linux_5.11)>> |
Changes done in each Linux kernel release. Other places to get news about the Linux kernel are LWN kernel status or the Linux Kernel mailing list (there is a web interface in www.lkml.org or lore.kernel.org/lkml). The lore.kernel.org/lkml/ archive is also available via NTTP if you prefer to use a newsreader: use nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel for that. List of changes of older releases can be found at LinuxVersions. If you're going to add something here look first at LinuxChangesRules!
You can discuss the latest Linux kernel changes on the New Linux Kernel Features Forum.
Linux 5.11 was released on Sun, 14 Feb 2021
Summary: This release adds supports for a new mechanism that lets software like wine handle windows syscalls in a much faster and clean manner; support for unprivileged overlayfs mounts; support for Intel SGX enclaves; support for upcoming AMD and Intel graphics hardware; faster performance and data recovery options in Btrfs; support for re-exporting via NFS an existing NFS mount; a new epoll_pwait2(2) syscall for wait timeouts with nanosecond resolution, and faster KASAN memory debugging in ARM. As always, there are many other features, new drivers, improvements and fixes.
Contents
-
Prominent features
- Faster wine with Syscall User Dispatch
- Unprivileged Overlayfs mounts
- Support for Intel SGX
- Support of new AMD, Intel graphics harware
- Faster performance and better data recover in Btrfs
- NFS re-exporting support
- Add epoll_pwait2(2) syscall for higher resolution waits
- Faster memory leak debugging in ARM
- Core (various)
- File systems
- Memory management
- Block layer
- Tracing, perf and BPF
- Networking
- Architectures
-
Drivers
- Graphics
- Power Management
- Storage
- Drivers in the Staging area
- Networking
- Audio
- Tablets, touch screens, keyboards, mouses
- TV tuners, webcams, video capturers
- Universal Serial Bus
- Serial Peripheral Interface (SPI)
- Watchdog
- Serial
- CPU Frequency scaling
- Device Voltage and Frequency Scaling
- Voltage, current regulators, power capping, power supply
- Real Time Clock (RTC)
- Pin Controllers (pinctrl)
- Multi Media Card (MMC)
- Memory Technology Devices (MTD)
- Industrial I/O (iio)
- Multi Function Devices (MFD)
- Pulse-Width Modulation (PWM)
- Inter-Integrated Circuit (I2C + I3C)
- Hardware monitoring (hwmon)
- General Purpose I/O (gpio)
- Leds
- DMA engines
- Cryptography hardware acceleration
- PCI
- Non-Transparent Bridge (NTB)
- 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. Faster wine with Syscall User Dispatch
This release adds a clean an efficient mechanism to redirect syscalls to support the non-Linux syscalls of WINE by catching them at syscall entry and redirecting them to the user space emulation. This can be utilized for other purposes as well and has been designed carefully to avoid overhead for the regular fastpath.
Recommended LWN article: Emulating Windows system calls, take 2
1.2. Unprivileged Overlayfs mounts
Overlayfs, merged in Linux 3.18, allows a directory tree (usually read-only) to be overlaid onto another, read-only directory tree, where all the modifications are done.
Use of Overlayfs was limited to privileged users. After auditing the code to make sure that all operations on underlying layers are performed with the privileges of the mounting task, this release finally allows non-privileged users to make use of Overlayfs.
1.3. Support for Intel SGX
Intel SGX is new hardware functionality that can be used by applications to populate protected regions of user code and data called enclaves. Once activated, the new hardware protects enclave code and data from outside access and modification. Enclaves provide a place to store secrets and process data with those secrets (eg, DRM software). SGX implementations have existed on desktop processors for several years. The upcoming 3rd Generation Intel Xeon Scalable Platform, code-named “Ice Lake” will also support SGX.
Recommended LWN article: SGX: when 20 patch versions aren't enough
1.4. Support of new AMD, Intel graphics harware
As part of their policy of providing good Linux support for their hardware, both AMD and Intel have added support for new hardware: AMD has added support for a few new variants (Vangogh, Green Sardine, Dimgrey Cavefish), and Intel has provided better support for DG1.
1.5. Faster performance and better data recover in Btrfs
This release adds a few changes that should improve Btrfs performance in many different areas. First, Btrfs replaced the locking primitive used in the core b-tree implementation. A homegrown locking scheme had been used, but now it uses the standard Linux read-write semaphores; this results in much better performance for highly concurrent workloads. There are also a few changes that significantly improve the throughput/latency of dbench-like workloads.
Aditionally, this release implements new data recovery mount options for people with corrupted file systems. rescue=ignoredatacsums, which ignores faileddata checksums, rescue=ignorebadroots, which attempts to continue mounting the file system in read-only mode even if there are corrupted tree roots, and for convenience a new rescue=all option has been added, which enables 'ignorebadroots', 'ignoredatacsums' and 'nologreplay' at the same time.
1.6. NFS re-exporting support
This release makes NFS re-exporting (exporting a NFS mount via NFS) a first-class feature. This would enable the Linux in-kernel NFS server to be used as an intermediate cache for a remotely-located primary NFS server, for example, even with other NFS server implementations, like a NetApp filer, as the primary. The main interest is in allowing NFSv4.2 (particularly with pnfs) to be reexported via NFSv3.
1.7. Add epoll_pwait2(2) syscall for higher resolution waits
Add epoll_pwait2(2), an epoll_wait(2) variant with nsec resolution that replaces int timeout with struct timespec. It is equivalent otherwise. Use cases such as datacenter networking operate on timescales well below milliseconds. Shorter timeouts bounds their tail latency.
Recommended LWN article: epoll_pwait2(), close_range(), and encoded I/O
1.8. Faster memory leak debugging in ARM
The Linux kernel contains KASAN, a dynamic memory error detector that provides a fast and comprehensive solution for finding use-after-free and out-of-bounds bugs. A more performant and less memory hungry version, software tag-based KASAN, was added in Linux 5.0 for ARM 64 CPUs.
This release implements hardware tag-based KASAN for ARM 64. It relies on arm64 Memory Tagging Extension introduced in ARMv8.5 to perform memory and pointer tagging (instead of shadow memory and compiler instrumentation). While it doesn't removes all the overhead of KASAN, it is significantly faster and memory thrifty than the existing versions, which makes the discovery of memory errors easier.
Recommended LWN article: The Arm64 memory tagging extension in Linux
2. Core (various)
inotify: Increase default inotify.max_user_watches limit to 1048576 commit
locking/rwsem: Rework reader optimistic spinning commit, commit, commit, commit
reboot: allow to specify reboot mode via sysfs commit
(FEATURED) Syscall User Dispatch, a mechanism to quickly disable/enable syscall handling for a specific process and redirect to userspace via SIGSYS commit, commit, commit, commit, commit, commit, commit
proc: Similar to speculation store bypass, show information about the indirect branch speculation mode of a task in /proc/$pid/status commit
Add epoll_pwait2(2) syscall that enables nanosecond timeouts for epoll. Analogous to pselect and ppoll, introduce an epoll_wait syscall variant that takes a struct timespec instead of int timeout commit, commit, commit, commit
- Task scheduler
- Signals
Replace the inefficient signal delivery mode of task work and results in an impressive performance improvement for io_uring commit, commit, commit, commit
Architectures that support address tagging, such as arm64, may want to expose fault address tag bits to the signal handler to help diagnose memory errors. However, these bits have not been previously set, and their presence may confuse unaware user applications. Therefore, introduce a SA_EXPOSE_TAGBITS flag bit in sa_flags that a signal handler may use to explicitly request that the bits are set commit, commit
Define a sa_flags bit which will never be supported in the uapi. The purpose of this flag bit is to allow userspace to distinguish an old kernel that does not clear unknown sa_flags bits from a kernel that supports every flag bit commit, commit, commit, commit
seccomp: Add bitmap cache of constant allow filter results commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- userfaultfd
Add user-mode only option to unprivileged_userfaultfd sysctl knob. When the knob is set to 0, it allows unprivileged users to call userfaultfd, like when it is set to 1, but with the restriction that page faults from only user-mode can be handled. In this mode, an unprivileged user (without SYS_CAP_PTRACE capability) must pass UFFD_USER_MODE_ONLY to userfaultd or the API will fail with EPERM. Recommended LWN article. commit, commit
- io_uring
Allow non-fixed files with SQPOLL commit
Allow SQPOLL with CAP_SYS_NICE privileges commit
Add support for IORING_OP_RENAMEAT commit, commit and IORING_OP_UNLINKAT commit
Add timeout update. Timeout update is a IORING_OP_TIMEOUT_REMOVE request with timeout_flags containing a new IORING_TIMEOUT_UPDATE flag commit, commit
Add timeout support for io_uring_enter(). The big win here is that it allows setups that split SQ and CQ handling into separate threads to avoid locking commit
Add support for shutdown(2), useful for sockets commit
close_range(2): add flag CLOSE_RANGE_CLOEXEC. It sets the close-on-exec bit for the file descriptors instead of close()-ing them commit
fscrypt: Allow deleting files with unsupported encryption policy commit, commit, commit, commit, commit, commit, commit, commit, commit
iommu: Add support to change default domain of commit, commit, commit, commit * Add auxiliary bus support commit
console: Use ttynull when no console is available or wanted commit, commit
Fortify strscpy(): New fortified version ensures there is no read or write overflow commit, commit, commit, commit
kunit: Support for Parameterized Testing commit
binder: add flag to clear buffer on txn complete commit
scripts: get_feat.pl: add a script to handle Documentation/features commit
PCI: Add sysfs attribute for device power state commit
gcc-plugins: remove code for GCC versions older than 4.9 commit
3. File systems
- BTRFS
(FEATURED) Switch homegrown locking used for the buffer tree implementation to a standard Linux rw_semaphore. Performance in highly contended scenarios seems to be much better in general, much better (tens of percent gains) for some commit, commit
(FEATURED) Performance improvements for dbench alike workloads commit, commit, commit, commit, commit, commit
(FEATURED) Introduce rescue mount option rescue=ignoredatacsums, which ignores data checksums failures (these can actually happen when an application modifies a buffer in-flight when doing an O_DIRECT write) commit
(FEATURED) Introduce rescue mount option rescue=ignorebadroots. It attempts to make read-only mount possible when failing to read corrupted tree roots commit
(FEATURED) Introduce mount option rescue=all, which enables 'ignorebadroots' + 'ignoredatacsums' + 'nologreplay' at the same time commit
sysfs: export filesystem generation commit
sysfs: export supported rescue= mount options commit
Export read mirror policy settings to sysfs (policies to be added in the future) commit, commit
Update the number of bytes used by an inode atomically to avoid wrong stat() reporting commit
(FEATURED) Perf: btrfs: skip unnecessary searches for xattrs when logging an inode (+10.8 dbench throughput/-8.2 latency) commit
(FEATURED) Perf: unlock path before checking if extent is shared during nocow writeback (+5.0 dbench throughput/-20.5 latency), on fio load +9.7% throughput/-9.8% runtime commit
(FEATURED) Perf: stop incrementing log batch when joining log transaction (+12.7 dbench throughput/-8.2 latency) commit
Show rescue=usebackuproot in /proc/mounts commit
Free space cache (v1) is loaded asynchronously commit, commit
Remove inode number cache feature commit
- CIFS
Add SYSTEM_SECURITY access flag and use with smb2 when opening files for getting/setting SACLs. Add "system.cifs_ntsd_full" extended attribute to allow user-space access to the functionality. Avoid multiple server calls when setting owner, DACL, and SACL. Add support for getting and setting SACLs commit, commit
Enable sticky bit with cifsacl mount option commit
Witness protocol support for transparent failover commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- F2FS
Introduce max_io_bytes, a sysfs entry, to limit bio size commit
Add F2FS_IOC_DECOMPRESS_FILE and F2FS_IOC_COMPRESS_FILE to decompress/compress explicitly the compression enabled file in compress_mode=user mount option commit
Add F2FS_IOC_GET_COMPRESS_OPTION and F2FS_IOC_SET_COMPRESS_OPTION ioctls commit, commit
Add support for Encryption and Casefolding commit, commit, commit
Add compress_chksum, which stores chksum value with compressed data, and verify the integrality of compressed data while reading the data commit
Add compress_mode mount option to control file compression mode commit
- FUSE
- NFS
(FEATURED) Allow NFS filesystems to be reexported. The main interest is in allowing NFSv4.2 (particularly with pnfs) to be reexported via NFSv3 commit, commit, commit, commit, commit, commit
Readdir enhancements: Add support for 1MB readdir RPC calls on-the-wire, modify caching code to ensure that we cache the entire contents of that 1MB call. For filesystems that use ordered readdir cookie schemes (e.g. XFS), it optimises searching for cookies in the client's page cache. Finally, improve scalability when dealing with very large directories by turning off caching when those directories are changing commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Implement support for multiple RPC/RDMA chunks per RPC transaction commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit * NOTIFY
- CEPH
- OVERLAYFS
(FEATURED) Unprivileged mounts commit
Introduce new uuid=off option for inodes index feature. It can be used to replace UUID of the underlying filesystem in file handles with null, and effectively disable UUID checks. This can be useful in case the underlying disk is copied and the UUID of this copy is changed. This is only applicable if all lower/upper/work directories are on the same filesystem, otherwise it will fallback to normal behaviour commit
Add the -o userxattr mount option forces overlayfs to use the "user.overlay." xattr namespace instead of "trusted.overlay.". This is useful for unprivileged mounting of overlayfs commit
- XFS
4. Memory management
Speed up mremap on large regions commit, commit, commit, commit
Batch memory allocations and copies in generic_file_buffered_read commit, commit
highmem: Preemptible variant of kmap_atomic & friends commit, commit, commit, commit, commit, commit, commit
Per memcg lru lock commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
memcg: deprecate cgroup v1 non-hierarchical mode commit, commit, commit
Add file_thp, shmem_thp to memory.stat commit
Speed up mremap on large regions commit, commit, commit, commit
zram: add stat to gather incompressible pages since zram set up commit
Remove CONFIG_PAGE_POISONING_NO_SANITY commit and CONFIG_PAGE_POISONING_ZERO commit
zswap: move to use crypto_acomp API for hardware acceleration commit
Disable pcplists during memory offline commit, commit, commit, commit, commit, commit, commit
kasan: boot parameters for hardware tag-based mode commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
5. Block layer
null_blk: Allow controlling max_hw_sectors limit to allow configuring the maximum size of a command issued commit
block/rnbd-clt: support mapping two devices with the same name from different servers commit
dm verity: Add support for signature verification with 2nd keyring commit
dm mpath: Add a path selector that selects paths based on a CPU to path mapping the user passes in and what CPU we are executing on commit
6. Tracing, perf and BPF
- BPF
Switch to memcg-based memory accounting (instead of memlock) commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Support BTF-powered BPF tracing programs for kernel modules commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add the page size in the perf record commit, commit, commit, commit
Implement bpf_ima_inode_hash, a BPF helper for getting the IMA hash of an inode commit, commit, commit * tools/bpftool: Add bpftool support for split BTF commit
Add BTF generation for kernel modules using a compact split BTF approach commit, commit, commit, commit, commit
Expose bpf_{s,g}etsockopt helpers to bind{4,6} hooks commit, commit, commit
Add bpf_bprm_opts_set helper, which allows modification of certain bits on the linux_binprm struct starting with the secureexec bit which can be updated using the BPF_F_BPRM_SECUREEXEC flag commit
Add bpf_ktime_get_coarse_ns helper. It uses CLOCK_MONOTONIC_COARSE source of time that is less accurate but more performant commit
Add a bpf_sock_from_file helper which can convert the void private_data pointer to a struct socket BTF pointer commit
Update the set of sleepable hooks with the ones that do not trigger a warning with might_fault() when exercised with the correct kernel config options enabled. This means that a sleepable LSM eBPF prorgam can be attached to these LSM hooks commit, commit
Implement bpf_local_storage for task_struct commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for setting window clamp commit
Allow the FENTRY/FEXIT/RAW_TP tracing program to use bpf_sk_storage commit, commit, commit, commit
bpftool: Add {i,d}tlb_misses support for bpftool profile commit
libbpf: add support for generating and deduplicating split BTF. This is an enhancement to the BTF, which allows to designate one BTF as the "base BTF" (e.g., vmlinux BTF), and one or more other BTFs as "split BTF" (e.g., kernel module BTF), which are building upon and extending base BTF with extra types and strings commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- perf
pmu-events: Support event aliasing for system PMUs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mem/c2c: Support AUX trace commit, commit, commit, commit, commit, commit, commit, commit, commit
stat: Add --quiet option commit
stat: Support regex pattern in --for-each-cgroup commit
7. Networking
Introduce preferred busy-polling: The existing busy-polling mode, enabled by the SO_BUSY_POLL socket option or the system-wide /proc/sys/net/core/busy_read knob, is opportunistic, when the busy-polling budget is exceeded, the NAPI will be scheduled onto the regular softirq handling. Some applications prefer that most NAPI processing would be done by busy-polling; this release implements such functionality with a new socket option, SO_PREFER_BUSY_POLL commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
IPv6: Add support for the SRv6 End.DT4 and End.DT6 (VRF mode) behavior. The SRv6 End.DT4 behavior is used to implement multi-tenant IPv4 L3 VPNs. It decapsulates the received packets and performs IPv4 routing lookup in the routing table of the tenant. The SRv6 End.DT4 Linux implementation leverages a VRF device in order to force the routing lookup into the associated routing table. The SRv6 End.DT4 behavior is defined in the SRv6 Network Programming commit, commit, commit, commit, commit, commit, commit, commit
IP: Add an IPv6/IPv4 route encapsulation attribute to the result of netlink RTM_GETROUTE requests commit, commit
- batman-adv
- brige
Add support for Connectivity Fault Management(CFM), defined in 802.1Q section 12.14. Connectivity Fault Management (CFM) comprises capabilities for detecting, verifying, and isolating connectivity failures in Virtual Bridged Networks. These capabilities can be used in networks operated by multiple independent organizations, each with restricted management access to each other’s equipment commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
mrp: Implement LC mode for MRP commit
mcast: add support for raw L2 multicast groups commit
- can
x25: netdev event handling commit, commit, commit, commit, commit
macvlan: Support for high multicast packet rate commit
- * Multi-path TCP
Add port parameter to ADD_ADDR option, used to announce available IP addresses that a peer may connect to when adding more TCP subflows to an existing MPTCP connection commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add a new sysctl add_addr_timeout commit
net-zerocopy: Performance optimizations for TCP Recv. Zerocopy commit, commit, commit, commit, commit, commit, commit, commit
- Netfilter
nftables: generalize set expressions support commit, commit, commit, commit
ctnetlink: add timeout and protoinfo to destroy events commit
ipset: Add bucketsize parameter to all hash types commit
ipset: Expose the initval hash parameter to userspace commit
ipset: Support the -exist flag with the destroy command commit
nexthop: Add support for nexthop objects offload commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
packet protocol: make packet_fanout.arr size configurable up to 64K commit
ppp: add PPPIOCBRIDGECHAN and PPPIOCUNBRIDGECHAN ioctls. This new ioctl pair allows two ppp channels to be bridged together: frames arriving in one channel are transmitted in the other channel and vice versa. The practical use for this is primarily to support the L2TP Access Concentrator use-case. The end-user session is presented as a ppp channel (typically PPPoE, although it could be e.g. PPPoA, or even PPP over a serial link) and is switched into a PPPoL2TP session for transmission to the LNS. At the LNS the PPP session is terminated in the ISP's network commit
rfkill: add a reason to the HW rfkill state commit
rxrpc: Prelude to gssapi support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
smc: Add support for generic netlink API commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
TLS: Add CHACHA20-POLY1305 cipher to Kernel TLS commit, commit, commit, commit, commit
UDP: introduce UDP_MIB_MEMERRORS to report memory allocation errors commit
SCTP: Implement RFC6951: UDP Encapsulation of SCTP commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- 802.11 (Wireless)
Add common API to configure SAR power limitations commit
Add support to calculate and report 4096-QAM HE rates commit
Add support to configure SAE PWE value to drivers commit
Add support to configure HE MCS for beacon rate commit
Remove WDS mode commit, commit, commit, commit, commit, commit, commit, commit
XDP: introduce bulking for page_pool tx return path to optimize I-cache and D-cache commit, commit, commit, commit, commit
- Bluetooth
8. Architectures
8.1. ARM
New supported SoCs
MStar Infinity2M, a low-end IP camera chip based on a dual-core Cortex-A7, otherwise similar to the Infinity chip we already support. This is also known as the SigmaStar SSD202D, and we add support for the Honestar ssd201htv2 development kit commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Nuvoton NPCM730, a Cortex-A9 based Baseboard Management Controller (BMC), in the same family as the NPCM750. This gets used in the Ampere Altra based "Fii Kudo" server, the Quanta GSJ, and Qanta Olympus RunBMC commit, commit, commit, commit, commit
Broadcom BCM4908, a 64-bit home router chip based on Broadcom's own Brahma-B53 CPU. Support is also added for the Asus ROG Rapture GT-AC5300 high-end WiFi router based on this chip commit
Mediatek MT8192 is a new SoC based on eight Cortex-A76/A55 cores, meant for faster Chromebooks and tablets. It gets added along with its reference design commit
Mediatek MT6779 (Helio P90) is a high-end phone chip from last year's generation, also added along with its reference board. This one is still based on Cortex-A75/A55 commit
Mediatek MT8167 is a version of the already supported MT8516 chip, both based on Cortex-A35. It gets added along with the "Pumpkin" single board computer, but is likely to also make its way into low-end tablets in the future commit, commit
New boards for already supported SoCs
Three new Mikrotik router variants based on Marvell Prestera 98DX3236, a close relative of the more common Armada XP commit, commit, commit
A reference board for the Marvell Armada 382 commit
Three new servers using ASpeed baseboard management controllers, the actual machines being from Bytedance, Facebook and IBM commit, commit, commit
The Galaxy Note 10.1 (P4) tablet, using an Exynos 4412 commit
- The usual set of 32-bit i.MX industrial/embedded hardware
- New Allwinner SoC based single-board computers
DH electronics STM32MP157C DHCOM, a PicoITX carrier board for the aleady supported DHCOM module commit
Ouya Game Console based on Nvidia Tegra 3 commit
Version 5 of the already supported Zynq Z-Turn MYIR Board commit
LX2162AQDS, a reference platform for NXP Layerscape LX2162A, which is a repackaged 16-core LX2160A commit
A series of Kontron i.MX8M Mini baseboard/SoM versions commit
Espressobin Ultra, a new variant of the popular Armada 3700 based board commit
IEI Puzzle-M801, a rackmount network appliance based on Marvell Armada 8040 commit
Microsoft Lumia 950 XL (Cityman), a phone commit
HDK855 and HDK865 Hardware development kits for Qualcomm sm8250 and sm8150, respectively commit, commit
New board variants of the Renesas based "Kingfisher" and !"HiHope" reference boards commit
Kobol Helios64, an open source NAS appliance based on Rockchips RK3399 commit
Engicam PX30.Core, a SoM based on Rockchip PX30, along with a few carrier boards commit, commit, commit, commit, commit, commit, commit, commit
Remove ebsa110 platform commit
- perf
hisi: Add identifier sysfs file commit
Add PMU driver for the ARM DMC-620 memory controller commit
arm-spe: Add support for ARMv8.3-SPE commit
imx_ddr: Add stop event counters support for i.MX8MP commit
imx_ddr: Add system PMU identifier for userspace commit
smmuv3: Support sysfs identifier file commit
soc/litex: add LiteX SoC Controller driver commit
interconnect: Add generic interconnect driver for Exynos SoCs commit
- ARM 64
(FEATURED) Add hardware tag-based mode to KASAN commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Condition Energy Aware Scheduling (EAS) enablement on a frequency invariant system commit, commit, commit
Add support for CPPC's delivered and reference performance counters through the FFH methods by using the AMU equivalent core and constant cycle counters commit, commit, commit
- KVM
perf kvm: Add kvm-stat for arm64 commit
Expose CSV3 to guests on running on Meltdown-safe HW commit, commit
Opt-in always-on nVHE hypervisor. Allow the hypervisor to install itself on newly booted CPUs before the host is allowed to run on them commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
8.2. X86
Intel Platform Monitoring Technology, an architecture for enumerating and accessing hardware monitoring capabilities commit, commit, commit, commit, commit
(FEATURED) Support for Intel SGX foundations, a new hardware functionality that can be used by applications to populate protected regions of user code and data called enclaves. Once activated, the new hardware protects enclave code and data from outside access and modification. SGX implementations have existed on desktop processors for several years. The upcoming 3rd Generation Intel Xeon Scalable Platform, code-named “Ice Lake” will also support SGX commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Calculate frequency invariance for AMD systems. This is the first pass in creating the ability to calculate the frequency invariance on AMD systems. This approach uses the CPPC highest performance and nominal performance values that range from 0 - 255 instead of a high and base frequency commit
intel_idle: add SnowRidge C-state table commit
intel_th: Add Alder Lake-P support commit
powercap: Enable RAPL for AMD Fam17h and Fam19h commit, commit, commit, commit
perf: Add Rocket Lake CPU support commit, commit, commit, commit
perf vendor events: Update Skylake client events to v50 commit
Introduce AVX512_FP16 feature and expose it to KVM CPUID for processors that support it commit, commit
- Platforms
mellanox: mlxbf-pmc: Add Mellanox BlueField PMC driver commit
surface: gpe: Add support for 15" Intel version of Surface Laptop 3 commit
Introduce support for Systems Management Driver over WMI for Dell Systems commit
acer-wmi: Add new force_caps module parameter commit
amd-pmc: Add AMD platform support for S2Idle commit
asus-wmi: Add userspace notification for performance mode change commit
intel-hid: add Rocket Lake ACPI device ID commit
intel-vbtn: Support for tablet mode on Dell Inspiron 7352 commit
intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC commit
panasonic-laptop: Add support for battery charging threshold (eco mode) commit
panasonic-laptop: Add support for optical driver power in Y and W series commit
panasonic-laptop: Add sysfs attributes for firmware brightness registers commit
panasonic-laptop: Add write support to mute commit
thinkpad_acpi: Add palm sensor 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
Add uv_sysfs platform driver to gather topology information from UV systems and expose that information via a sysfs interface at /sys/firmware/sgi_uv/ commit, commit, commit, commit, commit, commit, commit, commit
classmate-laptop: add WiFi media button commit
Do not allow writes to MSR_IA32_ENERGY_PERF_BIAS commit
- KVM
Add support for running SEV-ES guests under KVM. Secure Encrypted Virtualization - Encrypted State (SEV-ES) expands on the SEV support to protect the guest register state from the hypervisor commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
hyper-v: make KVM_GET_SUPPORTED_HV_CPUID more useful commit
8.3. MIPS
Enable GCOV commit
Ingenic: Add missing nodes for Ingenic SoCs and boards commit
Loongson64: Add /sys/firmware/lefi/boardinfo commit
Loongson64: Add KASLR support commit
Loongson64: Add Mail_Send support for 3A4000+ CPU commit
Add support for more mscc SoCs: Luton, Serval and Jaguar2 commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for self-extracting FIT images (vmlinuz.itb) commit
8.4. S390
Add arch_get_random_long() support commit
Add debug user asce support commit
Add support to allocate gigantic hugepages using CMA commit
Extend default vmalloc area size to 512GB commit
sclp: provide extended sccb support commit
DASD FC endpoint security commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
8.5. POWERPC
Add "-z rodynamic" when using LLD commit
Add "-z notext" flag to disable diagnostic commit
Add emulation for VSX 32-byte vector paired load/store instructions commit, commit, commit, commit, commit
8.6. RISCV
8.7. ALPHA
Switch from DISCONTIGMEM to SPARSEMEM commit
8.8. OPENRISC
Add support for LiteX commit
8.9. PARISC
Make user stack size configurable commit
9. Drivers
9.1. Graphics
Introduce drm scaling filter property commit, commit, commit, commit
Support GEM object mappings from I/O memory to speed up the framebuffer in some architectures commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
- amdgpu
(FEATURED) Initial Vangogh 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
(FEATURED) Green Sardine support commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Dimgrey Cavefish 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
Add device ID for navy_flounder commit
Add new device id for Renior commit
Scatter/Gather display support for display buffers in renoir commit
gfx9+ modiifier support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add vcn dec software ring support commit, commit, commit, commit, commit
Enable freesync for A+A configs commit
Add debugfs entry for printing VM info commit
Add module parameter choose PX runtime method commit
Add xgmi perfmons for arcturus commit
- radeon
- Intel
Asynchronous flip implementation commit, commit, commit, commit, commit, commit, commit, commit
(FEATURED) Introduce support for DG1, a gen12 dgfx platform commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
bigjoiner support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Enable eLLC caching of display buffers for SKL+ commit
Add more PCI ids commit
Add SKL GT1.5 PCI IDs commit
Add support for LTTPR non-transparent link training mode commit, commit, commit, commit, commit
- msm
- ast
- aspeed
sysfs output config support commit
- gma500
- exynos
New HDMI mode support commit
- mediatek
- etnaviv
Add total hi bandwidth perfcounter commit
- hibmc
- ingenic
- bridge
Add support for lontium LT9611UXC bridge commit
- vkms
fbdev emulation support commit
- panel
fbcon: Disable accelerated scrolling, it's full of bugs commit
fourcc: Add AXBXGXRX106106106106 format commit
kmb: Add support for KeemBay DRM driver commit, commit, commit, commit
- mcde
9.2. Power Management
cpuidle: Select polling interval based on a c-state with a longer target residency commit
psci: Enable s2idle when using PSCI OSI commit, commit, commit
ACPICA: Add 5 new UUIDs to the known UUID table commit
pm-graph v5.8 commit
- thermal
int340x: processor_thermal: Add AlderLake PCI device id commit
int340x: processor_thermal: Add RFIM driver commit
int340x: processor_thermal: Add mailbox driver commit
rcar_gen3_thermal: Add r8a779a0 support commit
intel_pch_thermal: Add PCI ids for Lewisburg PCH commit
amlogic: Add hwmon support commit
int340x: Support Alder Lake commit
9.3. Storage
- SCSI
ibmvfc: Protocol definition updates and new targetWWPN Support commit, commit, commit, commit, commit, commit
ufs: Add some proprietary features in MediaTek UFS platforms commit, commit, commit, commit, commit, commit
SAN Congestion Management (SCM) statistics commit, commit, commit, commit, commit
arcmsr: Configure the default command timeout value commit
mpt3sas: Add module parameter multipath_on_hba commit
ufs: Add DeepSleep feature commit
lpfc: Add FDMI Vendor MIB support commit
nvme-fcloop: add sysfs attribute to inject command drop commit
nvmet: add configfs passthru admin timeout value attr commit
nvmet: add configfs passthru io timeout value attr commit
nvme-fabrics: reject I/O to offline device commit
9.4. Drivers in the Staging area
media: cedrus: Add support for R40 commit
media: cedrus: Add support for V3s commit
media: cedrus: Add support for VP8 decoding commit
media: cedrus: h264: Support profile controls commit
media: rkvdec: h264: Support profile and level controls commit
media: rockchip: rkisp1: destage Rockchip ISP1 driver commit
pinctrl: ralink: add a pinctrl driver for the rt2880 family commit
dpaa2-switch: export the 'no buffer' counter in ethtool commit
mt7621-pci-phy: remove driver from staging commit
wimax: move out to staging commit
ion: remove from the tree commit
Retire drivers/staging/goldfish commit
9.5. Networking
Add mhi-net driver commit
- Bluetooth
btqca: Use NVM files based on SoC ID for WCN3991 commit
btusb: Add support for 1358:c123 Realtek 8822CE device commit
btusb: Add support for 13d3:3560 MediaTek MT7615E device commit
btusb: Support 0bda:c123 Realtek 8822CE device commit
btusb: btrtl: Add support for RTL8852A commit
btusb: support download nvm with different board id for wcn6855 commit
hci_h5: Add OBDA0623 ACPI HID commit
- Infiniband
- RDMA
- ath10k
- ath11k
- can
Add len8_dlc support for esd_usb2 CAN adapter commit
Add len8_dlc support for various CAN adapters commit
kvaser_usb: Add new Kvaser Leaf v2 devices commit
kvaser_usb: Add new Kvaser hydra devices commit
kvaser_usb: kvaser_usb_hydra: Add support for new device variant commit
m_can: add PCI glue driver for Intel Elkhart Lake commit
mcp251xfd: Add support for internal loopback mode commit
cdc_ether: added support for Thales Cinterion PLSx3 modem family commit
cxgb4: Add new T6 PCI device id 0x6092 commit
dpaa_eth: add XDP support commit, commit, commit, commit, commit, commit, commit
- dsa
e1000e: Export S0ix flags to ethtool commit
ena: XDP Redirect implementation for ENA driver commit, commit, commit, commit, commit, commit, commit, commit, commit
ti: am65-cpsw: add multi port support in mac-only mode commit
- hns3
Add support for tc mqprio offload, hw tc offload of tc flower, and adpation for max rss size commit, commit, commit, commit, commit, commit, commit
Support an extended promiscuous command which makes promiscuous configuration more flexible, and add ethtool private flags to control whether enable tx unicast promisc commit, commit, commit
- Add support for 1280 queues and add support to query firmware's calculated shaping parameters
Add support for QL and add support for 1us unit GL commit, commit, commit, commit
Add support for multiple TCs' MAC pause mode commit, commit, commit, commit, commit, commit, commit
i40e: Tx performance improvements commit, commit, commit, commit, commit
ibmvnic: Performance improvements and other updates commit, commit, commit, commit, commit, commit, commit, commit, commit
igc: Add new device ID commit
ionic: add lif quiesce commit
- ipa
- iwlwifi
- macb
- mlxsw
Add support for 802.1ad bridging commit, commit, commit, commit, commit, commit, commit, commit, commit
Introduce initial XM router support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for Q-in-VNI commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for blackhole nexthops commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add support for nexthop objects commit, commit, commit, commit, commit, commit, commit, commit
mscc: ocelot: support L2 multicast entries commit
- mt76
mt7915: add 802.11 encap offload support commit, commit, commit, commit, commit, commit, commit, commit
mt7603: add additional EEPROM chip ID commit
mt7615: enable beacon filtering by default for offload fw commit
mt7615: introduce quota debugfs node for mt7663s commit
mt7615: support 16 interfaces commit
mt7663s: introduce WoW support via GPIO commit
mt7915: implement testmode rx support commit and testmode tx support commit
mlx5e: add support for port TX timestamping, for better PTP accuracy commit, commit, commit, commit, commit, commit, commit, commit, commit
usb/r8153_ecm: support ECM mode for RTL8153 commit
netdevsim: add ethtool coalesce and ring settings commit, commit, commit, commit, commit, commit
- nfc
- octeontx2-af
Support for OcteonTx2 98xx silicon commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
Add devlink and devlink health reporters NPa and NIX blocks commit, commit, commit
Add support for RSS hashing based on Transport protocol field commit
Add Support for Marvell OcteonTX2 Cryptographic commit, commit, commit
Add ethtool ntuple filters support commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
phy: adin: implement cable-test support commit
phy: mscc: Add PTP support for 2 more VSC PHYs commit
phy: realtek: Add support for RTL8221B-CG series commit
qmi_wwan: add Quectel EM160R-GL commit
r8152: Add Lenovo Powered USB-C Travel Hub commit
rtw88: coex: enhance coex performance and synchronize coex code commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
rtw88: coex: add the mechanism for RF4CE commit
sfc: implement encap TSO on EF100 commit
sfc: support GRE TSO on EF100 commit
stmmac: intel: Add PCI IDs for TGL-H platform commit
wcn36xx: Enable firmware link monitoring commit
wilc1000: added WMM support commit, commit, commit, commit, commit
x25_asy: Delete the x25_asy driver commit
Remove am79c961a driver commit
Delete the DLCI / SDLA drivers commit
9.6. Audio
- HDA
conexant: add a new hda codec CX11970 commit
realtek: Add supported for more Lenovo ALC285 Headset Button commit
realtek: Enable headset mic of ASUS X430UN with ALC256 commit
realtek: Add two "Intel Reference board" SSID in the ALC256 commit
realtek: Enable headset of ASUS B1400CEPE with ALC256 commit
Add AlderLake-P PCI ID and HDMI codec vid commit
Add Cometlake-R PCI ID commit
intel-dsp-config: add PCI id for TGL-H commit
- usb-audio
- ASoC
SOF: Add memory_info file to debugfs commit
SOF: Intel: add SoundWire support for ADL-S commit
SOF: Intel: initial support for !Alderlake-S commit
Add ADAU1372 audio CODEC support commit
Intel: catpt: add dynamic selection of DSP driver commit
Intel: common: add ACPI matching tables for Alder Lake commit
amd: support other audio modes for raven commit
audio-graph: Support empty Codec endpoint commit
codecs: add support for LPASS Codec macros commit, commit, commit, commit, commit, commit
fsl-asoc-card: Add support for si476x codec commit
fsl: Add imx-hdmi machine driver commit
fsl_aud2htx: Add aud2htx module driver commit
fsl_spdif: Add support for higher sample rates commit
fsl_spdif: Add support for i.MX8QM platform commit
fsl_xcvr: Add XCVR ASoC CPU DAI driver commit
hdmi-codec: Add RX support commit
intel: sof_rt5682: Add support for cml_rt1015_rt5682 commit
intel: sof_rt5682: Add support for tgl_rt1011_rt5682 commit
Mediatek: Add support for MT8192 SoC commit, commit, commit, commit, commit, commit, commit, commit, commit
mediatek: mt8192: support rt1015p_rt5682 commit
mx27vis-aic32x4: Remove unused driver commit
nau8315: add codec driver commit
pcm512x: Add support for more data formats commit
phycore-ac97: Remove unused driver commit
Support SC7180 sound card variation without headset commit, commit
qcom: sm8250: add sound card qrb5165-rb5 support commit
sun4i-i2s: Add support for H6 I2S commit
sun8i-codec: Add the AIF2 DAI, widgets, and routes commit
sun8i-codec: Add the AIF3 DAI, widgets, and routes commit
wm1133-ev1: Remove unused driver commit
imx-mc13783: Remove unused driver commit
imx-ssi: Remove unused driver commit
9.7. Tablets, touch screens, keyboards, mouses
Support inhibiting input devices. Userspace might want to implement a policy to temporarily disregard input from certain devices. An example use case is a convertible laptop, whose keyboard can be folded under the screen to create tablet-like experience. The user then must hold the laptop in such a way that it is difficult to avoid pressing the keyboard keys commit, commit, commit, commit, commit
Add driver for power button on Dell Wyse 3020 commit
Add support for Goodix GT9286 chip commit
atmel_mxt_ts: support regulator supplies commit
ektf2127: add support for eKTF2132 touchscreen commit
elan_i2c: add new trackpoint report type 0x5F commit
Implement pressure reporting for ILI251x commit
New da7280 haptic driver commit
sc27xx: add support for sc2730 and sc2721 commit
st1232: add support resolution reading commit
gtco: remove driver commit
- HID
multitouch: Enable multi-input for Synaptics pointstick/touchpad device commit
logitech-dj: add the G602 receiver commit
logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode commit
logitech-hidpp: Add hid_device_id for V470 bluetooth mouse commit
asus: Add support for ASUS N-Key keyboard commit
elecom: add support for EX-G M-XGL20DLBK wireless mouse commit
mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter commit
sony: support for ghlive ps3/wii u dongles commit
ite: Add support for Acer S1002 keyboard-dock commit
i2c-hid: add Vero K147 to descriptor override commit
SFH: Add Support for AMD Sensor Fusion Hub commit, commit, commit, commit
9.8. TV tuners, webcams, video capturers
camss: support for the entire camera subsystem found in SDM630/636/660 and SDA variants, including CSIPHY 3-Phase, CSID v5.0, ISPIF 3.0 and VFE 4.8 commit, commit, commit, commit, commit, commit
ccs-pll: Support additional CCS PLL features, C-PHY commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
css: Trivial MIPI CCS 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
coda: Add a V4L2 user for control error macroblocks count commit
Stateless H.264 de-staging commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
dvb-usb: Add Hauppauge MAX S2's USB-IDs commit
i2c: Add ov9734 image sensor driver commit
i2c: add OV02A10 image sensor driver commit
i2c: ov772x: Add support for BT.656 mode commit
imx274: add support for sensor mode6, 1280x540 commit
meson: Add M2M driver for the Amlogic GE2D Accelerator Unit commit
ov5640: add support of 160x120 resolution commit
rc: add keymap for KHAMSIN remote commit
rc: add keymap for pine64 remote commit
smiapp: Use MIPI CCS version and manufacturer ID information commit
stm32-dcmi: add 8-bit Bayer formats support commit
stm32-dcmi: add support of BT656 bus commit
uapi: add MEDIA_BUS_FMT_METADATA_FIXED media bus format commit
vicodec: mark the stateless FWHT API as stable commit
9.9. Universal Serial Bus
- Thunderbolt
Add driver for USB signal re-mapper commit
serial: cp210x: add new VID/PID for supporting Teraoka AD2000 commit
serial: cp210x: add pid/vid for WSDA-200-USB commit
serial: option: Adding support for Cinterion MV31 commit
serial: option: add LongSung M5710 module support commit
serial: option: add Quectel EM160R-GL commit
serial: option: add interface-number sanity check to flag handling commit
typec: Add number of altmodes partner attribute commit
typec: Add plug num_altmodes sysfs attribute commit
typec: Add type sysfs attribute file for partners commit
typec: Expose Product Type VDOs via sysfs commit
typec: tcpci: Add support to report vSafe0V commit
typec: TCPM support for FRS and AutoDischarge Disconnect commit, commit, commit, commit, commit, commit, commit
qmi_wwan: Adding support for Cinterion MV31 commit
gadget: fsl_mxc_udc: Remove the driver commit
ehci-mxc: Remove the driver commit
imx21-hcd: Remove the driver commit
9.10. Serial Peripheral Interface (SPI)
dw: Add support for 32-bits max xfer size commit
dw: Add support for the Canaan K210 SoC SPI commit
pxa2xx: Add support for Intel Alder Lake PCH-S commit
rockchip: enable autosuspend feature commit
spi-mtk-nor: add axi clock control for MT8192 spi-nor commit
spi-sun6i: enable autosuspend feature commit
spi-sun6i: implement DMA-based transfer mode commit
9.11. Watchdog
Remove pnx83xx driver commit
9.12. Serial
serial: add LiteUART driver commit
tty: Remove redundant synclink driver commit
tty: Remove redundant synclinkmp driver commit
tty: serial: remove pnx8xxx uart driver commit
9.13. CPU Frequency scaling
cpufreq: Allow drivers to receive more information from the governor commit, commit, commit
mediatek: Add support for mt8167 commit
arm_scmi: Discover the power scale in performance protocol commit
cppc_cpufreq: expose information on frequency domains commit
9.14. Device Voltage and Frequency Scaling
9.15. Voltage, current regulators, power capping, power supply
power: reset: ocelot: Add support 2 other MIPS based SoCs commit
- regulator
Add NXP PF8X00 regulator driver commit
Add support for DA9121 regulator commit
add SCMI driver commit
da9121: extend the DA9121 driver to add support for DA9130, DA9122, DA9131, DA9220, DA9132, DA9217. Also extend support to cover DT configured GPIO enable, current limit setting, and interrupt handling for all devices commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
fixed: support using power domain for enable/disable commit
mcp16502: add support for ramp delay commit
qcom-rpmh: Add support for PM8350/PM8350c commit
qcom-rpmh: Add support for SDX55 commit
9.16. Real Time Clock (RTC)
at91rm9200: add correction support commit
at91rm9200: Add sam9x60 compatible commit
rx6110: add i2c support commit
nvmem: remove nvram ABI commit
9.17. Pin Controllers (pinctrl)
ingenic: Add lcd-8bit group for JZ4770 commit
intel: Add Intel Alder Lake-S pin controller support commit
intel: Add Intel Elkhart Lake pin controller support commit
ocelot: Add support for Luton platforms commit
ocelot: Add support for Serval platforms commit
pinctrl-microchip-sgpio: Add irq support (for sparx5) commit
pinctrl-microchip-sgpio: Add pinctrl driver for Microsemi Serial GPIO commit
qcom-pmic-gpio: Add support for pmx55 commit
qcom: Add SDX55 pincontrol driver commit
qcom: Add sc7280 pinctrl driver commit
qcom: Add sm8250 lpass lpi pinctrl driver commit
qcom: add pinctrl driver for msm8953 commit
renesas: r8a7790: Add VIN1-B and VIN2-G pins, groups and functions commit
imx21: Remove the driver commit
9.18. Multi Media Card (MMC)
Initial support for SD express card/host commit
mediatek: Add subsys clock control for MT8192 msdc commit
mediatek: add HS400 enhanced strobe support commit
rtsx_pci: Add SD Express mode support for RTS5261 commit
sdhci-acpi: AMDI0040: Allow changing HS200/HS400 driver strength commit
sdhci-xenon: introduce ACPI support commit
9.19. Memory Technology Devices (MTD)
nand: ecc-hamming: Create the software Hamming engine commit
phram: Allow the user to set the erase page size commit
rawnand: Add NAND controller support on Intel LGM SoC commit
rawnand: qcom: Add NAND controller support for SDX55 commit
rawnand: qcom: Support for IPQ6018 QPIC NAND controller commit
rawnand: rockchip: NFC driver for RK3308, RK2928 and others commit
rawnand: sunxi: Add MDMA support commit
spi-nor: add support for DTR protocol commit
spinand: macronix: Add support for MX35LFxG24AD commit
spinand: macronix: Add support for MX35LFxGE4AD commit
spinand: micron: Add support for MT29F2G01AAAED commit
9.20. Industrial I/O (iio)
core: Add optional symbolic label to a device channel commit
accel: bmc150-accel: Add rudimentary regulator support commit
accel: bmc150-accel: Add support for BMA222 commit
adc: mt6360: Add ADC driver for MT6360 commit
dac: ad5686: add support for AD5338R commit
humidity: hts221: add vdd voltage regulator commit
imu: st_lsm6dsx: add support to LSM6DSOP commit
imu: st_lsm6dsx: add support to LSM6DST commit
imu: st_lsm6dsx: add vdd-vddio voltage regulator commit
sx9310: Support setting various settings commit, commit, commit, commit, commit, commit
9.21. Multi Function Devices (MFD)
kempld-core: Add support for additional devices commit
qcom-spmi-pmic: Add support for PM660/PM660L commit
9.22. Pulse-Width Modulation (PWM)
Add PWM fan controller driver for LGM SoC commit
atmel-tcb: Add sama5d2 support commit
mediatek: Add MT8183 SoC support commit
Add PWM driver for Intel Keem Bay commit
Add DesignWare PWM Controller Driver commit
9.23. Inter-Integrated Circuit (I2C + I3C)
Introduce the mipi-i3c-hci driver commit
owl: Add compatible for the Actions Semi S500 I2C controller commit
owl: Add support for atomic transfers commit
owl: Enable asynchronous probing commit
imx: support slave mode for imx I2C driver commit
ismt: Adding support for I2C_SMBUS_BLOCK_PROC_CALL commit
9.24. Hardware monitoring (hwmon)
pmbus: Driver for Delta power supplies Q54SJ108A2 commit
occ: Add new temperature sensor type commit
sbtsi: Add basic support for SB-TSI sensors commit
Add driver for STMicroelectronics PM6764 Voltage Regulator commit
amd_energy: Add AMD family 19h model 01h x86 match commit
Add Corsair PSU HID controller driver commit
max127: Add Maxim MAX127 hardware monitoring driver commit
nct6683: Support NCT6687D commit
k10temp: Remove support for displaying voltage and current on Zen CPUs commit
9.25. General Purpose I/O (gpio)
tools: gpio: add option to report wall-clock time to gpio-event-mon commit
tools: gpio: add support for reporting realtime event clock to lsgpio commit
msc313: MStar MSC313 GPIO driver commit
gpiolib: cdev: allow edge event timestamps to be configured as REALTIME commit
gpio-hisi: Add HiSilicon GPIO support commit
9.26. Leds
rt8515: Add Richtek RT8515 LED driver commit
9.27. DMA engines
at_xdmac: add AXI priority support and recommended settings commit
at_xdmac: add support for sama7g5 based at_xdmac commit
idxd: add IAX configuration support in the IDXD driver commit
qcom: Add ADM driver commit
qcom: Add GPI dma driver commit
sun6i: Add support for A100 DMA commit
k3-udma: Add support for BCDMA and PKTDMA commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
9.28. Cryptography hardware acceleration
keembay: Add support for Keem Bay OCS AES/SM4 commit
qce: Enable support for crypto engine on sdm845 commit
hisilicon/trng - add HiSilicon TRNG driver support commit, commit, commit
- qat
9.29. PCI
PCI: qcom: Add support for configuring BDF to SID mapping for SM8250 commit
Add RCEC handling to PCI/AER commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
PCI: qcom: Add SM8250 SoC support commit
PCI: dwc: exynos: Rework the driver to support Exynos5433 variant commit
PCI: Decode PCIe 64 GT/s link speed commit
9.30. Non-Transparent Bridge (NTB)
intel: add Intel NTB LTR vendor support for gen4 NTB commit
9.31. FRU Support Interface (FSI)
occ: Add support for P10 commit
9.32. Clock
fsl-flexspi: new driver commit
imx: scu: add two cells binding support commit
nps: Remove EZChip NPS clocksource driver commit
qcom: add sm8250 LPASS GFM drivers commit, commit, commit, commit
qcom: Add GCC and RPMh clock support for SDX55 commit, commit, commit, commit, commit, commit
qcom: camcc: Add camera clock controller driver for SC7180 commit
qcom: clk-alpha-pll: Add support for controlling Agera PLLs commit
qcom: rpmh: add support for SM8350 rpmh clocks commit
renesas: r8a774a1: Add RPC clocks commit
renesas: r8a774b1: Add RPC clocks commit
renesas: r8a779a0: Add CSI4[0-3] clocks commit
renesas: r8a779a0: Add VIN clocks commit
sifive: Add a driver for the SiFive FU740 PRCI IP block commit
9.33. PHY ("physical layer" framework)
Add USB HSIC PHY driver for Marvell MMP3 SoC commit
Ingenic: Add USB PHY driver using generic PHY framework commit
amlogic: Add AXG MIPI D-PHY driver commit
amlogic: phy-meson-axg-mipi-pcie-analog: add support for MIPI DSI analog commit
intel: Add Keem Bay USB PHY support commit
phy-brcm-sata: Allow configuration SATA AFE TX amplitude commit
qcom-qmp: Add SM8250 PCIe QMP PHYs commit
ralink: Add PHY driver for MT7621 PCIe PHY commit
samsung: Add support for the Exynos5420 variant of the USB2 PHY commit
samsung: phy-exynos-pcie: rework driver to support Exynos5433 PCIe PHY commit
9.34. EDAC (Error Detection And Correction)
Add DDR5 new memory type commit
Add Intel Sapphire Rapids server support commit
Add support for AST2400 and AST2600 commit
Add EDAC driver for Intel client SoCs using In-Band ECC commit, commit, commit
Remove orphan mv64x60 driver commit
9.35. Various
bus: mhi: Add MHI PCI support for WWAN modems commit
can: add optional DLC element to Classical CAN frame structure commit
dmaengine/soc: k3-udma: Add support for BCDMA and PKTDMA commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
PCI/ERR: Bind RCEC devices to the Root Port driver commit
extcon: Add driver for TI TUSB320 commit
extcon: fsa9480: Support TI TSU6111 variant commit
firmware: arm_scmi: SCMIv3.0 Sensor Extensions commit, commit, commit, commit, commit, commit, commit, commit, commit
firmware: ti_sci: rm: Add support for extended_ch_type for tx channel commit
firmware: ti_sci: rm: Add support for second resource range commit
habanalabs: support multiple types of firmwares commit
iommu/arm-smmu: Add adreno-smmu implementation and bindings commit, commit, commit
iommu/arm-smmu: Add support for pagetable config domain attribute commit
iommu/io-pgtable-arm: Add support to use system cache commit
iommu/io-pgtable-arm: Support coherency for Mali LPAE commit
iommu/ioasid: Add ioasid references commit
iommu/sva: Add PASID helpers commit
iommu/tegra-smmu: Add PCI support commit
irqchip/ls-extirq: Add LS1043A, LS1088A external interrupt support commit
irqchip/ocelot: Add support for Jaguar2 platforms commit
irqchip/ocelot: Add support for Luton platforms commit
irqchip/ocelot: Add support for Serval platforms commit
mailbox: arm_mhuv2: Add driver commit
mei: bus: add vtag support commit
mei: bus: enable pavp device commit
memory: mtk-smi: Add mt8192 support commit
memory: tegra-mc: Add interconnect framework commit
memory: tegra20-emc: Add devfreq support commit
Introduce memory interconnect for NVIDIA Tegra SoCs commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
soc: mediatek: pm-domains: Add new driver for SCPSYS power domains controller commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit
misc: rtsx: Add CD & WP reverse support for RTS5261 commit
misc: rtsx: Add SD Express mode support for RTS5261 commit
nvmem: core: Add support for keepout regions commit
pcmcia: Remove NEC VRC4173 CARDU commit
psci: Split functions to v0.1 and v0.2+ variants commit
psci: Support psci_ops.get_version for v0.1 commit
ptp: Add clock driver for the OpenCompute TimeCard commit
ptp: idt82p33: add adjphase support commit
regmap/SoundWire: sdw: add support for SoundWire 1.2 MBQ commit
remoteproc: k3-r5: Extend support to R5F clusters on J7200 SoCs commit
remoteproc: Introduce mini-dump support commit, commit, commit, commit
remoteproc: Add a PRU remoteproc driver commit, commit, commit, commit, commit, commit
reset: add BCM6345 reset controller driver commit
rpmsg: Turn name service into a stand alone driver commit
rpmsg: core: Add channel creation internal API commit
rpmsg: virtio: Add rpmsg channel device ops commit
slimbus: qcom-ngd-ctrl: add Protection Domain Restart Support commit
slimbus: qcom-ngd-ctrl: add Sub System Restart support commit
soc: aspeed: Add soc info driver commit
soc: mediatek: Add MediaTek SCPSYS power domains commit
soc: mediatek: add mt6779 devapc driver commit
soc: qcom: rpmpd: Add MSM8916 power domains commit
soc: qcom: rpmpd: Add MSM8939 power-domains commit
soc: qcom: socinfo: add soc ids for msm8953 variants commit
soc: ti: k3-ringacc: add AM64 DMA rings support commit
spmi: Add driver shutdown support commit
irqchip: Remove EZChip NPS interrupt controller commit
dma-mapping: provide a benchmark for streaming DMA mapping commit
10. List of Pull Requests
List of Linus merges from v5.10 to v5.11-rc1
11. Other news sites
Phoronix 5.11 feature overview