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

儿童Linux系统,可打字编程学数理化
请稍侯

泰晓资讯·3 月 / 第一期 / 2023

unicornx 创作于 2023/03/02

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

Linux 内核最新消息

https://lkml.org/lkml/2023/2/19/309

Linus Torvalds 上周发布了稳定版 Linux 6.2 内核,这是 2023 年的第一个正式的内核版本。

在 Linux 6.2 发布之前,社区已经宣布 2022 年的 LTS 内核是 6.1,这意味着 6.1 将至少维护到 2026 年底。预计 Linux 6.2 中的许多问题修复将被后向移植到 Linux 6.1。

Linux 6.2 的新增特性很多,和过去一样,这些新特性来自 Intel、AMD、Google、Redhat 和其他常见的贡献者。Linux 6.2 中对 来自 Intel 的 Arc 显卡(DG2/Alchemist)支持已经为稳定并实现了开箱即用,Intel 的 On Demand 驱动程序现在支持第 4 代 Gen Xeon Scalable 的 “Sapphire Rapids” CPU,Linux 6.2 中的 Nouveau 开源驱动代码还对 NVIDIA GeForce RTX 30 系列 “Ampere” 加速显卡实现了初步的支持,此外还合入了对 Apple M1 Pro/M1 Max /M1 Ultra 的支持,以及各种文件系统驱动程序增强、安全改进等等。

Linux 6.2 的开发周期延长了一周,这主要是因为这个系列的开发正好碰上了圣诞节以及新年假期,这导致许多开发人员和测试人员由于年终活动而离开了工作一段时间。但无论如何现在 Linux 6.2 已经发布了,而且我们已经开始下一个同样令人兴奋的周期:Linux 6.3。

Linux 6.2 有望成为 Ubuntu 23.04 的默认内核,并且有可能成为 Fedora 38 等发行版的内核,但这取决于这些发行版的发布时间是否能赶上 4 月下旬推出的 Linux 6.3。Linux 6.2 在一些持续测试中总体上一直处于良好状态,特别是对于像 Skylake 之类的处理器核心。

https://www.kernel.org/ updated by 2023/02/16

分支类型版本发布时间
mainline6.22023-02-19
stable6.2.12023-02-25
longterm6.1.142023-02-25
longterm5.15.962023-02-25
longterm5.10.1702023-02-25
longterm5.4.2332023-02-25
longterm4.19.2742023-02-25
longterm4.14.3072023-02-25
linux-nextnext-202303012023-03-01

关键词: Linux

Linux 6.3 特性预览

The Linux 6.2 kernel is expected to be released in the next few hours and in turn will then formally kick-off the start of the two week long merge window for what will become Linux 6.3. Here’s a look ahead at some of the kernel changes expected in this next kernel cycle.

Linux 6.2 内核已经正式发布,现在又进入下一个为期两周的 Linux 6.3 合并窗口期。这里我们简单展望一下下一个内核周期中预期的一些内核更改。实际的 Linux 6.3 稳定版本要到 6 月底左右才会发布。

  • 更多的 Rust 代码将进入 Linux 6.3,为编写第一个 Rust 驱动做好准备。
  • 删除了过时的 DRM 驱动程序,如 ATI Rage 3,3Dfx,S810 Savage,Intel 8等。
  • 支持 Qualcomm Snapdragon 8 Gen 2。
  • 各种音频驱动程序更新,包括对基于三星的 Tesla 全自动驾驶(FSD)SoC 的声音支持。
  • Etnaviv 正在启用 VeriSilicon NPU core 供 OpenCL 使用。
  • 支持更多 Aquacomputer 计算机设备。
  • 支持 Arm Scalable Matrix Extension 2 (SME2)。
  • 支持带有 MSM DRM 驱动程序的较新的 Qualcomm SoC。
  • 对 CXL RAM regions 的支持。
  • 继续改进 HWMON 传感器支持。
  • 改进 Restartable Sequences (RSEQ)。
  • 一个针对 MGLRU 的性能回归修复。
  • 其他……

新闻出处,“The Linux 6.3 Merge Window To Bring Many Exciting Features”: https://www.phoronix.com/news/Linux-6.3-Exciting-Start

关键词: Linux

Linux 6.3 准备了更多 Rust 代码 - 更接近于将 Rust 驱动程序上游化

The RISC-V architecture updates were merged this Saturday for the Linux 6.3 merge window.

针对 RISC-V 架构的更新已于上周六合并进入 Linux 6.3。和以往开发周期相比,本周期针对 RISC-V 的改进并不出彩,但这一轮改动中仍然有一些值得我们注意的地方。首先,RISC-V 针对代码加强了合规性检测,以处理不符合规范的扩展实现。针对 ftrace 也有一些性能和代码大小改进,此外在对 Zicbom 扩展的实现中也不再依赖于特定的编译器工具链。Zicbom 扩展是用于缓存块管理操作的 RISC-V ISA 扩展。

Linux 6.3 中针对 RISC-V 的另一个新增改动是基于 Zbb 扩展优化了字符串处理函数。RISC-V 的 Zbb 扩展是 basic bit 操作扩展,是当前四个 “BitManip” 规范之一。对于支持 Zbb 扩展的 RISC-V 处理器以及启用新的 RISCV_ISA_ZBB Kconfig 选项构建的 Linux 6.3 内核后,允许实现速度更快的字符串函数。目前实现了针对 strcmp、strlen 和 strncmp 的 Zbb 优化实现。但添加此支持的补丁并没有提供任何基准测试比较数据,所以看不出来采用 RISC-V Zbb 优化后的函数比普通的实现快多少。

新闻出处,“RISC-V With Linux 6.3 Lands Optimized String Functions Via Zbb Extension”: https://www.phoronix.com/news/Linux-6.3-RISC-V

关键词: Linux, Rust

Linus Torvalds 对提交 Git 合并的建议

The Linux 6.3 merge window has been off to a good start with Linus Torvalds receiving plenty of pull requests in advance, the other early pulls all coming in quite orderly, and no colorful commentary on any of the material set for Linux 6.3 even with the likes of Microsoft Pluton (TPM2 CRB). But today Torvalds’ did feel the need to share some wisdom around Git merge log message advice.

Linux 6.3 合并窗口已经有了良好的开端,Linus Torvalds 提前收到了大量的 PR 请求,绝大部分的 PR 看上去都没有啥毛病,即使像来自 Microsoft 的 PR 也没有让 Linus 发出太多的反对和批评。但是在上周二 Torvalds 确实觉得有必要分享(吐槽)一些关于如何优雅地提交 Git 合并请求的智慧。

Linus Torvalds 关于 Git 合并的实用建议归结为:"if you cannot explain a merge, then JUST DON'T DO IT. It's really that simple. There is absolutely *NEVER* an excuse for merges without explaining why those merges exist."。注意原文中那些大写和加了 “*” 的词,看上去 Linus 还是认真的。

Linus 之所以发出以上评论是因为有个提交(针对 6.2 中的一些问题修复)的 comment 中什么都没有写。Linus 的评论全文如下,大家一起围观学习一下:

So I’ve pulled this, but while looking at it, I see commit 5c0f220e1b2d (“Merge branch ‘for-linus/hardening’ into for-next/hardening”).

And that one-liner shortlog part is literally the whole commit message.

I’ve said this before, and apparently I need to say this again: if you cannot be bothered to explain WHY a merge exists, then that merge is buggy garbage by definition.

This really should be a rule that every single developer should take to heart. I’m not just putting random words together in a random order.

I repeat: if you cannot explain a merge, then JUST DON’T DO IT.

It’s really that simple. There is absolutely NEVER an excuse for merges without explaining why those merges exist.

In this case, I really think that merge should not have existed at all, and the lack of explanation is because there IS no explanation for it.

But if there was a reason for it, then just state it, dammit, and make that merge commit look sensible.

Because right now it just looks entirely pointless. And I literally detest pointless merges. They only make the history look worse and harder to read.

新闻出处,“Linus Torvalds’ Advice On Git Merges: “If you cannot explain a merge, then JUST DON’T DO IT””: https://www.phoronix.com/news/Linus-Torvalds-Git-Merge-Wisdom

关键词: Linus, Git

Linux 的 VGEM 内核驱动程序正在被用 Rust 重写

In addition to the in-development Apple M1/M2 DRM kernel graphics/display driver being written in Rust, there is now a second graphics-related kernel driver seeing early work in Rust. The existing VGEM driver is being rewritten in the Rust programming language.

除了正在开发的 Apple M1/M2 DRM 内核图形/显示驱动程序是用 Rust 编写的之外,现在还有第二个与图形相关的内核驱动程序也开始转向 Rust,这就是 VGEM 驱动程序。

VGEM 作为最小的不依赖硬件支持的 Graphics Execution Manager(简称 GEM)已经存在了一段时间,该驱动可以提供 Virtual GEM 服务。LLVMpipe 和其他 non-native 3D 驱动程序方案使用它进行缓冲区共享。VGEM 有利于提高软件光栅化性能,并且在十年的大部分时间里一直是主线内核的一部分。

VGEM 现在并没有太多的想法去增加新特性,在这一点上明显不像一些针对新硬件的 GPU 驱动程序那样令人兴奋。但是开源开发人员 Maíra Canal 最近开始尝试用 Rust 对 VGEM 进行重写,这是当前能观察到的基于 Direct Rendering Manager(DRM)子系统的第二个和 Rust 有关的工作。

Rust VGEM 的工作仍处于早期阶段,但大多数 IGT 测试用例都通过了。那些希望了解更多关于这项工作的人可以查看这篇博文 https://mairacanal.github.io/rust-for-vgem/

新闻出处,“Linux’s VGEM Kernel Driver Being Rewritten In Rust”: https://www.phoronix.com/news/Linux-VGEM-Rust

关键词: Linux, Rust, VGEM

Microsoft 的 .NET 运行时为 RISC-V 提供初始支持

A pull request was opened during the weekend for initial RISC-V build support for the .NET runtime. The code has been successfully tested for cross-building for RISC-V and even running a simple “hello world” type application on RISC-V.

上周有人提交了一个 PR 用于对 .NET 运行时实现了初始的 RISC-V 构建支持。现在可以成功测试针对 RISC-V 的交叉构建,甚至可以在 RISC-V 的机器上运行简单的 “hello world” 类型的应用程序。

由于微软还没有对 Windows 支持 RISC-V,你可能会好奇谁在做这项工作。原来是来自 Samsung 的工程师 Dong-Heon Jung,他参与了.NET 平台开发团队,这也是他在 Samsung 工作职责的一部分。

新闻出处,“Microsoft .NET Runtime Lands Initial Code For RISC-V Support”: https://www.phoronix.com/news/Microsoft-dotNET-RISC-V

关键词: RISC-V, Microsoft, dotNET

Google Summer of Code 2023 官宣开营

Google has published a list of the participating open-source organizations for this year’s Google Summer of Code.

Google 已经公布了今年 Google Summer of Code 的参与开源组织名单。

Google 再次赞助他们精彩的 GSoC 项目,以鼓励学生和初学者开发人员参与开源开发。今年的形式与去年相似,每个项目通常为 12+ 个星期,最长可达 22 周。除了面向 18+ 岁的学生开放外,Google 还向开源软件开发的任何 “初学者” 开放了该计划,以便任何 18+ 并希望参与开源开发的新软件开发人员都可以选择参与并获得有偿津贴。

本周 Google 宣布了 2023 年参与的组织(https://summerofcode.withgoogle.com/programs/2023/organizations)。列表中有许多常见的组织,如 Linux Foundation。Jenkins,KDE,QEMU,Eclipse,VideoLAN,FFmpeg,NetBSD,Haiku,Coreboot,GCC,FreeBSD,openSUSE,X.Org,Gentoo,GIMP 等。今年共有 172 个组织参与。

学生和新开发者可以通过 summerofcode.withgoogle.com (https://summerofcode.withgoogle.com/)了解有关 Google Summer of Code 2023 计划的更多信息。特别是对于学生开发人员来说,这是在夏天开始开源软件开发生涯的绝佳方式。

新闻出处,“Google Summer of Code 2023 Organizations Announced For Students & New Developers”: https://www.phoronix.com/news/Google-Summer-of-Code-2023

关键词: Google, GSoC

GNU Debugger 13.1 发布

GDB 13.1 is out today as the newest version of the GNU Debugger for this open-source code debugging solution.

GDB 13.1 于上月的 19 日发布。GNU Debugger 13.1 增加对新的处理器架构的支持,譬如我们现在可以基于 LoongArch 和 C-SKY 处理器架构的 Linux 上运行 GDB。对 LoongArch Linux 的支持现在还包括浮点计算。

除了 C-SKY 和 LoongArch 这些新的 CPU ARCH 之外,GDB 13.1 还增加如下特性,包括:对 Arm/AArch64 上的 Thread Local Storage(TLS) 变量的支持、对 FreeBSD AArch64 支持了 hardware watchpoint,添加了 Python API 支持,对 ELF 的 Zstd 压缩 debug section 的支持,删除了 DBX 模式支持以及各种其他增强功能。ELF 二进制文件中的 Zstd debug section 兼容 GNU 工具链(以及 LLVM),包括即将推出的 GCC 13。

新闻出处,“GNU Debugger 13.1 Brings LoongArch & C-SKY Debugging On Linux, Zstd Debug Sections”: https://www.phoronix.com/news/GNU-Debugger-GDB-13.1

关键词: GNU, Debugger

联系我们

欢迎扫描二维码加微信联系我们:

tinylab wechat



Read Album:

Read Related:

Read Latest: