23877
Comment:
|
1055
typos
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
The purpose of this page is tracking and explaining the features added in every release, just like the [http://wiki.dragonflybsd.org/index.php/DragonFly_Status Dragonfly people did]. | #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: |
It'd be nice if kernel hackers would spend some minutes adding their stuff here. The one place where you can find a comparable changelog are the fabulous LWN kernel articles: http://lwn.net/Kernel/ (without those we wouldn't be able to cover many old 2.6.x releases), or the [http://lwn.net/Articles/driver-porting/ driver porting guide] - but there's no reason why the kernel community shouldn't embrace and extend those efforts ;) | You can discuss the latest Linux kernel changes on the [[http://forum.kernelnewbies.org/list.php?4|New Linux Kernel Features Forum]]. |
Line 5: | Line 7: |
FORMAT * 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 2.6.14 '''STILL NOT RELEASED!!''': * Numa-aware slab allocator V5 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e498be7dafd72fd68848c1eef1575aa7c5d658df (commit - benchmarks)] * 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 * [http://hostap.epitest.fi/ HostAP]: Adds support to work as "Wireless Access Point" * [http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Extensions.html Wireless extensions] API update * Four-level page table support for the ppc64 architecture * [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://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." 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 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: * [http://marc.theaimsgroup.com/?l=linux-mm&m=104529418208788&w=2 Anticipatory Scheduler] * "kblockd" kernel threads * "nointegrity" JFS mount option 2.5.74: 2.5.73: 2.5.72: 2.5.71: * [http://marc.theaimsgroup.com/?l=linux-kernel&m=104981044405395&w=2 Switch the IDE I/O layers to taskfile] 2.5.70: * [http://www.linux-usb.org/gadget USB gadget support] 2.5.69: * [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: * Merging s390 and s390x into a single architecture * Generation of hotplug events from kobject registration 2.5.67: 2.5.66: 2.5.65: * [http://www.kerneltrap.org/node.php?id=603 Desktop Interactivity Improvements] 2.5.64: 2.5.63: * [http://high-res-timers.sourceforge.net/ POSIX timers] 2.5.62: * [http://lse.sourceforge.net/locking/dcache/dcache_lock.html Avoid dcache_lock while path walking] 2.5.61: 2.5.60: * New modversions implementation * 64-bit jiffies 2.5.59: * [http://home.arcor.de/efocht/sched/ NUMA aware scheduler extensions] 2.5.68: 2.5.57: * [http://www.zipworld.com.au/~akpm/linux/schedlat.html Remove long-held locks for low scheduling latency] 2.5.56: 2.5.55: 2.5.54: * [http://secure.netroedge.com/~lm78/ Add lm-sensors drivers for hardware health monitoring] * Support for AGP 3.0 2.5.53: * "sysenter" support 2.5.52: 2.5.51: * [http://linuxconsole.sourceforge.net/ Rewrite of the console layer] * Compatibility syscall layer 2.5.50: 2.5.49: 2.5.48: * [http://lists.insecure.org/lists/linux-kernel/2002/Oct/6214.html In-kernel module loader] 2.5.47: * [http://www.uwsg.iu.edu/hypermail/linux/kernel/0204.1/0429.html Zerocopy NFS] 2.5.46: * [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: * [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: * 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: * [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: * [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: 2.5.40: * [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: * New IO scheduler ("deadline") 2.5.38: 2.5.37: * [http://users.pandora.be/bart.de.schuymer/ebtables/ Ethernet bridge tables support] * Remove the global tasklist 2.5.36: * Hugepage support * [http://oss.sgi.com/projects/xfs/ XFS filesystem from SGI] 2.5.35: * Serial ATA support * [http://user-mode-linux.sourceforge.net/index.html Add User-Mode Linux (UML)] 2.5.34: * POSIX threading support for signals * [http://lse.sourceforge.net/numa discontigmem support (ia32)] 2.5.33: * TCP segmentation offload * [http://www.sf.net/projects/lksctp SCTP (Stream Control Transmission Protocol)] 2.5.32: * [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: * Support insane number of processes * Disk description cleanups * Remove incomplete SPX network stack 2.5.30: * Remove khttpd 2.5.29: * 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: * Remove the "Big IRQ lock" * Serial driver restructure 2.5.27: * [http://surriel.com/patches/ New VM with reverse mappings] 2.5.26: * Direct pagecache <-> BIO disk I/O 2.5.25: * [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: 2.5.23: * [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: 2.5.21: 2.5.20: 2.5.19: 2.5.18: * [http://falcon.sch.bme.hu/~seasons/linux/swsusp.html Software suspend (to disk & RAM)] * ->getattr() ->setattr() ->permission() changes 2.5.17: * 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: 2.5.15: 2.5.14: * 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: 2.5.12: * Rewrite of the buffer layer 2.5.11: * 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: 2.5.9: * Smarter IRQ balancing 2.5.8: * [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: * [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: * [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: * [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: * [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: * [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: * [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: * Rewrite of the block IO (bio) layer |
<<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). 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.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