林纳斯·托瓦兹(Linus Torvalds)如期发布 Linux 7.3 内核。他周日说发布没被随机推迟,但因年度家庭度假,7.4 合并窗口开启当天他上午不合并,白天在船上和水下度过,下午再继续。本次发布创纪录,共 18,765 个非合并提交,来自 3,021 名开发者,其中 807 人首次参与内核开发。显著变化包括 binfmt_misc 扩展、组调度改进、failfs 文件系统、fchroot() 系统调用和 BPF 程序的全局每 CPU 数据等。
正文
Linus Torvalds 按预期发布了 7.3 内核。
现在是周日下午,这周我总算保持清醒,记住了今天是星期几,所以发布没有被随机推迟。奇迹真是接连不断吗?总之,过去这一周似乎没发生什么特别的事,所以如预期那样,最终的 7.3 已经发布,并因此明天开启 7.4 的合并窗口。不过我正在休年度家庭假,所以早上我不会先合并任何东西,而是会把这一天的大部分时间花在船上和水下。下午我会回来继续合并,但我预计接下来一阵子我的日程安排会有点不寻常。
此版本在各方面都打破了纪录;它引入了来自 3,021 名开发者的 18,765 个非合并提交,其中 807 人是首次参与内核开发的开发者。
此版本的重要变化包括:一些重要的 binfmtmisc 扩展,一些旨在提升大型系统性能的组调度工作,新的 failfs 文件系统(所有操作都会失败),fchroot() 系统调用,面向 BPF 程序的全局 per-CPU 数据,schedext 子调度器功能的完成,面向虚拟机的工作集跟踪,ntfs3 文件系统中的备用数据流支持,一长串 SMB 服务器改进,等等。详情可参阅 LWN 的合并窗口总结(第一部分、第二部分)和 KernelNewbies 7.3 页面。
评论
社区对新内核版本庞大的更新规模和新硬件支持速度总体感到惊叹,但也围绕快速扩张的代价产生了明显分歧。一方盛赞苹果 M3 芯片及 Time Machine 备份等功能的迅速落地,另一方则担忧海量提交会混入低质代码,并对为兼容苹果协议不得不进行逆向工程感到无奈。
惊叹苹果芯片支持神速
- 看到 ARM 设备树更新加入 M3 Pro、Max 和 Ultra 的支持,有人感叹 Linux 对苹果芯片的适配进展快得惊人(少数人)。
- 引用:> 苹果芯片的支持推进速度快得令人难以置信。(@djfergus)
关注内核态 SMB 服务器(ksmbd)的新能力与代价
- 有人惊讶地发现 Linux 早已拥有类似 Solaris 的内核态 SMB 服务器,甚至不清楚它何时进入内核;同时 ksmbd 新增的 Time Machine 支持也让原本转向 Borg 的人考虑重新尝试该备份方案(较多人)。
- 但实现这一兼容必须依赖逆向工程,有人直言这种现状“仍然很糟”(较多人)。
- 引用:> 苹果 Time Machine 的支持要靠逆向工程来实现,这点仍然让人觉得糟糕。(@theden)
调侃破纪录提交量并担忧代码质量
- 本次发布创纪录地包含 18,765 次非合并提交,来自 3,021 名开发者(其中 807 人是首次贡献),有人一边感谢贡献者,一边用“kernel-slops”调侃,希望海量代码中没有低质或 AI 生成的垃圾代码(少数人)。
- 引用:> 希望这么多提交里没有内核垃圾代码,大家辛苦了!(@sirnicolaz)
质疑 failfs 等冷门特性的实际用途
- 有人表示第一次听说 failfs,不确定它是面向特定场景的小众功能,还是仅仅用于测试(少数人)。
- 引用:> 第一次听说 failfs,它有什么特定用途,还是仅仅用于测试?(@mdspan)
有价值的补充
- ksmbd 的 Time Machine 支持是 opt-in(需手动开启)的,其背后需要实现 AAPL 协商以及 Finder、流、COPYCHUNK、稀疏文件、CHANGE_NOTIFY 和 RPC 等一系列兼容性支持,才能让 macOS 的 backupd 将其用作备份目标。
- 有人将 Linux 的内核态 SMB 服务器(ksmbd)类比为 Solaris 早已提供的同类功能,这种跨平台类比凸显了部分人对该特性缺乏认知。
- failfs 在提问中被暗示可能是一个用于故障注入或测试的文件系统,但评论中并未确认其具体定位,仅有人提出疑问。