7.5. 内核
上游补丁的恢复允许一些 systemd
服务和用户空间工作负载按预期运行
对 mknod()
系统调用的上游社区的向后移植变化导致 open()
系统调用在设备节点方面比 mknod()
更加特权。因此,容器中的多个用户空间工作负载和一些 systemd
服务变得无响应。在这个版本中,错误的行为已被恢复,且不再发生崩溃。
(BZ#1902543)
改进了内存记帐操作中的性能回归
在以前的版本中,slab 内存控制器会增加每个 slab 的内存核算操作的频率。因此,因为内存核算操作数量增加,性能回归。为解决这个问题,内存记帐操作得以简化,可以尽可能少地使用缓存和少量的原子操作。因此,一些性能回归仍然存在。但是,用户体验更好。
(BZ#1959772)
在发布多个 SysRg-T 魔力密钥时,不再会出现硬锁定和系统 panic
向系统发出多个 SysRg-T 魔力键序列,导致中断在较长时间内被禁用,具体取决于串行控制台速度以及正在打印的信息量。这一长时间的禁用中断时间通常会造成硬锁定后出现系统 panic。在这个版本中,SysRg-T 键序列可显著缩短关闭中断的时间段。因此,在上述场景中不会出现硬锁定或系统 panic。
(BZ#1954363)
某些 BCC 工具不再显示"macro redefined"警告
某些编译器内核标头中的宏重新定义会导致一些 BPF Compiler Collection(BCC)工具显示以下零影响警告:
warning: '__no_sanitize_address' macro redefined [-Wmacro-redefined]
在这个版本中,通过删除宏重新定义解决了这个问题。因此,相关的 BCC 工具不会在这种情况下显示警告。
(BZ#1907271)
kdump
不再无法在 SSH 或 NFS 目标上转储 vmcore
在以前的版本中,当将网络接口卡(NIC)端口配置为静态 IP 地址并将 kdump
设置为在 SSH 或 NFS 转储目标上转储 vmcore
时,kdump
服务时带有以下错误信息:
ipcalc: command not found
因此,对 SSH 或 NFS 的 kdump
的转储目标最终会失败。
在这个版本中解决了这个问题,kexec-tools
工具不再依赖于 ipcalc
工具进行 IP 地址和子网掩码计算。因此,当您使用 SSH 或者 NFS 转储目标时,kdump
可以按预期工作。
(BZ#1931266)
某些网络内核驱动程序现在可以正确地显示其版本
RHEL 8.4 中更改了许多网络内核驱动程序的模块版本控制行为。因此,这些驱动程序不会显示其版本。或者,在执行 ethtool -i
命令后,驱动程序会显示 内核 版本,而不是 驱动程序 版本。在这个版本中,通过提供内核模块字符串解决了这个错误。因此,用户可以决定受影响内核驱动程序的版本。
(BZ#1944639)
hwloc
命令现在返回单一 CPU Power9 和 Power10 逻辑分区的正确数据
使用 2.2.0 版本的 hwloc
实用程序,运行 Power9 或 Power10 CPU 的任何单节点非统一内存访问(NUMA)系统都将被视为"禁用"。因此,所有 hwloc
命令不起作用,因为 NODE0(套接字 0,CPU 0)是离线状态,hwloc
源代码期望 NODE0 为在线状态。此时会显示以下出错信息:
Topology does not contain any NUMA node, aborting!
在这个版本中,hwloc
已修复,以便其源代码检查 NODE0 在查询它前是否已在线。如果 NODE0 未在线,代码会继续至下一个在线 NODE。
因此,hwloc
命令不会在上述场景中返回任何错误。