KernelNewbies : Last updated at 2026年06月29日 21:30:05

Linux 7.0 was released on Sunday, 12 April 2026.

Summary: Linux 7.0 adds a new API for file IO error reporting; support in XFS for a new health monitoring feature; support for Clang static analysis support; better io_uring support for filters; support for new open_tree(2) flags that allow faster and simpler container setup; better swapping performance; support a new rseq(2) time slice extension mechanism; simplification of preemption selection; AccECN support enabled by default, for better handling of TCP congestion; and Btrfs experimental support for the remap tree. 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: merge window part 1, part 2

Contents

  1. Prominent features
    1. New API for file IO error reporting
    2. Support in XFS for a new health monitoring feature
    3. Support for Clang static analysis support
    4. Better io_uring support for filters
    5. Extend open_tree(2) to allow for faster and simpler container setup
    6. Better swapping performance with swap table, phase II
    7. rseq: Implement time slice extension mechanism
    8. Simplification of preemption selection
    9. AccECN support enabled by default, for better handling of TCP congestion
    10. BTRFS experimental support for the remap tree
    11. Introduce kmalloc_obj() and family
  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
    1. Graphics
    2. Power Management
    3. Storage
    4. Drivers in the Staging area
    5. Networking
    6. Audio
    7. Tablets, touch screens, keyboards, mouses
    8. TV tuners, webcams, video capturers
    9. Universal Serial Bus
    10. Serial Peripheral Interface (SPI)
    11. Watchdog
    12. Serial
    13. CPU Frequency scaling
    14. Voltage, current regulators, power capping, power supply
    15. Real Time Clock (RTC)
    16. Pin Controllers (pinctrl)
    17. Memory Technology Devices (MTD)
    18. Industrial I/O (iio)
    19. Multi Function Devices (MFD)
    20. Inter-Integrated Circuit (I2C + I3C)
    21. Hardware monitoring (hwmon)
    22. General Purpose I/O (gpio)
    23. Leds
    24. DMA engines
    25. Cryptography hardware acceleration
    26. PCI
    27. Non-Transparent Bridge (NTB)
    28. Clock
    29. PHY ("physical layer" framework)
    30. EDAC (Error Detection And Correction)
    31. Various
  13. List of Pull Requests
  14. Other news sites

1. Prominent features

1.1. New API for file IO error reporting

Filesystems on Linux currently have no standard mechanism for reporting metadata corruption and file I/O errors to userspace via fsnotify. Each filesystem deals with the problem privately, and error reporting to fanotify is inconsistent or absent entirely.

This release introduces a generic fserror infrastructure that gives filesystems a standard way to queue metadata and file I/O error reports for delivery to fsnotify.

1.2. Support in XFS for a new health monitoring feature

This release adds new functionality to deliver live information about filesystem health events to userspace. This is done by creating an anonymous file that can be read() for events by userspace programs. Events like metadata health failures, file I/O errors, and major changes in filesystem state (unmounts, shutdowns, etc.) can be observed by programs.

In userspace, a new daemon program is created that will read the event objects and initiate repairs automatically. This daemon is managed entirely by systemd and will not block unmounting of the filesystem unless repairs are ongoing.

Recommended LWN article: Filesystem medley: EROFS, NTFS, and XFS - XFS self healing

Documentation: XFS Online Fsck Design

1.3. Support for Clang static analysis support

This release adds support for a Clang (22 or later) language extension, which enables statically checking that required contexts are active (or inactive) by acquiring and releasing user-definable "context locks". An obvious application is lock-safety checking for the kernel's various synchronization primitives (each of which represents a "context lock"), and checking that locking rules are not violated. This can help to detect bugs at compilation time.

Recommended LWN article: Capability analysis for the kernel

1.4. Better io_uring support for filters

Due to its design, io_uring doesn't play well with the system call filtering done by system calls like seccomp. io_uring supports filtering, but it's not really usable for these cases. This release adds support for filtering, , which enablestighter control over what exactly a specific opcode may do. On top of that support is added for per-task filters, meaning that any ring created with a task that has a per-task filter will get those filters applied when it's created. These filters are inherited across fork as well. Once a filter has been registered, any further added filters may only further restrict what operations are permitted.

Recommended LWN article: Task-level io_uring restrictions

1.5. Extend open_tree(2) to allow for faster and simpler container setup

When creating containers the setup usually involves using CLONE_NEWNS via clone3() or unshare(), which copies the caller's complete mount namespace. After some tasks, the runtime will recursively umount the old mount tree thereby getting rid of all mounts. This can be wasteful and slow.

This release extends open_tree() with a new OPEN_TREE_NAMESPACE flag. Similar to OPEN_TREE_CLONE only the indicated mount tree is copied. Instead of returning a file descriptor referring to that mount tree OPEN_TREE_NAMESPACE will cause open_tree() to return a file descriptor to a new mount namespace. In that new mount namespace the copied mount tree has been mounted on top of a copy of the real rootfs. This allows OPEN_TREE_NAMESPACE to function as a combined unshare(CLONE_NEWNS) and pivot_root().

1.6. Better swapping performance with swap table, phase II

As part of a long term effort to improve the swapping performance, which started in version 6.18, this release includes the code corresponding to the phase II of the swap table, which aims to clean up and speed up swapping code.

Recommended LWN articles: Modernizing swapping: introducing the swap table, The end of the swap map

1.7. rseq: Implement time slice extension mechanism

This release adds a slice extension mechanism to the rseq(2) system call. Time slice extensions are an attempt to provide opportunistic priority ceiling without the overhead of an actual priority ceiling protocol, but also without the guarantees such a protocol provides.

The intent is to avoid situations where a user space thread is interrupted in a critical section and scheduled out, while holding a resource on which the preempting thread or other threads in the system might block on. That obviously prevents those threads from making progress in the worst case for at least a full time slice. Especially in the context of user space spinlocks, which are a patently bad idea to begin with, but that's also true for other mechanisms.

Recommended LWN article: Extending the time-slice-extension discussion

1.8. Simplification of preemption selection

Linux 6.13 added a lazy preemption mode that is a bridge between the voluntary and the full preemption mode. This raised the number of preemption choices to four. In order to simplify the kernel and make code cleaner, this release makes up-to-date architectures (arm64, loongarch, powerpc, riscv, s390, x86) have only two preemption models: full and lazy.

Recommended LWN articles: Revisiting the kernel's preemption models part 1, part 2

1.9. AccECN support enabled by default, for better handling of TCP congestion

Linux added experimental support for AccECN in 6.18 (after some work done in previous releases). This release finally enables it by default.

Explicit Congestion Notification (ECN) is a mechanism where devices can mark IP packets, instead of dropping them, to indicate incipient congestion to the endpoints, but this was originally specified in such a way that only one feedback signal can be transmitted per Round-Trip Time (RTT). AccECN (RFC 9768) is a scheme that provides more than one feedback signal per RTT in the TCP header, which can be use to provide better TCP congestion handling.

Recommended LWN article: More accurate congestion notification for TCP

1.10. BTRFS experimental support for the remap tree

This release adds support for a new tree in BTRFS file systems. This is a logical remapping tree, which will, in the future, act as a layer of indirection when doing I/O. When doing relocation, rather than fixing up every tree, the file system will record the old and new addresses in the remap tree. This will make things more reliable and flexible, as well as enabling some future changes BTRFS devs would like to make, such as larger data extents and reducing write amplification by removing cow-only metadata items.

For more details, see Logical mapping tree feature (relocation rework)

1.11. Introduce kmalloc_obj() and family

This releases adds kmalloc_obj() to make kernel allocations more type safe.

Recommended LWN article: A safer kmalloc() for 7.0

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

  • scsi: target: core: Add emulation for REPORT IDENTIFYING INFORMATION commit

  • ufs-qcom: Add support firmware managed platforms (cover), commit, commit, commit, commit

  • libata: Improve max sectors quirk handling (cover), commit, commit, commit, commit, commit, commit

  • lpfc: Add support for reporting encryption events commit

  • mpi3mr: Add module parameter to control threaded IRQ polling commit

  • mpt3sas: Add configurable command retry limit for slow-to-respond devices commit

  • mpt3sas: Add firmware event requeue support for busy devices commit

  • qla2xxx: Add support for 64G SFP speed commit

  • ata: Prevent non-ncq command starvation (cover), commit, commit

  • nvme: Optimize passthrough iopoll completion for local ring context (cover), commit, commit

  • scsi: mpi3mr: Record and report controller firmware faults commit

  • scsi: qla2xxx: Add load flash firmware mailbox support for 28xxx commit

  • ata: pata_legacy: remove VLB support commit

12.4. Drivers in the Staging area

  • iio: adt7316: modernize power management commit

12.5. Networking

12.6. Audio

12.7. Tablets, touch screens, keyboards, mouses

  • edt-ft5x06: add support for FocalTech FT3518 commit

  • ili210x: add support for polling mode commit, commit

  • twl603x: add power button (cover), commit, commit, commit

  • xpad: add support for BETOP BTP-KP50B/C controller's wireless mode commit

  • xpad: add support for Razer Wolverine V3 Pro commit

  • HID
    • Kysona: Add support for VXE Dragonfly R1 Pro commit

    • Intel-thc-hid: Intel-quickspi: Add NVL Device IDs commit

    • Intel-thc-hid: Intel-quicki2c: Add NVL Device IDs commit

    • Add output report support for quicki2c driver (cover), commit, commit, commit, commit

    • Intel-thc-hid: Intel-quicki2c: Add power management for touch device commit

    • apple: Add "SONiX KN85 Keyboard" to the list of non-apple keyboards commit

    • asus: Add Fn+F5 fan control key support for ROG laptops (cover), commit, commit, commit, commit

    • asus: Fix ASUS ROG Laptop's Keyboard backlight handling (cover), commit, commit, commit, commit, commit, commit, commit, commit, commit, commit, commit

    • logitech-hidpp: Add support for Logitech K980 commit

    • sony: add dongle device IDs for CRKD Gibson SG commit

    • sony: add support for bluetooth Rock Band 4 PS4 guitars commit

    • elecom: Add support for ELECOM HUGE Plus M-HT1MRBK commit

    • hid-asus: Implement fn lock for Asus ProArt P16 commit

    • i2c-hid: Introduce FocalTech FT8112 commit, commit

    • intel-ish-hid: ipc: Add Nova Lake-H/S PCI device IDs commit

    • intel-ish-hid: loader: Add PRODUCT_FAMILY-based firmware matching commit

    • multitouch: add eGalaxTouch EXC3188 support commit

    • rapoo: Add support for side buttons on RAPOO 0x2015 mouse commit

    • sony: add support for Rock Band 4 PS4 and PS5 guitars commit

    • asus: add xg mobile 2023 external hardware support commit

    • intel-ish-hid: loader: Add PRODUCT_FAMILY-based firmware matching commit

    • logitech-hidpp: Enable MX Master 4 over bluetooth commit

    • asus: add xg mobile 2022 external hardware support commit

12.8. TV tuners, webcams, video capturers

12.9. Universal Serial Bus

  • type-c alternate mode priorities (cover), commit, commit, commit, commit, commit, commit, commit

  • typec: ucsi: Add Thunderbolt alternate mode support commit

  • serial: option: add Telit FN920C04 RNDIS compositions commit

  • Add google tensor soc usb controller support (cover), commit, commit

  • Add ast2700 support for aspeed vhub (cover), commit, commit

  • gadget: f_sourcesink: Support maxburst configurability for bulk endpoints commit

  • isp1362-hcd: remove Philips ISP1362 USB OTG controller driver commit

  • misc: onboard_dev: Add WCH CH334 USB2.0 Hub (1a86:8091) (cover), commit, commit

  • phy: tegra: add support for HSIC mode (cover), commit, commit

  • dbc: allow setting manufacturer string through sysfs commit

  • dbc: allow setting product string through sysfs commit

  • dbc: allow setting manufacturer string through sysfs commit

  • xhci: dbc: allow setting device serial number through sysfs commit

  • serial: option: add MeiG Smart SRM825WN commit

12.10. Serial Peripheral Interface (SPI)

12.11. Watchdog

12.12. Serial

12.13. CPU Frequency scaling

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

12.15. Real Time Clock (RTC)

12.16. Pin Controllers (pinctrl)

12.17. Memory Technology Devices (MTD)

12.18. Industrial I/O (iio)

12.19. Multi Function Devices (MFD)

12.20. Inter-Integrated Circuit (I2C + I3C)

12.21. Hardware monitoring (hwmon)

  • coretemp: Add TjMax for Silvermont through Tremont Atoms commit

  • dell-smm: Add support for Dell OptiPlex 7080 commit

  • f71882fg: Add F81968 support commit

  • nct6775: Add ASUS Pro WS WRX90E-SAGE SE commit

  • sht3x: add support for sht85 commit

  • tmp108: Add support for P3T1035 and P3T2030 commit, commit, commit

  • asus-ec-sensors: add vrm temperature for pro ws wrx90e-sage se commit

  • asus-ec-sensors: add rog maximus x hero commit

  • asus-ec-sensors: add Pro WS TRX50-SAGE WIFI A commit

  • cros_ec: fan target and temperature thresholds (cover), commit, commit, commit, commit

  • gpd-fan: add support for micro pc 2 commit

  • nct6683: add customer id for asrock z590 taichi commit

  • pmbus: add mp5926 driver commit

  • Add support for hitron hac300s psu (cover), commit, commit

  • pmbus: add support for STEF48H28 commit, commit

12.22. General Purpose I/O (gpio)

12.23. Leds

12.24. DMA engines

  • idxd: Add basic DSA 3.0 capability and SGL support (cover), commit, commit

  • mediatek: mtk-uart-apdma: Add support for Dimensity 6300 commit

  • xilinx_dma: Add support for residue on direct AXIDMA S2MM commit

12.25. Cryptography hardware acceleration

12.26. PCI

12.27. Non-Transparent Bridge (NTB)

  • ntb_transport: Add 'tx_memcpy_offload' module option commit

  • intel: Add Intel Gen6 NTB support for DiamondRapids commit

12.28. Clock

12.29. PHY ("physical layer" framework)

12.30. EDAC (Error Detection And Correction)

  • Add two intel amston lake socs support (cover), commit, commit

  • igen6: Add more Intel Panther Lake-H SoCs support commit

  • r82600: Remove this obsolete driver commit

12.31. Various

13. List of Pull Requests

14. Other news sites

KernelNewbies: Linux_7.0 (last edited 2026年06月29日 21:30:05 by diegocalleja )

AltStyle によって変換されたページ (->オリジナル) /