第 6 章 内核

Ceph 块设备支持

在 Red Hat Enterprise Linux 7.1 内核中添加了 libceph.korbd.ko 模块。这些 RBD 内核模块允许 Linux 主机将 Ceph 块设备视为常规磁盘设备条目,可以挂载到某个目录并使用标准文件系统格式化,比如 XFS 或者 ext4
注:Red Hat Enterprise Linux 7.1 目前不支持 CephFs 模块 ceph.ko

共存的 Flash MCL 更新

在 IBM System z 架构中的 Red Hat Enterprise Linux 7.1 启用微代码级升级(MCL)。可在不影响 flash 存储介质 I/O 操作的情况下应用这些升级,并通知用户 flash 硬件服务等级变更。

动态内核补丁

Red Hat Enterprise Linux 7.1 引进了 kpatch 作为技术预览,这个程序是一个动态“内核补丁程序”。kpatch 程序可让用户在不重启系统的情况下管理二进制内核补丁集合。注:只支持在 AMD64 和 Intel 64 架构中运行 kpatch

有一个以上 CPU 的 crashkernel

Red Hat Enterprise Linux 7.1 启用在多个 CPU 中引导 crashnernel 的功能。这个功能作为技术预览支持。

dm-era 目标

Red Hat Enterprise Linux 7.1 引进了 dm-era 设备映射器目标作为技术预览。dm-era 可跟踪在用户定义的时间段(即“era”)内写入的块。每个 era 目标事务将当前 era 作为单调递增的 32 位计数器维护。这个目标允许备份软件,以便追踪自上次备份后产生变化的块。它还可启用缓存的部分失效内容,以便在返回使用经销商快照后恢复缓存一致性。dm-era 目标主要与 dm-cache 目标配对。

Cisco VIC 内核驱动程序

在 Red Hat Enterprise Linux 7.1 中添加 Cisco VIC Infiniband 内核驱动程序作为技术预览。这个驱动程序允许在商用 Cisco 架构中使用类似远程目录内存访问(RDMA)的环境。

hwrng 中改进的熵管理

Red Hat Enterprise Linux 7.1 改进了通过 virtio-rng 对 Linux 虚拟机提供半虚拟硬件 RNG(hwrng)的支持。之前,需要在虚拟机内部启动 rngd 守护进程,并将其指向该虚拟机内核熵池。从 Red Hat Enterprise Linux 7.1 开始,删除了手动操作步骤。如果该虚拟机的熵低于具体水平,新的 khwrngd 线程会从 virtio-rng 中获取熵。让这个进程在后台运行,帮助所有 Red Hat Enterprise Linux 虚拟机利用改进的安全性能,即使用 KVM 主机提供的半虚拟硬件 RNG。

调度程序负载平衡性能提高

之前,调度程序负载平衡代码在所有闲置 CPU 之间平衡负载。在 Red Hat Enterprise Linux 7.1 中,只有需要对 CPU 进行负载平衡时才会代表闲置 CPU 执行闲置负载平衡。这个新行为降低了非闲置 CPU 的负载平衡率,进而减少了该调度程序的非必要任务负载,从而提高其性能。

调度程序中提高的 newidle 平衡

修改了该调度程序的行为,如果有可运行的任务,则会停止在 newidle 平衡代码中搜索任务,从而提高性能。

HugeTLB 支持单节点中 1GB 大页面分配

Red Hat Enterprise Linux 7.1 添加在运行时支持超大页面分配的功能,以便 1GB hugetlbfs 用户指定在运行时应在哪个非一致内存访问(NUMA)节点中分配 1GB hugetlbfs。

新的基于 MCS 的锁定机制

Red Hat Enterprise Linux 7.1 引进了新的锁定机制,MCS 锁。这个新锁定机制极大减少大系统中的 spinlock 负担,让 spinlock 在 Red Hat Enterprise Linux 7.1 中更有效地运行。

进程栈大小从 8KB 增加到 16KB

从 Red Hat Enterprise Linux 7.1 开始,将内核进程栈大小从 8KB 增加到 16KB,以帮助使用栈空间的超大进程。

在 perf 和 systemtap 中启用 uprobe 和 uretprobe

在 Red Hat Enterprise Linux 7.1 中,perf 命令和 systemtap 脚本的 uprobeuretprobe 功能正常工作。

端-到-端数据一致性检查

在 Red Hat Enterprise Linux 7.1 中全面支持 IBM System z 系统中的端-到-端数据一致性检查。 这个功能提高了数据完整性,更有效地防止数据崩溃数据丢失。

32-位系统中的 DRBG

在 Red Hat Enterprise Linux 7.1 中,已将确定随机字节生成器(deterministic random bit generator,DRBG)更新至可用于 32 位系统。

NFSoRDMA 可用

为 Red Hat Enterprise Linux 7.1 启用 NFSoRDMA 服务作为技术预览。这样就可以让想要使用远程直接内存访问(RDMA)的用户在使用 Red Hat Enterprise Linux 7 NFS 服务器进行传输时使用 svcrdma 模块。

支持大 Crashkernel

由于 Red Hat Enterprise Linux 7.1 的最大支持内存为 6TB,因此 Red Hat Enterprise Linux 7.1 已全面支持使用超大内存系统中的 Kdump 内核崩溃转储机制。

安全启动机器中支持的 Kdump

在 Red Hat Enterprise Linux 7.1 中,可在启用安全启动的机器中支持 Kdump 崩溃转储机制。

固件辅助崩溃转储

Red Hat Enterprise Linux 7.1 引进了对固件辅助转储(fadump)的支持,为 kdump 提供备用崩溃转储工具。将崩溃转储保存到磁盘后,固件辅助功能为普通用户提供了释放保留转储内存的机制。这样就不需要在执行转储后重启系统,因此减少宕机时间。另外,在用户空间显示 fadump 使用 kdump 架构,同时与现有 kdump init 脚本兼容。

IBM System z 的运行时检测

为在 IBM System z 中运行的 Red Hat Enterprise Linux 7.1 添加运行时检测功能作为技术预览。运行时检测为大量可用于 IBM zEnterprise EC12 系统的应用程序启用高级分析和执行功能。

Cisco usNIC 驱动程序

Cisco Unified Communication Manager(UCM)服务器有一个附加功能,提供 Cisco 专有用户空间网络接口控制器(usNIC),允许为用户空间应用程序执行类似远程直接内存访问(RDMS)的操作。作为技术预览,Red Hat Enterprise Linux 7.1 中包含 libusnic_verbs 驱动程序,这样就可以通过基于 Verbs API 的标准 InfiniBand RDMA 编程方法使用 usNIC 设备。

Intel 以太网服务器适配器 X710/XL710 驱动程序更新

i40ei40evf 内核驱动程序更新至其最新 upstream 版本。Red Hat Enterprise Linux 7.1 使用这些更新的驱动程序作为技术预览。