Hacker News 中文摘要

RSS订阅

Linux 7.2 -- Linux 7.2

文章摘要

Linux 7.2版本已按常规周期发布,这是有史以来最繁忙的更新周期之一,引入了缓存感知调度、MGLRU改进、子调度器概念及多尺寸透明大页自动创建等特性。Igalia贡献了DRM调度器公平策略、树莓派GPU运行时电源管理及多项改进。

文章总结

Linux 7.2 版本已于本周按常规周期发布。该版本是迄今为止最繁忙的周期之一,仅次于 6.7 版本,这被视为“新常态”,因为最近三四个周期都非常繁忙,尤其是在修复方面。本周期取得了一些有趣的成就,例如缓存感知调度、MGLRU 的改进、sched_ext 的子调度器概念、自动创建多尺寸透明大页面等。

Igalia 公司一如既往地做出了重要贡献,主要包括 DRM 调度器公平策略(由于在最后时刻报告了回归问题,目前作为可选功能存在)、树莓派 4 和 5 的 GPU 运行时电源管理、sched_ext 和 futex 的改进,以及常规的错误修复。

在 DRM 调度器公平策略方面,该策略原本计划在本周期启用,可在多个客户端共享 GPU 或轻交互客户端与高需求客户端竞争 GPU 时带来显著改进。但由于在 7.2-rc7 周期间报告了回归问题,默认策略仍将保留旧的先进先出(FIFO)调度器。修复方案已知且早期测试结果良好,有望在下一个内核版本中重新启用。

在 schedext 方面,改进了可观测性以简化调试。当自定义 schedext 调度器遇到运行时错误时,内核会将其弹出并恢复为默认调度器。为帮助诊断这些故障,内核会转储每个 CPU 的状态,但在高核心系统上,这些转储可能因缓冲区大小限制而被截断。通过优先处理触发错误的 CPU,使其首先被转储,并将 CPU ID 直接暴露给 BPF 调度器和用户空间工具,缓解了这一问题。

在树莓派 GPU 电源管理方面,本版本支持了树莓派 4 和 5 的运行时电源管理。此前,V3D 驱动程序的电源模型非常简单:GPU 时钟在探测期间启用,并在驱动程序整个生命周期内保持启用状态,这意味着空闲的 GPU 仍会消耗电力。通过运行时电源管理,GPU 仅在处理工作时供电,空闲时可禁用时钟,从而降低功耗。此外,还修复了树莓派 3 GPU 驱动程序中两个长期存在的错误,这些错误多年来一直影响 RetroPie 用户,导致随机 GPU 挂起和系统崩溃。问题根源在于 GPU 在处理帧时内存空间不足时内核处理 tile 内存的方式。修复措施确保每个图形作业只写入自己的内存区域,并且重复使用的内存在再次使用前被正确清除,防止陈旧或损坏的数据到达 GPU。同时,还修复了树莓派 4 和 5 的 GPU 重置问题,使重置过程更加可靠和一致。

在 Futex 测试和文档方面,继续改进和维护 futex() 系统调用,帮助设计并解决了一个存在 14 年的错误,该错误在边缘情况下影响了稳健列表机制并导致数据损坏。

在常规错误修复方面,修复了 ueagle-atm 驱动程序中一个长期存在的问题,该问题在设备探测和断开期间可能触发 kernfs 创建和移除操作之间的竞争条件。还帮助改进了 x86 启动期间使用的 memcmp() 内联汇编实现的正确性,防止了因编译器优化和指令重排序导致的潜在细微错误。

在 HDMI 2.1 支持方面,本版本包含的 HDMI 2.1 固定速率链路(FRL)支持部分源自 Igalia 的 Rodrigo Siqueira 在 AMD 工作期间的成果。这项工作实现了初始支持,允许 amdgpu 驱动程序与 HDMI 2.1 显示器通信(主要是 FRL 实现)。该实现在外围代码中停留了数年才被纳入源代码,部分内容几乎保持原样,部分内容在过程中被重新设计。

评论总结

根据评论内容,主要观点和论据如下:

1. 对技术背景的认可(评分:无) - 评论1肯定文章提供了有价值的背景信息。 - 关键引用:"Great context, thanks for adding it"(“很好的背景信息,感谢补充”)

2. 对目标受众的疑问(评分:无) - 评论2质疑内容面向谁,尤其是非Linux用户。 - 关键引用:"Who is the main audience for this type of content?"(“这类内容的主要受众是谁?”);"What type of info do you get out of this for those who read this?"(“读者能从中获得什么信息?”)

3. 对HDMI 2.1支持的技术困惑(评分:无) - 评论3关注HDMI 2.1支持如何实现,提及此前被HDMI论坛封锁。 - 关键引用:"Does anyone understand how HDMI 2.1 support is now no problem?"(“有人理解HDMI 2.1支持现在为何没问题了吗?”);"I remember that 2.1 support in AMD's open source driver was blocked by the HDMI forum"(“我记得AMD开源驱动中的2.1支持被HDMI论坛封锁了”)

4. 对HDMI与DP选择的比较(评分:无) - 评论4质疑为何用HDMI而非DP,因DP更普及。 - 关键引用:"why I would now use HDMI instead of DP?"(“为什么我现在要用HDMI而不是DP?”);"I've never even considered using HDMI for my Desktop"(“我从未考虑过在台式机上用HDMI”)

5. 对内核中DRM实现的质疑(评分:无) - 评论5质疑DRM为何在内核中实现,以及谁需要它。 - 关键引用:"Why is DRM being implemented in the Kernel"(“为什么DRM要在内核中实现”);"What is the profile for an end-user who wants this in their FOSS?"(“想要在自由开源软件中获得此功能的终端用户画像是什么?”)

总结:评论主要围绕技术细节(HDMI 2.1支持、DP vs HDMI、DRM实现)和受众定位展开,既有对背景信息的肯定,也有对实用性和必要性的质疑。