由于一份最新的错误报告导致短暂延迟,Linus Torvalds宣布正式发布新的 Linux 内核 6.15。由于最后一刻的修复导致需要禁用一项新功能,该版本被延迟了几个小时。
Linux 内核 6.15:核心增强功能
在此新版本中,对块层中硬件封装的内联加密密钥的支持尤为突出,无需软件开销即可实现透明磁盘加密。同样,新的“dmem”内存核算 cgroup 通过跟踪设备内存使用情况来增强容器和 cgroup 的内存管理。
Linux 内核 6.15 在底层重构了关键的锁定和分配原语。例如,每个 VMA 的锁已被重新实现为引用计数,从而减少了争用并简化了代码路径。
在内存分配器中,新的defrag_mode
sysctl 有助于避免碎片化,这对于依赖大页面的工作负载尤其有益。此外,伙伴分配器也进行了改进,并加快了回退路径,从而提升了分配效率。
文件系统
Bcachefs
写时复制 Bcachefs 新增了对目录条目中灵活数组的支持、增强了用于检测和修复位腐烂的清理例程,以及更好的校验和错误处理。设备选项处理和元数据版本控制已得到简化,而新的 debugfs 接口则允许更透明地监控 B-Tree 更新。
Btrfs
Btrfs 新增了使用负 Zstandard 压缩级别挂载的功能,从而能够更精细地调整空间与速度之间的权衡。碎片整理 IOCTL 现在支持压缩级别,并且扩展区 IO 层已为未来支持大型文件库做好了准备。此外,现在可以公开每个 inode 的稳定写入,从而帮助需要严格写入顺序的应用程序。
F2FS
针对 Flash 优化的 F2FS 迈出了迈向现代挂载 API 的第一步,增强了一致性和可维护性。新的 ioctl 提供了 IO 优先级提示,而大量的 folio 转换工作则为更高效的页面处理铺平了道路。此外,文件支持的页面回收功能现已支持posix_fadv_noreuse
,从而提高了重用敏感型工作负载的内存利用率。
Ext4 和 XFS
Ext4 的优势在于其对目录项的线性搜索、更快的超级块更新间隔以及更好的错误模式行为errors=remount-ro
。而 XFS 则增加了对写时复制模式下的大型原子写入、分区设备以及区域垃圾收集的可调阈值的支持——这些功能对于高吞吐量存储阵列至关重要。
网络文件系统
NFS 和 SMB 客户端的稳健性得到了提升:容器化 NFS 拆卸、客户端卸载状态跟踪,以及 Kerberos 5 现已成为 SMB 服务器身份验证的默认设置。同时,CIFS 端也获得了更好的安全描述符处理能力,并修复了旧版 8 位模式问题。
内存管理
内存分配和回收机制获得多项改进。mremap()
路径已重构,以消除长期存在的极端情况错误,而主动回收统计数据则支持更智能的交换决策。大页面分配器现在可以自动调整线程数,并集成了更强大的 CMA 支持。其他亮点包括文件支持映射的保护区域、拆分madvise()
锁定以及重构的mm-owner
大型文件跟踪功能。
块层
块堆栈全面支持内联加密密钥,块设备现在可以通告其逻辑大小大于其物理介质,并且 dm-cache 可以动态缩小其原始设备。XFS IO 映射已针对分区块设备进行了更新,环回设备现在会发出与分区相关的 uevent,从而改进了热插拔行为。
跟踪、性能和 BPF
BPF 新增了加载-获取和存储-释放指令,从而在 eBPF 程序中实现了更安全的并发数据结构。net-timestamp 扩展将精确的数据包计时功能引入用户空间,新的辅助函数简化了套接字选项和 CPUMASK 处理。在性能方面,perf annotate
现在可以显示带有类型注释的代码,直方图增加了变量存储桶,并且延迟/并行度分析功能更加丰富perf report
。
虚拟化
对半虚拟化根分区驱动程序的支持/dev/mshv
为 Microsoft Hypervisor 客户机打开了大门,而 VFIO/VirtIO 则支持块设备的实时迁移。XenServer 6.1 平台设备现已完全识别,并实现了 PowerShell 风格的 CPU 离线功能,以便更好地控制主机。
密码学
加密子系统持续提升高吞吐量和多功能性。ACOMP 引擎新增了对 Folio 的支持,多缓冲区哈希算法带来了批量加速,AF_RXRPC 安全机制现已集成 Kerberos GSSAPI。CRC 库已针对现代指令集进行了全面改进,逐步淘汰了旧代码。
安全
在安全方面,用户空间驱动的沙盒 LSM landlock 获得了扩展的审计覆盖范围和信号范围修正。同时,新的 LSM 钩子io_uring_setup()
增强了容器隔离,SELinux 现在提供文件/监视挂载命名空间权限和通配符网络接口规则。
联网
蓝牙堆栈为 ISO/L2CAP/SCO 添加了 TX 时间戳,而 batman-adv 巨型帧支持则增强了高速网状网络。DSA 框架支持节能以太网,每个 PTP 设备一个时钟的语义简化了精确时间协议的设置。TCP 获得了更多可调参数(例如 和tcp_rto_min_us
)tcp_delack_max_us
,并且每个网络的数据包链增强了容器化工作负载的隔离性。
架构
Linux 内核 6.15 针对 ARM、RISC-V、x86、POWERPC、S390 等架构添加了新的 SoC 和主板设备树条目、芯片组勘误表解决方法以及 KVM 增强功能。值得注意的是,Morello CHERI 平台首次推出了正常模式 DT,Apple T2 BMC 的支持范围不断扩大,RISC-V 增加了 bfloat16 和扩展标志,x86 扩展了 FineIBT-BHI 保护。
驱动程序
图形
图形处理方面也有一些新增功能。例如,英特尔显示引擎新增了脏矩形支持,AMDGPU 新增了 DCN3.6 和自定义亮度曲线,而 Apple 显示控制器则获得了一流的内核支持。
电源管理和存储
ACPI 风扇现在即使在固件接口有限的情况下也能报告转速,而 UFS、NVMe 和 SCSI 子系统则获得了错误处理和多路径可见性功能。该turbostat
工具已更新至 6.15 版本,新增了频率和温度传感器。
音频、输入和视频
USB 音频启用了新的供应商 ID,ASoC 编解码器改进了 Apple 变体的怪癖,USB 网络摄像头实现了 UVC 1.5 ROI 取景。在输入方面,HID 子系统与 udev 的 BPF 解析器同步,Apple Touch Bar 驱动程序的硬件覆盖范围也得到了扩展。
USB、SPI 等
USB 核心学习解析 eUSB2 描述符;Type-C 重定时器(例如 Parade PS8830)获得支持;SPI 控制器(从 QPIC NAND 到 Sophgo)功能更强大。串行、GPIO 和 PWM 子系统均新增了 SoC 和板级挂钩。
对于那些渴望自己编译 Linux 内核 6.15 的用户,现在可以在kernel.org下载。与往常一样,滚动发布发行版用户将率先获得新内核,预计更新将在未来几天或几周内到达其发行版的存储库。