KernelNewbies:

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 7.1 has been released on Sunday, 14 June 2026.

Summary: Linux 7.1 adds a new implementation of the NTFS file system; improved swapping implementation; support for user.* extended attributes on sockets; enablement of Intel FRED on supported hardware for improved performance; BTF-powered io_uring; support for sub-schedulers in the sched_ext scheduler class; new flags to the clone3(2) system call to allow better pidfd-based process management; some new flags to fsmount(2), clone3(2) and unshare(2) to allow easier container management; and support for networking HW queue leasing. As always, there are many other features, new drivers, improvements and fixes.

You might also be interested in the list of changes done by LWN: part 1, part 2

1. Prominent features

1.1. Intel FRED enabled by default

FRED (Fast Return and Event Delivery) is a new architecture on newer Intel processors that defines simple new transitions that change privilege level (ring transitions). It is a replacement for IDT event delivery on x86 and addresses most of the technical nightmares which IDT exposes, improving overall performance and response time.

This feature is supported on Linux since Linux 6.9. This release enables it by default.

1.2. New clone3() flags, for better pidfd-based process management

This release adds three new flags to the clone3(2) system call:

  • CLONE_AUTOREAP: makes a child process auto-reap on exit without ever becoming a zombie

  • CLONE_NNP: sets no_new_privs on the child at clone time

  • CLONE_PIDFD_AUTOKILL: ties a child's lifetime to the pidfd returned from clone3()

Recommended LWN article: As ye clone(), so shall ye AUTOREAP

1.3. BPF-powered io_uring

The io_uring interface allows to asynchronously do I/O requests. There is still, however, a need to switch to userspace in order to process the results. This release introduces a way to override the standard io_uring_enter(2) syscall execution with an extendible event loop, which can be controlled by BPF via new io_uring struct_ops or from within the kernel.

Recommended LWN article: BPF comes to io_uring at last

1.4. New NTFS implementation

This release contains a newer and improved NTFS implementation, which should make sharing data with other operating systems easier

Recommended LWN article: A new NTFS

1.5. Easier container management with new flags to fsmount(2), clone3(2) and unshare(2)

This release adds FSMOUNT_NAMESPACE flag to fsmount() that creates a new mount namespace with the newly created filesystem attached to a copy of the real rootfs. This returns a namespace file descriptor instead of an O_PATH mount fd, similar to how OPEN_TREE_NAMESPACE works for open_tree().

This allows creating a new filesystem and immediately placing it in a new mount namespace in a single operation, which is useful for container runtimes and other namespace-based isolation mechanisms. This accompanies OPEN_TREE_NAMESPACE and avoids a needless detour via OPEN_TREE_NAMESPACE to get the same effect. Will be especially useful when you mount an actual filesystem to be used as the container rootfs.

This release also adds support for creating a mount namespace that contains only a clone of the root mount, with none of the child mounts: CLONE_EMPTY_MNTNS in clone3(), and UNSHARE_EMPTY_MNTNS for unshare(2).

1.6. sched_ext sub-scheduler support

The sched_ext scheduling class, which allows to use BPF-powered task scheduling algorithms, has been extended to add support for sub-schedulers. The purpose of this feature is to eventually allow (in future releases) using different schedulers in different cgroups.

1.7. Swap table phase III: remove swap_map

As part of the swap table series that aims to improve swap performance, this release introduces the code for the 3rd phase of the series (1st, 2nd).

This phase removes the static swap_map and uses the swap table for the swap count directly. This saves about ~30% memory usage for the static swap metadata. For example, this saves 256MB of memory when mounting a 1TB swap device. Performance is slightly better too, since the double update of the swap table and swap_map is now gone.

Recommended LWN article: Modernizing swapping: the end of the swap map

1.8. Support for user.* extended attributes on sockets

This release adds support for user.* xattrs on sockets. Path-based AF_UNIX sockets inherit xattr support from the underlying filesystem (e.g. tmpfs) but sockets in sockfs - that is everything created via socket() including abstract namespace AF_UNIX sockets - had no xattr support at all.

The practical motivation comes from several directions. With user.* xattrs on sockets a Varlink service can label its socket with the IPC protocol it speaks (e.g., user.varlink=1) and an eBPF program can then selectively capture traffic on those sockets. Enumerating bound sockets via netlink combined with these xattr labels gives a way to discover all Varlink IPC entrypoints for debugging and introspection. Similarly, systemd-journald wants to use xattrs on the /dev/log socket for protocol negotiation. In containers these labels are particularly useful as high-privilege or more complicated solutions for socket identification aren't available.

1.9. Support networking HW queue leasing

This release adds the concept of queue leasing to virtual netdevs that allow containers to use memory providers and AF_XDP at native speed. Leased queues are bound to a real queue in a physical netdev and act as a proxy.

2. Core (various)

3. File systems

4. Memory management

5. Block layer

6. Tracing, perf and BPF

7. Virtualization

8. Cryptography

9. Security

10. Networking

11. Architectures

12. Drivers

12.1. Graphics

12.2. Power Management

12.3. Storage

12.4. Drivers in the Staging area

12.5. Networking

12.6. Audio

12.7. Tablets, touch screens, keyboards, mouses

12.8. TV tuners, webcams, video capturers

12.9. Universal Serial Bus

12.10. Serial Peripheral Interface (SPI)

  • omap2-mcspi: add support for 3-wire transfers commit

  • Add renesas rz/g3l rspi support (cover), commit

  • tegra210-quad: Add runtime autosuspend support commit

12.11. Watchdog

12.12. Serial

12.13. CPU Frequency scaling

12.14. Device Voltage and Frequency Scaling

  • tegra30-devfreq: add support for Tegra114 commit

12.15. Voltage, current regulators, power capping, power supply

12.16. Pin Controllers (pinctrl)

12.17. Multi Media Card (MMC)

12.18. Memory Technology Devices (MTD)

12.19. Industrial I/O (iio)

12.20. Multi Function Devices (MFD)

  • bcm2835-pm: Introduce SoC-specific type identifier commit

  • intel-lpss: Add Intel Nova Lake-H PCI IDs commit

12.21. Inter-Integrated Circuit (I2C + I3C)

12.22. Hardware monitoring (hwmon)

12.23. General Purpose I/O (gpio)

12.24. DMA engines

12.25. Cryptography hardware acceleration

12.26. PCI

12.27. Clock

12.28. PHY ("physical layer" framework)

12.29. EDAC (Error Detection And Correction)

  • amd64: Add support for family 19h, models 40h-4fh commit

  • i10nm: Add driver decoder for Granite Rapids server commit

12.30. Various

13. List of Pull Requests

14. Other news sites

KernelNewbies: LinuxChanges (last edited 2026-06-29 21:35:31 by diegocalleja)