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

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

泰晓资讯·4 月 / 第四期 / 2022

unicornx 创作于 2022/04/21

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

  • Linux 内核最新消息

https://lkml.org/lkml/2022/4/17/204

虽然过去的周日是西方的传统节日 - 复活节,但是勤勤恳恳的 Linus 还是在当天下午如期发布了 Linux 5.18-rc3,而且还不忘催着社区抓紧时间测试:"Yes, Yes, It's Also Easter Sunday, But Priorities, People!"

至于本周 Linux 5.18-rc3 的变化,Linus Torvalds 评论道:"Things continue to look quite regular, although the diffstat may look a bit odd due to some email updates that ended up causing a lot of spread-out one-liner updates in the devicetree files. There's also a series to sound card probing error handling fixes ("Fix the missing snd_card_free() call at probe error") which ends up showing as a lot of few-lines across a number of sound drivers. But it all looks pretty small and fairly simple. Famous last words."。事情仍然看起来很正常,Linux 5.18 正朝着 5 月底的稳定版本迈进。

https://www.kernel.org/ updated by 2022/4/21

分支类型版本发布时间
mainline5.18-rc32022-04-17
stable5.17.42022-04-20
stable5.16.20 [EOL]2022-04-13
longterm5.15.352022-04-20
longterm5.10.1122022-04-20
longterm5.4.1902022-04-20
longterm4.19.2392022-04-20
longterm4.14.2762022-04-20
longterm4.9.3112022-04-20
linux-nextnext-202204202022-04-20

关键词: Linux

  • printk 补丁推出 v3,可以加速 Linux Console 的输出

As part of the long ongoing work to improve Linux’s printk() code, there has been work to allow for threaded console printing and allowing consoles to run at full-speed. That work is still ongoing but Tuesday saw the third iteration of those printk patches posted.

用于改进 Linux 的 prrintk() 性能的补丁已经开发了很长一段时间了,作为该项工作的一部分,人们还对 Console 打印输出增加了线程化支持,因为这样可以加速 Console 打印输出的执行效率。这项工作仍在继续,本周二我们看到发布了 printk 补丁的第三个版本。

来自 Linutronix 的开发人员 John Ogness 在补丁发布说明中总结如下:

This is v3 of a series to implement a kthread for each registered console. The kthreads locklessly retrieve the records from the printk ringbuffer and also do not cause any lock contention between each other. This allows consoles to run at full speed. For example, a netconsole is able to dump records much faster than a serial or vt console. Also, during normal operation, printk() callers are completely decoupled from console printing.

There are situations where kthread printing is not sufficient. For example, during panic situations, where the kthreads may not get a chance to schedule. In such cases, the current method of attempting to print directly within the printk() caller context is used.

为了提高 Console 打印输出的速度,这次补丁修改中使用了 kthread,并引入无锁方式从 printk ringbuffer 中读取数据,这避免了加锁导致的竞争和阻塞。但使用 kthread 也有潜在的风险,那就是在系统负载很高的情况下,kthread 有可能无法被调度导致输出延迟。对于这种极端情况,printk() 的内部实现会加以判断并自动切换到直接输出而取消使用 kthread。

Ogness 也指出这项工作并不会提高控制台打印输出的可靠性,因为补丁的修改的目的主要关注的是打印的性能,以及不阻塞其他的控制台输出。

更多介绍请访问新闻原文出处,“Patches Updated For Linux To Enjoy Consoles Running At Full-Speed” https://www.phoronix.com/scan.php?page=news_item&px=Printk-v3-Consoles-Full-Speed

关键词: Linux, printk

  • Ubuntu 22.04 LTS 发布

Ubuntu 22.04 LTS “Jammy Jellyfish” is set to be officially released this Thursday while available today are the hopefully-final release candidate images.

Ubuntu 22.04 LTS “Jammy Jellyfish” 随着 19 日发布了可能是最终发布的候选版本,于本周四宣告正式发布,来自 Canonical 的 Lukasz Zemczak 评论说:"From what we're seeing so far things seem to be looking quite nice, so fingers-crossed for those being our final ones!"

