泰晓科技 -- 聚焦 Linux - 追本溯源,见微知著!
网站地址:https://tinylab.org

基于泰晓RISC-V实验箱的Linux公开课
请稍侯

泰晓资讯·11 月 / 第一期 / 2021

unicornx 创作于 2021/11/04

“泰晓资讯”,广泛报道 “Linux/开源” 业界资讯。欢迎广大读者投递相关资讯来源和素材,本站将进一步收集整理后发布给大家。

Linux 内核最新消息

https://lkml.org/lkml/2021/10/31/203

虽然上周我们提到由于 Linus 先生考虑到出差和 5.16 合并窗口的冲突问题曾经考虑延迟一周,但很明显勤奋的 Torvalds 先生还是努努力在 31 日(也是西方传统节日万圣节前夜)发布了 Linux 5.15 正式版,此处应有掌声。

Linux 5.15 有许多显着变化,包括引入 DAMON、新的 NTFS 文件系统驱动程序、初始的针对 Xe HPG 和 DG2/Alchemist 的支持代码、以及对 Zen 3 APU 的温度监控支持等等,其中有 15 个比较引人注目的特性,简单罗列在下面供大家参考:

  • 新的 NTFS 文件系统 “NTFS3”,基于最初由 Paragon Software 开发的代码。
  • KSMBD,这是一个集成在内核中的 SMB 文件服务器,旨在内核态支持 RDMA 和其他可以在内核空间中更容易实现的高级功能,这样可以提供更高性能,并且比传统的 Samba 服务实现更轻量。
  • 许多新的 RDNA2 PCI ID,可能用于 AMD Radeon RDNA2 显卡刷新。
  • 对 Intel Xe HP 和 DG2/Alchemist 图形硬件的初步支持,尽管仍在开发进行中。
  • 继续围绕 Intel Alder Lake 对各种 PCI ID 添加和其他支持工作。
  • 针对 AMD Zen 3 APU 的温度监控支持,甚至还支持对 Yellow Carp / Rembrandt 的 APU实现温度监控。
  • 添加很多对 Apple M1 芯片的支持,包括对 IOMMU 驱动程序的实现,Linux 5.16 将继续这项工作。
  • 针对华硕 ACPI 平台允许新的华硕笔记本电脑对性能和温控进行调整。
  • 合并 AMD Van Gogh APU 音频驱动与 Steam Deck。
  • PREEMPT_RT 的 Locking 锁定代码被合入,很高兴看到主线内核接近拥有完整的实时功能!
  • 来自 Amazon DAMON 数据访问监控框架被合入内核,可用于主动内存回收和其他目的。
  • 新增 process_mrelease() 系统调用,可以更快地释放死亡进程的内存。
  • 在下文切换时加入 L1 数据缓存刷新,该功能是可选的,考虑到性能和安全性,在系统管理员权限后才能更改。
  • 基于 GCC 11 以上版本的支持,允许从内核函数返回之前清除调用者使用的寄存器。

在 5.15 版本发布后,紧跟着 5.16 的合并窗口已经打开,让我们继续对新的版本充满期待。

https://www.kernel.org/

分支类型版本发布时间
mainline5.152021-10-31
stable5.14.162021-11-02
longterm5.10.772021-11-02
longterm5.4.1572021-11-02
longterm4.19.2152021-11-02
longterm4.14.2542021-11-02
longterm4.9.2892021-11-02
longterm4.4.2912021-11-02
linux-nextnext-202111042021-11-04

关键词: Linux

近期 Linux 内核的重要补丁(节选)

Architecture-specific

Core kernel

关键词: Linux

Linux 5.15 将成为今年的 LTS 内核

As we approach the end of the calendar year there was some uncertainty whether Linux 5.15 would be this year’s Long-Term Support (LTS) kernel or if it would be Linux 5.16 albeit not likely releasing until the start of 2022…

随着年底的临近,Linux 5.15 还是 5.16 会成为今年的长期支持 (LTS) 版本内核成为人们关心的话题。

目前这个问题已经有了答案,估计是考虑到 5.16 不太可能在 2022 年初发布,Greg Kroah-Hartman 已决定将 Linux 5.15 作为 2021 年的 LTS 内核。 这个我们可以去 Kernel.org 官网获得验证。

目前,预计的是 Linux 5.15 LTS 将于 2023 年 10 月结束其支持周期。但是,通常情况下,如果有足够的行业支持,可以延长数年。也就是说如果有足够多的用户或者开发人员和组织承诺测试新的版本并在实际生产中使用 LTS 内核,则 LTS 的期限可以延长几年。

去年发布的 Linux 5.10 LTS 内核目前计划维护到 2026 年底,而 2019 年发布的 Linux 5.4 LTS 则会维护到 2025 年底。因此,如果和这些 LTS 版本一样的话,Linux 5.15 LTS 很可能可以维护到 2027 年底。

Linux 5.15 是一个非常令人兴奋的更新,而 Linux 5.16 的一些重要补充也在进行中,这让一些人希望 Linux 5.16 成为 LTS,但是谁又会知道下一个版本的内核是不是会更好呢?这真是一个永无止境的内核开发游戏。

原文新闻出处,“Linux 5.15 Is This Year’s LTS Kernel” https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.15-LTS-Kernel

关键词: Linux, LTS

Linux 5.16 合入对 Intel AMX 的支持

After going through a number of rounds of patch revisions over the past year, Intel’s kernel-side changes for supporting Advanced Matrix Extensions (AMX) with next-gen Xeon Scalable “Sapphire Rapids” processors has landed for Linux 5.16!

在过去一年中经历了多轮补丁修订后,Intel 在内核端,用以支持下一代 Xeon Scalable “Sapphire Rapids” 处理器所带有的高级矩阵扩展 (Advanced Matrix Extensions,简称 AMX) 功能的补丁已被合入 Linux 5.16!

英特尔很早就将对 AMX 的更改引入到 LLVM 编译器和 GCC 编译器中,但对内核的修改花费了一年多的时间,目前终于进入主线,这比 “Sapphire Rapids” 这款处理器计划在第二季度上市提前了几个月。

为了启用 AMX 特性需要对内核多处进行修改,首先包括需要提供一个 prctl 接口给用户空间的应用程序对内核启用 AMX 功能。和 AVX 以及大多数其他指令集扩展相比不同,原先的那些扩展指令,应用程序可以随意使用,无需额外的操作。但是对于 AMX 相关的指令,如果应用程序希望其调用的这些指令生效,必须首先通过内核向处理器发起请求,使能后方可执行。这么做有助于避免处理器在不受限制的前提下被应用程序主动降频从而对性能产生影响。除此之外,补丁修改还包括许多内核态的代码。

新闻出处,“Intel AMX Support Lands For Linux 5.16” https://www.phoronix.com/scan.php?page=news_item&px=Intel-AMX-Lands-In-Linux

关键词: Linux,Intel,AMX

Linux 5.16 合入 Cluster-Aware Scheduling 功能

The “sched/core” scheduler updates landed on Monday into the Linux 5.16 kernel. Notable this pull request is the cluster-aware scheduling support.

“sched/core” 调度子系统于本周一向 Linux 5.16 内核提交了补丁更新。值得注意的是这次 PR 中所包含的新增对 cluster-aware scheduling 的支持。

Linux 5.16 新增的 cluster 调度器增强了针对 x86_64 和 AArch64 架构的 CPU 调度器行为,前提是这些 CPU 内核集群(cluster)共享 L2 缓存或其他 mid-level 程度的资源。

这项工作开始于针对特定的 64 位 ARM SoC,例如采用共享 L3 缓存的内核集群的鲲鹏(Kunpeng)920 服务器。在调度器代码中加入对集群拓扑的管理能力后,就能够做出更好的调度决策,从而提高系统的整体性能和效率。

随后从针对 cluster 改进后的调度器代码中我们也看到了对 Intel x86_64 架构的改进机会,特别是针对代号 “Jacobsville” 的处理器,其采用在 core cluster 间共享 L2 缓存的架构。针对该平台的调度优化能够产生高达 25% 的改进,并在具有不同 L2 缓存的集群之间实现更好的平衡。有些人可能想问同样的优化对 AMD 是否也有帮助,但可惜的是至少在目前的 “sched/core” 上的代码还不能对 Zen 3 芯片上的 core cluster 有所帮助。

合入 5.16 的调度子系统补丁中除了针对 cluster-aware 的工作外,还包括了对 idle balancing 的改进,以及围绕实时 (RT) 代码的调整和有关 live-patching 以及其他的一些改进。

更多介绍请阅读新闻出处,“Cluster-Aware Scheduling Lands In Linux 5.16”: https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.16-Sched-Core

关键词: Linux,Cluster-Aware Scheduling

Linux 5.16 合入 Memory Folios

The proposed memory “folios” functionality for Linux 5.16 is happening! This low-level change to the Linux memory management code was merged today for this next kernel.

为 Linux 5.16 新提交的改进 - memory “folios” 功能竟然被接纳了!这个改进并没有为 Linux 5.15 所接纳,而且 Linus Torvalds 最近也没有对此事发表评论,所以大家一直不清楚他是否会真正接受这个最新的 PR。 但出乎意料的是,11 月的第一天他就 merge 了 memory “folios” 补丁集。

以下是该 PR 的主要摘录,供那些不熟悉 memory “folios” 的人参考:

The point of all this churn is to allow filesystems and the page cache to manage memory in larger chunks than PAGE_SIZE. The original plan was to use compound pages like THP does, but I ran into problems with some functions expecting only a head page while others expect the precise page containing a particular byte. The folio type allows a function to declare that it’s expecting only a head page. Almost incidentally, this allows us to remove various calls to VM_BUG_ON(PageTail(page)) and compound_head().

This pull request converts just parts of the core MM and the page cache. For 5.17, we intend to convert various filesystems (XFS and AFS are ready; other filesystems may make it) and also convert more of the MM and page cache to folios. For 5.18, multi-page folios should be ready.

The multi-page folios offer some improvement to some workloads. The 80% win is real, but appears to be an artificial benchmark (postgres startup, which isn’t a serious workload). Real workloads (eg building the kernel, running postgres in a steady state, etc) seem to benefit between 0-10%. I haven’t heard of any performance losses as a result of this series. Nobody has done any serious performance tuning; I imagine that tweaking the readahead algorithm could provide some more interesting wins. There are also other places where we could choose to create large folios and currently do not, such as writes that are larger than PAGE_SIZE.

简单来说这个新特性的改动重点是希望允许文件系统和页面缓存采用比 PAGE_SIZE 更大的块来管理内存。但目前的工作处于比较早的阶段,仅涉及 mm 核心和 page cache 部分的改动,更多针对文件系统的改进和整体性能调优还有待进一步的工作去完成。

更多介绍请阅读新闻出处,“Memory Folios Merged For Linux 5.16”: https://www.phoronix.com/scan.php?page=news_item&px=Memory-Folios-Lands-Linux-5.16

关键词: Linux, Memory Folios

Google 提高悬赏,继续挖掘内核漏洞

Google announced today that now through at least the end of January they will be providing higher payment amounts for security researchers disclosing new vulnerabilities affecting the Linux kernel.

Google 于本周一宣布,从现在开始直到 1 月底,至少三个月内,他们将为那些找出新的 Linux 内核漏洞的安全研究人员提供更高的报酬。具体来说,每发现一个可能导致非法提权的漏洞可获得 31,337 美元。或者,如果发现一个以前未发现的漏洞或提出一种新的漏洞利用技术,他们将为此支付 50,337 美元。

Google 实际上将他们之前的奖励金额增加了两倍,并承诺至少在接下来的三个月内兑现。他们希望这 31,337 美元或 50,337 美元的奖励将鼓励更多的安全研究人员探索内核并报告他们的发现。反过来,这也将有助于提高 Google 的 Android、Google Compute Engine 和 Google 内部的 Linux 系统和服务器集群的安全性。

更多介绍请阅读新闻出处,“Google Will Now Pay $31,337 To $50,337 For New Linux Kernel Vulnerabilities”: https://www.phoronix.com/scan.php?page=news_item&px=More-Money-For-Linux-Flaws

关键词: Google

Linux 已经可以在 Apple 的 M1 Pro 上启动

Last month Apple announced the M1 Pro and M1 Max SoCs while already the very latest Linux patches originally written for the Apple M1 that launched last year paired with some small changes is allowing the open-source platform to boot on the M1 Pro MacBook.

Asahi Linux 项目和其负责人 Hector Martin 一直在致力于通过众筹将 Linux 移植到最新的 Apple 硬件上。上个月,Apple 发布了 M1 Pro 和 M1 Max SoC,基于 Hector 和他的小伙伴去年为 Apple M1 所编写的最新 Linux 补丁再加上一些小改动已经允许 Linux 这个开源操作系统在 M1 Pro MacBook 上启动了,最新的状态是他们已经能够使能 USB 端口并将 Linux 在 M1 Pro MacBook 上引导启动到 shell 阶段。

Hector 确认 SMP、IRQ、IPI、frame-buffer console、DART、USB(包括供电)、I2C 和 GPIO 在 M1 Pro 上已经可以使用。接下来,他更多地关注 PCI Express,尤其是在 SD 卡读卡器和 WiFi 支持方面。硬盘存储还不支持,但问题应该不大。 Apple M1 的键盘和触控板支持仍然依赖于一个处于概念验证阶段的 SPI 驱动程序。

无论如何,很高兴看到 M1 Pro 已经能够启动 Linux,并且自去年以来花在 M1 上的 Linux 移植工作不需要进行大量更改。

更多介绍请阅读新闻出处,“Linux Can Boot On Apple’s M1 Pro But More Work Remains”: https://www.phoronix.com/scan.php?page=news_item&px=Linux-Apple-M1-Pro-Boots

关键词: Linux,Apple,M1 Pro

联系我们

资讯内容部分来自 “LWN.net“。如果您对某些 LWN 文章感兴趣(譬如希望获得全文翻译的)请扫描二维码加微信联系我们:

tinylab wechat



Read Album:

Read Related:

Read Latest: