锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

LWN:5.19 合并窗口第一部分!

时间:2022-09-05 03:00:00 薄型红外对射传感器光电开关ex薄型滑动电位器lowwi型温度传感器

关注就能看到更多这么棒的文章~

5.19 Merge window, part 1

By Jonathan Corbet
May 27, 2022
DeepL assisted translation
https://lwn.net/Articles/896140/

写这篇文章时,针对 5.19 开发周期已经接近 4600 个 non-merge changeset 合入 mainline 仓库了。5.19 合并窗口进展良好。目前,合并的变化涵盖了许多领域,包括 kernel 核心、架构支持、网络、安全、虚拟化等。继续阅读,了解合并窗口的第一部分。

目前合并的有趣变化包括:

Architecture-specific

  • 移除了若干 x86 特有的 boot option (nosep, nosmap, nosmep, noexec, and noclflush)。每个 option 都是用来关闭的 CPU 目前不再需要关闭相应的功能之一

  • 彻底移除了 x86 上的 a.out 支持可执行格式,以前是 5.1 的时候已经 deprecated 了。

  • x86 split-lock detection 机制得到了强化。不再仅仅是对进程使用 split lock 时给出 warning (缺乏行为),并将尽可能减缓相应过程的执行。这可以确保系统的正常性能,也许可以获得相应的应用程序 fix 了。

  • 新增的 Intel “in-field scan” 该机制可以在正式部署的系统中检测和发现 CPU 问题。相应的文档 commit 里面有更多的信息。

  • xtenda 架构支持更多的功能,包括 SMP coprocessors, KCSAN, hibernation 等等。

  • m68k 建筑实现了一个基础 android Goldfish 虚拟机模拟器。

  • Arm 支持了 Scalable Matrix Extension (只支持 host mode,guest 系统不支持)

Core kernel

  • 对 io_uring 子系统进行了一些改进。新增了 IORING_RECVSEND_POLL_FIRST flag,如果设置在网络操作中,操作将直接进入 polling 模式,而不是试图先传输。这样,当调用者不需要立即进行此操作时,可以节省一些费用。还增加了一些 flag 来减轻 fixed file descriptors 管理工作。accept() 支持了 "multi-shot" 模式允许在一次操作中 accept 多个连接。修改文件扩展属性的一些新操作。支持了 socket() 系统调用。最后,支持 "passthrough" 可以操作 NVMe 命令直接发送给设备。
    所有这些新的 API 没有文档。

  • 可以在 BPF maps 中存放 typed 指针。相应的 merge commit 细节更多。不要跟随这个功能。dynamic BPF pointers混在一起,后者也会包括在内 5.19 请参考相关内容 merge commit。

Filesystems and block I/O

  • EROFS 大量的重构只读文件系统来利用它 fscache 机制。实测可以显著改善那些基于许多操作的操作 EROFS 映像文件的 container 容器的系统性能。 merge 更多介绍描述。

  • EROFS 额外的工作 fscache 添加了一个 on-demand mode,参看相关 commit

Hardware support

  • 硬件监测。Aquacomputer Octo 温度传感器和风扇控制器,Aquacomputer Farbwerk 360 温度传感器,Infineon XDPE152 电压调节器,Microchip LAN9668 温度传感器,以及 Nuvoton NCT6775F I2C 接口。

  • 杂项。Nvidia SN2201 平台开关,Silicon Mitus SM5703 电压调节器,以及联发科 SPI NAND 闪存接口。

  • 网络。Marvell Octeon PCI 终端网卡,CTU CAN-FD IP 核(见文档),Analog Devices 工业以太网 T1L PHY,pureLiFi LiFi 无线 USB 适配器,联发科 PCIe 5G WWAN modem T7xx 适配器,德州仪器 DP83TD510 以太网 10Base-T1L PHY,Sunplus 双 10M/100M 以太网适配器,以及 Realtek 8852CE PCI 无线网络(Wi-Fi 6E)适配器。

    此外,一些旧的网络驱动程序已经被删除,因为它们没有被维护,估计也没有被使用。

  • 此外,电源管理子系统支持那些 "artificial" power scale 操作设备。简而言之,这意味着该设备提供了关于不同功率状态的相应效率的信息,但这些信息现实世界的标准。相应的文件提交包含了更多的信息。

Networking

  • BIG TCP patch set 该工作已被合并,允许在数据中心网络上发送巨大的信息 IPv6/TCP 数据包。

  • 继续添加 packet-drop 原因标记使管理员更容易理解为什么网络数据包不能通过系统。

  • multipath TCP(MPTCP)现在协议可以在某些协议中使用 multipath 退回常规功能 TCP。

  • 新增一个用户空间 API 用于管理 MPTCP flow。文档不多,但这次 merge commit 有一个介绍。

Security-related

  • 各种保密计算(confidential-computing)机制允许将机密数据推入虚拟机,不暴露给虚拟机 host 系统 EFI 现在子系统可以通过了 securityfs 下一个目录(security/coco)暴露这些机密信息 guest。commit 相关文件给出了更多信息。

  • kernel 的 lockdown 该模式可以防止特权过程改变内核控制以外的内存。或者,至少这是它最初的目的。事实证明,只要启动内核调试器(kernel debugger)很容易绕过 lockdown 机制。有一个 commit 合入了 mainline(当然也适用 stable update),填补这个漏洞。

  • 为了提高鲁棒的性能,对随机数生成器进行了一些改进。 merge commit 包括概述。

  • 支持了 structure randomizaiton hardening 加固,依赖 Clang 编译器第 15 版

  • Landlock security module 现在支持重命名文件。

  • Integrity Measurement Architecture (IMA) 现在可以用了 fs-verity 验证文件摘要值。

  • "unprivileged BPF "含义发生了一些变化。禁用于当前内核 unprivileged BPF 会使得所有 bpf() 不能使用系统调用命令。而在 5.19 中,非特权进程将可以访问那些实际上不会创建 object 的命令。这使得有特权的过程可以加载 BPF 程序,无特权的过程可以与之互动。merge commit 更多信息。

Virtualization and containers

  • 支持 AMD 的 Secure Nested Paging 功能。简而言之,当虚拟机从外部访问中获得加密内存时,该功能将通知虚拟机。这种机制的用途之一是挫折重放攻击(replay attack)。

  • 支持英特尔可信域扩展(TDX, Trusted Domain Extensions)该机制的支持提供了一些类似的功能。更多信息请参阅文档提交。

Internal kernel changes

  • Objtool 它是内核构建系统的一部分,用于对待 object 文件进行了一些转换,其界面被完全重构。 commit 概述了相关的变化,还有一个文档 commit 提供了 objtool 提供了一些功能。

  • 继续向 memory folios 迁移。有一个 pull request 将某些地址空间的操作转换为新的(类似的)操作。

  • SLUB 内存分配器的调试基础设施得到了改进;有关更多信息,请参阅文件。

  • 将打印内核信息转移到 per-console 的 thread(LWN 2019 年文中有描述)的工作终于合并了。这应该可以避免那些缓慢的工作 console 阻止日志记录或延迟系统。printk()的 indexing 该功能也被记录在文档中。

5.19 并窗口刚刚开始;可以预计它将一直开放到 6 月 5 日。窗口关闭的时候 LWN 会对后半部分的内容进行总结,敬请关注。

全文完
LWN 文章遵循 CC BY-SA 4.0 许可协议。

欢迎分享、转载及基于现有协议再创作~

长按下面二维码关注,关注 LWN 深度文章以及开源社区的各种新近言论~

058dd689064d62eb77ed1bc1f99d7d46.png

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章