Ubuntu 22.04 在 Ubuntu 21.10 上引入了许多软件包更新,包括一些 GNOME 42 组件,现在默认使用带有 NVIDIA 驱动程序的 GNOME 的 Wayland 会话,包括 GNOME 三重缓冲补丁,用于内存不足处理的 systemd-oomd 集成,调整其 POWER 支持基线和许多其他更新。 Linux 5.15 LTS 将作为 Ubuntu 22.04 的默认内核版本,GCC 11.2 是默认的系统编译器,Mesa 22.0 提供开源图形驱动支持。 Canonical 一直在为 Ubuntu 开发新的桌面安装程序,但在 22.04 LTS 版本中,现有的 Ubiquity 仍然是默认设置。

更多介绍请访问新闻原文出处,“Ubuntu 22.04 LTS Now Available For Download” https://www.phoronix.com/scan.php?page=news_item&px=Ubuntu-22.04-Download

关键词: Ubuntu, Jammy Jellyfish

  • Debian 考虑改变其对待闭源 firmware 的态度

While most Linux distributions will include linux-firmware.git firmware files as the collection of firmware/microcode binaries needed by various mainline Linux kernel drivers, Debian does not. While the kernel drivers are open-source, the firmware files tend to be binary-only/closed-source, but these days are increasingly necessary for any level of functional support. Thus Debian is left in the awkward position of either providing poor hardware support and users left wondering what’s going on or to make some improvements to better deal with today’s world of firmware necessities.

虽然大多数 Linux 发行版会包含来自 linux-firmware.git 仓库的固件(firmware)文件作为各种主流 Linux 内核驱动程序所需的 firmware(固件)/ microcode 二进制文件,但 Debian 没有。虽然内核驱动程序是开源的,但 firmware 文件往往只提供二进制文件而且是封闭源代码的。这使得 Debian 处于一种比较尴尬的境地,要么提供糟糕的硬件支持,要么做出一些改进以更好地应对当今世界对 firmware 的需求。

回溯多年以来,大多数 Linux 系统,除了一些笔记本电脑和无线上网卡之外,尤其是台式机和服务器,通常可以在不需要加载额外固件文件的情况下运行。但近年来,出于安全原因,固件文件对于升级和更新 CPU 的 microcode 其作用越来越重要,大多数现代显卡需要二进制固件文件进行硬件初始化以享受 3D 加速,而其他硬件组件越来越依赖外部固件文件来实现各种级别的驱动程序支持。即使现在只考虑安全修复的原因,固件文件也越来越重要。我们甚至可以这么说:如果只使用开源的驱动程序,今天的大部分硬件在没有闭源固件文件的情况下都是垃圾。

著名的 Debian 开发人员 Steve McIntyre 正在与其他 Debian 工作人员合作,试图找出处理固件文件的最佳途径。Debian 的官方媒体目前不包含 non-free 的固件文件,但有单独的安装媒体可用,这并未广泛宣传,所以对于最终用户来说,这只会导致今天的硬件使用上的混乱。

为此,Debian 将努力制定一项通用决议,以征求更广泛的 Debian 社区关于固件处理应采取的措施。

更多介绍请阅读新闻出处,“Debian To Consider Changing How It Treats Closed-Source Firmware”: https://www.phoronix.com/scan.php?page=news_item&px=Debian-Considering-Firmware

关键词: Debian, firmware

  • QEMU 7.0 发布,进一步增强对多种 ARCH 的支持

QEMU 7.0 is out today as the newest version of this important piece of the open-source Linux virtualization stack.

