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

The first half of the 5.13 merge window

By Jonathan Corbet
April 30, 2021
DeepL assisted translation
https://lwn.net/Articles/854536/

截至目前,在 5.13 开发周期中已经有超过 7800 个 non-merge commit 合入了 mainline 仓库。看来 5.13 确实会比上一个版本内容更加多。到目前为止已经合并的成果在内核的各个子系统都有分布,请继续阅读到目前为止已经合入内容的总结。

Architecture-specific

  • 一些支持苹果 M1 处理器的准备工作已经被合并了。

Core kernel

  • 增加了一个新的 "misc" cgroup,旨在处理简单的资源(也就是可以用一个直接的计数来管理的)。它的第一个用途是管理用于 AMD 安全加密虚拟化(SEV,secure encrypted virtualization)机制的 address-space ID。可以在这个文档提交中找到更多信息。

  • io_uring 的轮询操作现在有了 "multishot" 模式。通常情况下,跟其他任何 io_uring 操作一样,一旦一个 poll 操作触发了 completion event,就会从 ring 中移除。而 multishot poll 则会保持繁忙状态(active),也就是可以提交一次来产生多个 completion event,这是一个独特的功能。

Filesystems and block I/O

  • EROFS 文件系统新增 "big pcluster" 对于压缩性能提供了显著改进。

  • 新增 rasize=SMB3,这个 mount 选项会增加 readahead 窗口大小,可以改善某些工作场景下的性能。

Hardware support

  • Graphics :支持了通用的 USB 方式连接的显示器、Chipone ICN6211 MIPI-DSI/RGB converter bridges,Lontium LT8912B DSI/HDMI bridge。

  • Hardware monitoring : 英飞凌 IR36021 电源控制器、ST STPDDC60 multicell 控制器、NZXT Kraken X42/X51/X62/X72 液冷、BluTek BPA-RS600 电源、FSP/3Y-Power 电源以及 Maxim MAX15301 稳压器。

  • Industrial I/O :博世 BMI088 加速度计,德州仪器 ADS131E04、ADS131E06 和 ADS131E08 模数转换器,以及 ChromeOS EC MKBP 距离传感器。

  • 杂项 :新丰 WPCM450 中断控制器、瑞萨 79RC3243x 中断控制器、微软 Surface 分离系统、微软 Surface 电源、微软 Surface 电池、研华 ACPI 软件按钮、技嘉 WMI 温度传感器、博通 NVRAM 控制器。Synopsys DesignWare xData PCIe 控制器、Microchip Sparx5 SerDes 以太网 PHY、Marvell CP110 UTMI USB PHY、Qualcomm SDM660 和 SM8350 interconnects、基于 Broadcom 8250 的串口、Xilinx USB 控制器、Apple 中断控制器、鲲鹏 SoC 上的 HiSilicon SPI 控制器、NXP i.MX8 QXP/QM JPEG 编码器/解码器、Rohm BD71817、BD9576MUF 和 BD9573MUF 电源管理 IC、Actions Semi ATC260x 电源管理 IC、Netronix 嵌入式控制器、Rockchip RK3568 时钟控制器和 MediaTek MT7621 时钟控制器。

  • 许多旧的驱动程序已经被删除,包括 wimax 设备、谷歌 "gasket" 驱动框架、"sysace"和 "umem" block driver,以及一些旧的串口驱动程序。

  • 还值得注意的是,"comedi" data-acquisition 驱动程序在驻扎了 13 年并且合入了超过 8700 个补丁之后,已经从 staging tree 中毕业。

Security-related

  • 内核的 "trusted keys" 机制已经变得更加通用,允许可信密钥来自可信平台模块(trusted platform module)以外的其他来源,毕竟可信平台模块并不是所有系统都具有的。具体来说,在可信执行环境(TEE,trusted execution environment)中运行的代码也可以提供可信密钥,这是通过一个新增 trusted.source 命令行参数来控制的。更多的信息可以在这个文档补丁中找到。

  • 内核现在能够管理 ASN.1 格式的可信密钥。

  • 直到现在,如果 UEFI 安全启动黑名单中的证书是 EFI_CERT_X509_GUID 格式,内核会忽略这些证书;这可能会导致系统使用被撤销的密钥启动。这个问题被称为 CVE-2020-26541,已经在 5.13 版本中被修复(后面可能会做对其他 kernel 版本的 backport)。还有一个新的内核配置选项,允许在启动时撤销已经预先加载的证书。

  • 内核的加密层(cryptographic layer)现在可以执行椭圆曲线数字签名算法(ECDSA)验证。

  • 内核现在可以在每次系统调用时对内核堆栈的确切位置进行随机化处理,这会使得恶意攻击更难利用相关漏洞;详情见此提交。

  • 对 Clang 的 control-flow integrity 机制的支持已经合并了。从这个提交开始:

    通过 CONFIG_CFI_CLANG,编译器在每次间接函数调用之前都会注入一个运行时检查,以确保目标是一个具有正确的静态类型的有效函数。这限制了可以调用的目标地址,使攻击者更难利用那些通过修改存放在内存中的函数指针的漏洞。

    CFI 目前只适用于 arm64 架构,但 x86 支持正在进行中。

  • SELinux security module 安全模块可以使用内核的完整性检测架构(IMA,integrity measurement architecture)来验证,确保其策略没有被篡改过。这个提交包含了一些关于如何使用这一功能的信息。

Internal kernel changes

  • 来自实时抢占库(realtime preemption tree)的软件中断处理代码已经进入了 mainline。在实时模式下,所有的软件中断都在内核线程中处理,这样就可以跟其他普通线程一样被更高优先级的进程抢占掉。

  • 有一个新的 helper library 来处理 network filesystems 所需的许多常见功能;更多信息请看这个文档补丁。

  • printk()中使用的 logbuf_lock 已经被移除,使内核离 lockless 的 printk()实现又近了一步。

快速查看了一下,目前在 linux-next 中有将近 6400 个提交还没有被拉入主线;这表明 5.13 的合并窗口还远未结束。按照通常的时间表来推算,合并窗口可望在 5 月 9 日关闭,5.13 版本将在 6 月底或 7 月初发布。像往常一样,一旦合并窗口关闭,LWN 将介绍后半程的内容,敬请关注。

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

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

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

LWN:5.13合并窗口第一部分!相关推荐

  1. LWN:5.17 合并窗口第一部分!

    关注了就能看到更多这么棒的文章哦- The first half of the 5.17 merge window By Jonathan Corbet January 13, 2022 DeepL ...

  2. LWN: 5.12 合并窗口,第一部分!

    关注了就能看到更多这么棒的文章哦- 5.12 Merge window, part 1 By Jonathan Corbet February 22, 2021 DeepL assisted tran ...

  3. LWN:5.18 合并窗口,第二部分!

    关注了就能看到更多这么棒的文章哦- 5.18 Merge window, part 2 By Jonathan Corbet April 4, 2022 DeepL assisted translat ...

  4. LWN:5.8内核合并窗口第二部分!

    关注了就能看到更多这么棒的文章哦- 5.8 Merge window, part 2 By Jonathan Corbet June 14, 2020 原文来自:https://lwn.net/Art ...

  5. LWN: 6.0 合并周期,第二部分!

    关注了就能看到更多这么棒的文章哦- 6.0 Merge window, part 2 By Jonathan Corbet August 15, 2022 DeepL assisted transla ...

  6. [blender]拖拽新建、合并窗口

    拖拽新建窗口 打开BLENDER,移动鼠标如下图所示位置,鼠标光标变为如下图所示的光标,按住鼠标左键 不放 向左进行拖拽, 松开鼠标左键,就可以获得新的窗口 拖拽合并窗口 移动鼠标如下图所示位置,鼠标 ...

  7. 利用c语言在屏幕上画出窗口,第一课:创建一个windows窗口

    跟我一起学图形编程                               作者:姚明联系方式: 欢迎使用我的图形学教程.我是计算机专业的学生,对图形图像技术有浓厚的兴趣,就读期间广泛的涉及相关知 ...

  8. Vue合并el-table第一列相同数据

    业务需求: 需要将el-table表格第一列相同的内容进行合并. 解决办法: el-table中使用 :span-method="objectSpanMethod"方法 vue标签 ...

  9. PNET的桥接与CRT合并窗口

    目录 一.PNET的桥接 1.本地电脑添加loopback网卡,设置地址 2.为新添加的本地环回网卡设置IPv4地址 3.编辑VM虚拟机中的pnet模拟器,添加网卡 4.vm虚拟机桥接loopback ...

最新文章

  1. Leangoo敏捷工具如何升级至企业版
  2. python 安装第三方库pygame
  3. Redis高效性探索--线程IO模型,通信协议
  4. memcachedd事件模型
  5. 电子商务入门、实操、行业分析及公司案例等精彩系列问答有哪些?
  6. Golden Gate - 概念和机制
  7. 龙卷风袭击广东致6死215伤 广州停
  8. DrawIO 基于MinIO以及OSS私有云方案
  9. c语言码流文件,视频文件大小的计算以及视频在网络上的传输(KB、kb、GB、kbps码率)...
  10. AUTOMATE THE BORING STUFF WITH PYTHON读书笔记 - 第18章:SENDING EMAIL AND TEXT MESSAGES
  11. Asp.net 周旭龙 系列总结
  12. HDUOJ 5651 xiaoxin juju needs help
  13. python爬虫网易云音乐评论最多的歌_Python3实战之爬虫抓取网易云音乐的热门评论...
  14. 常见的系统架构设计介绍
  15. 掰碎了的正则表达式 : Java 篇
  16. 41份艾媒舆情-舆情相关行业报告
  17. c语言作业题一答案,C语言上机作业题及答案
  18. 别具一格的Flash时钟
  19. Android教程之如何使用自定义字体
  20. Linux 编译C++程序的四种方法

热门文章

  1. 精准医学:临床表观遗传学,把握转化机会|治疗研究
  2. Android studio中.setText使用
  3. Laravel微信Native支付、微信jsapi支付
  4. 第一台64位RISC-V便携式计算机上市 内置平头哥玄铁C906处理器
  5. ubuntu鼠标变成空心十字解决办法
  6. Discussion 1 某刀削面馆的模拟调研
  7. 使用Python中自带的print输出带有颜色或者背景的字符串
  8. Django+Layui+SQLite+JQuery实现一个简单的留言板
  9. angularjs2 mysql_AngularJS2初学小结
  10. [转]你所不知道的超级瘦腿运动——空中蹬自行车