第 2 章 内核

光纤通道协议:端到端数据一致性检查

在端到端(E2E)数据一致性检查中使用改进的 T10 DIF SCSI 标准的 zFCP 部分,在红帽企业版 Linux 6.4 中提高了主机适配器和存储服务器之间的数据完整性。

IBM System z 的 Flash Express 支持

用于 IBM System z 的存储类内存(SCM)是一个数据存储设备分类,合并了存储和内存这两个属性。用于 System z 的 SCM 现在支持 Flash Express 内存。可通过扩展的异步数据移动程序(EADM)子频道评估 SCM 增加。每增加一个都代表一个块设备。这个功能提高了页传输速率以及多临时存储(例如:数据仓库)的访问性能。

打开 vSwitch 内核模块

红帽企业版 Linux 6.4 包括 Open vSwitch 内核模块,它是红帽提供的分级产品的启动程序。只有在与那些包括附带用户空间程序的产品合用时才会支持 Open vSwitch。请注意,没有所需用户空间程序,Open vSwitch 就无法工作,也无法启用。有关详情请参考知识库文章:https://access.redhat.com/knowledge/articles/270223

对比引导的系统和转储的系统

这个功能可以让您将引导的系统与转储的系统进行比较,迅速分析出可能由映像迁移造成的更改。要识别虚拟机,则要使用 stsistfle 数据。新的功能 lgr_info_log() 可将当前数据(lgr_info_cur)与最后记录的数据(lgr_info_last)进行比较。

更新 Perf 工具

已将 perf 工具更新至 upstream 版本 3.6-rc7,提供大量 bug 修复和改进。以下是值得关注的改进列表:
  • 添加 Kprobe 事件支持。
  • 已包含新的 perf 事件命令行语法引擎,它可允许在事件组定义中使用大括号({}),例如:{cycles,cache-misses}
  • 已改进 perf 注释浏览器,使其允许通过 ASM 调用和转移导航。
  • 已将 perf 工具更新至按用户提供新的 --uid 命令行选项。使用此选项时,perf 只显示指定用户的任务。
  • perf 工具现在提供大范围的自动测试。

Uncore PMU 支持

红帽企业版 Linux 6.4 提供的内核为 Intel Xeon 处理器 X55xx 和 Intel Xeon 处理器 X56xx 处理器产品系列添加了 perf 事件子系统的 “uncore” 性能监控单元(PMU)支持。“uncore” 是指物理处理器软件包中的子系统,这些软件包由多个处理器核心共享,例如 L3 缓存。使用 uncore PMU 支持可轻松在软件包级别收集性能数据。
另外还启用了 PMU 事件解析以便使用 perf 进行调试。

减少 memcg 内存使用

例如:内存控制组维护其最新使用(LRU)列表以便回收内存。这个列表位于全局分区 LRU 列表的顶部。在红帽企业版 Linux 6.4 中,已通过禁用全局分区列表减少 memcg 内存使用,并将其用户转换为根据内存 cgroup 列表操作。

内存回收和压缩

红帽企业版 Linux 6.4 使用的内核在大量分配请求或者内存压力下使用回收和压缩功能。

支持事务执行程序运行时检测程序

支持 Linux 内核中的事务执行程序(在 IBM zEnterprise EC12 中可用)可帮助消除会影响性能的软件锁定,并为驱动器的较高度事务流量提供增加的延展性和并行性。支持运行时检测程序(在 IBM zEnterprise EC12 中可用)可为描述程序代码提供高级机制,以便提高对新 IBM JVM 所生成代码的分析和优化。

失效开放(Fail-open)模式

红帽企业版 Linux 6.4 添加在使用网络过滤器的 NFSUEUE 目标时对新的失效开放模式的支持。这个模式允许用户暂时禁用数据包检查,并保持大网络流量下的连接性。

全面支持用于 IBM System z 的 kdump 和 kexec 内核转储机制

在红帽企业版 Linux 6.4 中,除 IBM System z 单机和 hypervisor 转储机制外,还完全支持用于 IBM System z 系统的 kdump/kexec 内核转储机制功能 。自体储备下限设定为 4 GB,因此内存超过 4 GB 的 IBM System z 系统会启用 kdump/kexec 的转储机制。
必须有足够的内存,因为 kdump 默认需要约 128 MB。这在执行红帽企业版 Linux 6.4 升级时尤为重要。还必须有足够的磁盘空间以便在系统崩溃时保存转储。
您可以通过 /etc/kdump.confsystem-config-kdump 或者 firstboot 禁用 kdump。

KVM 的 TSC 底线支持

TSC 底线计时器是本地 APIC(LAPIC)计时器的一个新模式,它可根据 TSC 底线,在当前 APIC 时钟技术间隔中生成一次性计时器中断。它提供更准确的计时器中断(小于一秒),从而让 OS 调度程序更准确。KVM 现在为询价提供这个功能。

持久的设备命名

这个功能保存设备名称映射(例如:sdasdb 及其他),并在内核信息中持久保持设备名称(由 udev/dev/disk/by-*/ 中提供)。dmesg 显示的内核 /dev/kmsg 日志现在可以显示符号链接信息,这些信息由 udev 为内核设备生成,并以下面的格式显示:
udev-alias: <device_name> (<symbolic_link> <symbolic link> …)
所有日志分析程序都可以显示这些信息,同时也使用 syslog/var/log/messages 中保存这些信息。

linuxptp 软件包

红帽企业版 Linux 6.4 中将 linuxptp 作为技术预览为 Linux 的 IEEE 标准 1588 在准确时间协议(PTP)中使用。双重设计目标的目的是要提供该标准的鲁棒部署,同时使用由 Linux 内核提供的最相关和先进的程序变成界面(API)。支持古老的 API 和其他平台不是它的目标。

透明的大页面文档

已在下述文件中问透明大页面添加文档:
/usr/share/doc/kernel-doc-<version>/Documentation/vm/transhuge.txt

转储目标的状态支持

在红帽企业版 Linux 6.4 中,/usr/share/doc/kexec-tools-2.0.0/kexec-kdump-howto.txt 文件提供 Dump Target support status 项下支持、不支持以及未知转储目标的完整列表。