QEMU 7.0 于 20 日发布。自去年年底 QEMU 6.2 以来,Red Hat 和其他组织的开发人员一直忙于开发 QEMU 7.0,因为这种开源模拟器被广泛用作自由软件 Linux 虚拟化堆栈的一部分。QEMU 7.0 带来了对 Intel AMX 的支持、以及对许多最新的 RISC-V 特性的支持等。QEMU 7.0 的一些亮点包括:

  • QEMU 在 RISC-V CPU 体系结构支持方面不断成熟。QEMU 7.0 支持正式发布的 RISC-V 的 Vector 扩展标准 1.0、最近加入主线的 RISC-V KVM、对 128 位 CPU 的实验性支持,以及对各种其他最新 RISC-V 扩展的支持。RISC-V virt 机器现在还支持多达 32 个内核。
  • 针对 x86,QEMU 7.0 增加了对 Intel Advanced Matrix Extensions(AMX)的支持。AMX 是今年晚些时候推出的 Xeon 可伸缩 “Sapphire Rapids” 处理器中的一大新增产品,贡献开源 的 Intel 工程师们一直在忙着为 Linux 软件生态提供对 AMX 的支持。
  • 针对 ARM,QEMU 增强了对 virt board 的支持、新增 Mori BMC board、新增对模拟 LVA/LPA/LPA2 特性的支持,以及对 Xilinx Versal virt 开发板仿真的改进。TCG 中移除对旧的 Armv4 和 Armv5 的支持。
  • QEMU 的 PCI/PCIe 代码中加入了对 SR/IOV 支持的早期版本。
  • 增加一个新的 “-display dbus” 选项用于为外部进程导出 QEMU 的显示。此 dbus 显示选项用于正在开发的 gtk4-rs widget,此功能可以用于未来的 GNOME Boxes、Virt-Viewer 和其他软件。
  • 以及其他改进 ……

更多介绍请阅读新闻出处,“QEMU 7.0 Released With Intel AMX Support, Many RISC-V Additions”: https://www.phoronix.com/scan.php?page=news_item&px=QEMU-7.0-Released

关键词: QEMU

  • Mold 1.2 发布,增加对 32位 ARM 支持

A new version of Mold has been released, the high-speed open-source linker successfully challenging the likes of GNU Gold and LLVM LLD.

Mold 发布新版本 1.2 ,进一步挑战 GNU Gold 和 LLVM 的 LLD。

Mold 1.2 是由 Rui Ueyama 开发。在 Mold 1.2 中添加了对 ARM32(32 位ARM)的支持,以及各种错误修复和兼容性改进,并且现在支持许多新的链接器选项。这些新选项包括 -start address-Tbss-Tdata-Ttext--oformat=binary--disable-new-dtags。同时,Mold 还将 --preload 选项标记为 “deprecated”。

新闻出处,“Mold 1.2 High-Speed Linker Brings 32-bit Arm Support, Bug Fixes”: https://www.phoronix.com/scan.php?page=news_item&px=Mold-1.2-Released

关键词: Mold

  • GNU Coreutils 9.1 发布

GNU Coreutils 9.1 is out this weekend as the latest feature update to these widely-used core utilities on Linux and other platforms with supplying cp, cat, ls, and other common commands.

GNU Coreutils 9.1 于上周六发布,作为在 Linux 和其他平台上广泛使用的核心工具类程序包,提供 cp、cat、ls 和其他一系列常用命令。

GNU Coreutils 9.1 提供了一系列修复、改进和其他修改。GNU Coreutils 9.1 中令人兴奋的是各种提高生产率的改进,比如 cat 现在使用新的 copy_file_range() 系统调用来实现,其他一些命令也使用更优化的系统调用来提高效率。这里简单列举一下重要的改进:

  • 在常规文件之间进行简单复制时,cat 命令现在优先使用 copy_file_range() 系统调用。copy_file_range() 系统调用用于在两个文件描述符之间将一系列数据从一个文件复制到另一个文件,而无需经过用户空间。
  • cp、mv 和 install 命令现在在复制到目录时使用类似于 openat() 的系统调用,这将避免一些竞争条件,而且效率更高。
  • ls 命令在默认情况下不再为具有 capabilities 的文件着色,因为它们很少使用,并且原先的着色处理导致每个文件的处理时间增加了约 30%。
  • 默认情况下,ls 和 stat 命令将不再尝试自动装载文件,而是恢复到早期版本的行为。
  • 使用 chmod -R 的递归执行时如果遇到符号链接将不再以错误状态退出。
  • 修复 macOS 上的复制(cp)行为,如果从 Apple APFS 文件系统复制到其他文件系统,可能会导致错误复制问题。还有其他针对 macOS 的修复。

新闻出处,“GNU Coreutils 9.1 Released With Efficiency Enhancements”: https://www.phoronix.com/scan.php?page=news_item&px=GNU-Coreutils-9.1

关键词: Coreutils

联系我们

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

tinylab wechat



Read Album:

Read Related:

Read Latest: