The first half of the 6.9 merge window
Architecture-specific
- Support for the Intel Flexible Return and Event Delivery (FRED) mechanism has been merged. FRED improves low-level event delivery, allowing for simpler and more reliable code; see this changelog and this documentation commit for more information.
- The core kernel has gained support for running AMD Secure Nested Paging (SNP) guests, part of AMD's confidential-computing solution. Full support requires KVM changes which, evidently, have been deferred until 6.10.
- The kernel can now make use of GCC's named address spaces feature to optimize access to per-CPU data.
- The latest x86 hardware vulnerability is "register file data sampling", which affects Intel Atom CPUs. The mitigations have been merged; see this documentation commit for details.
Core kernel
- The kernel is now able to create and use pidfds with threads, rather than just the thread-group leader. This feature can be accessed using the new PIDFD_THREAD flag with pidfd_open() or CLONE_THREAD with clone() or clone3(). The semantics of thread-level pidfds varies a bit from process pidfds; see this merge changelog for details.
- There is a new kernel virtual filesystem for pidfds; see this article for details.
- The BPF arena subsystem, which manages shared memory between BPF programs and user space, has been merged. To support use of this memory, the cond_break macro changes have been merged as well.
Filesystems and block I/O
- The zonefs and hugetlbfs filesystems now support ID-mapped mounts.
- The new RWF_NOAPPEND flag for pwritev2() allows an offset to be supplied for the write even if the file has been opened in append-only mode. This flag makes pwritev2() behave as POSIX had intended with pwritev().
- The old ntfs filesystem implementation has been removed in favor of ntfs3.
- The new FS_IOC_GETUUID ioctl() command will retrieve the UUID for a given filesystem; it is a generic version of the (previously) ext4-only feature. Another new command, FS_IOC_GETFSSYSFSPATH, will retrieve the location for a mounted filesystem under /sys/fs.
- The io_uring subsystem has gained the ability to truncate a file.
- Administrators of NFSv4 servers now have the ability to revoke open and lock states on files.
Hardware support
- Miscellaneous: StarFive JH8100 external interrupt controllers.
- Networking: RENESAS FemtoClock3 PTP clocks, Qualcomm QCA807x PHYs, Marvell Octeon PCI Endpoint NICs, esd electronics gmbh CAN-PCI(e)/402 controllers, and Freescale QUICC multichannel controllers.
Miscellaneous
- The kernel now uses version 1.76.0 of the Rust language. This update
stabilizes two features (const_maybe_uninit_zeroed and
ptr_metadatabyte_sub, which can replace the unstable ptr_metadata) used by the kernel, making the list of needed unstable features that much shorter. There have been various other Rust-related changes as well; see this merge changelog for details. - Anybody interested in the details of how to use bisection to track down a kernel regression may want to have a look at this new document that covers the topic extensively.
Networking
- There has been a lot of work done to reduce the use of the networking subsystem's core RTNL lock and reduce contention overall.
Security-related
- The BPF token mechanism, which allows the delegation of fine-grained permissions for BPF operations, has been merged. This merge was attempted for 6.8 but ended up being reverted; this time it seems likely to stick. This changelog gives an overview of the current state of this work.
Internal kernel changes
- The BH workqueue mechanism, intended as an eventual replacement for tasklets, has been merged.
- The timer subsystem has been extensively reworked to better choose the CPU on which an expired timer runs. See this merge changelog for some more information about this change.
- The UBSAN signed-overflow sanitizer has been restored with the idea of helping to drive compiler development toward better signed wraparound warnings.
The 6.9 merge window can be expected to remain open through March 24.
There is still a lot of work waiting to be pulled into the mainline; as
usual, that work will be summarized here once the merge window closes.
Index entries for this article | |
---|---|
Kernel | Releases/6.9 |