LWN:6.10合并窗口的后半部分!

Linux News搬运工

共 2813字,需浏览 6分钟

 ·

2024-06-11 13:24

关注了就能看到更多这么棒的文章哦~

The rest of the 6.10 merge window

By Jonathan Corbet
May 27, 2024
Gemini-1.5-flash translation
https://lwn.net/Articles/974869/

Linus Torvalds 发布了 6.10-rc1 并在 5 月 26 日关闭了 6.10 合并窗口。当时,已经有 11,534 个非合并变更集 (non-merge changeset) 被拉入主线 (mainline) 用于下一个版本;其中将近 5,000 个是在 “6.10 合并窗口前半段” 写完后加入的。虽然合并窗口的后半段往往更侧重于进行 fix,但也有一些新功能在这个期间落地。

自从前半部分摘要发布以来,合并的一些重要变更包括:

架构特定

  • 现在可以使用 基于 Clang 的控制流完整性(control-flow integrity) 构建 32 位 Arm 系统。

  • PowerPC BPF JIT 编译器现在支持 kfuncs。

  • RISC-V 架构已获得对 Rust 语言的支持。

核心内核

  • 现在可以将跟踪环形缓冲区(tracing ring buffer)直接映射到用户空间。更多相关信息,请参阅 此合并消息 和 此文档提交 。

  • 将 巨页文件系统 (hugetlbfs) 整合 到核心内存管理子系统的初始补丁集已合并;应该没有用户可见的更改。

  • ntsync 子系统 已合并,该子系统为 Linux 提供了一组 Windows NT 同步原语。但是,它在这个版本中被标记为“已损坏”,目前还不能用于其预期目的。

  • 经过大量的讨论和修改, mseal() 系统调用 作为本开发周期的最后一个功能之一被合并。 mseal() 允许进程禁止对其地址空间部分未来进行更改;最初的应用是在 Chrome 浏览器中,它将使用它来加强其内部沙箱。更多信息可以在 此文档提交 中找到。

文件系统和块设备 I/O

  • 内核中有一个新的基于 netlink 的协议用于控制 NFS 服务器;据说一个新的 nfsdctl 工具将被加入到 nfs-utils 包中。

  • XFS 文件系统继续获得更多在线修复功能。

  • 用户空间中的文件系统 (FUSE) 子系统现在支持使用 fs-verity 进行完整性保护。

  • overlayfs 文件系统现在可以使用 O_TMPFILE 选项创建临时文件。

硬件支持

  • 时钟 : Sophgo CV1800 系列 SoC 时钟控制器、STMicroelectronics stm32mp25x 时钟、NXP i.MX95 BLK CTL 时钟和 Epson RX8111 实时时钟。

  • 媒体 : Broadcom BCM283x/BCM271x CSI-2 接收器和第六代 Intel 图像处理单元。

  • 其他 : 宏碁 Aspire 1 嵌入式控制器、联想 WMI 摄像头按钮、ACPI 快速启动按钮、联想 Yoga 平板电脑 2 1380 快速充电器、戴尔一体机 UART 背光接口、MeeGoPad ANX7428 Type-C 开关、兆芯 I2C 接口、联想 SE10 看门狗定时器、ARM MHUv3 邮箱控制器、三星 HDMI PHY、联发科 10GE SerDes XFI T-PHY 和瑞芯微 USBDP COMBO PHY。

其他

  • perf 工具像往常一样经历了许多变化;详细信息可以在 此合并消息 中找到。

网络

  • io_uring 的新 IORING_CQE_F_SOCK_NONEMPTY 操作可用于确定是否有更多连接请求正在等待套接字。

安全相关

  • Landlock 安全模块现在可以将策略应用于 ioctl() 调用;请参阅 此文档提交 以获取更多信息。

  • 新的 init_mlocked_on_free 引导选项将导致任何使用 mlock() 锁定到内存中的内存,如果 (且仅当) 它被释放而没有首先使用 munlock() 解锁,则会将其清零。目的是保护可能包含加密密钥的内存,使其在应用程序崩溃后不会被泄露。

内核内部变更

  • 开发人员可能不知道 no_printk() 宏。它的作用是什么也不做,但保留 printk() 语句以备将来调试目的恢复。在之前的内核中, no_printk() 仍然会为内核映像贡献 索引数据 ,即使它没有打印任何东西;这在 6.10 中已修复。

  • 内核中可执行代码内存分配方式的一些更改使得能够在不需要启用可加载模块支持的情况下启用 ftrace 和 kprobe。

  • BH 工作队列 中的工作项现在可以启用和禁用;通过此更改,应该可以将所有 tasklet 用户转换为新的机制。

  • (有些争议的) 内存分配分析 子系统已合并;这应该有助于开发人员优化内存使用并跟踪内存泄漏。更多相关信息,请参阅 此文档提交 。

  • 6.10 中有 371 个新的符号被导出供模块使用,以及 18 个新的 kfunc;有关更改的完整列表,请参阅 此页面 。

如果本开发周期遵循通常的时间线 (并且通常都遵循了),那么最终的 6.10 版本将在 7 月 14 日或 21 日发布。然而,从现在到那时,还需要进行大量的测试和错误修复。

[请注意,LWN 订阅者可以在 LWN 内核源代码数据库 中找到有关 6.10-rc1 贡献的更多信息。]

全文完
LWN 文章遵循 CC BY-SA 4.0 许可协议。

欢迎分享、转载及基于现有协议再创作~

长按下面二维码关注,关注 LWN 深度文章以及开源社区的各种新近言论~



浏览 29
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报