Chapter 44. Kernel
Heterogeneous memory management included as a Technology Preview
Red Hat Enterprise Linux 7.3 introduced the heterogeneous memory management (HMM) feature as a Technology Preview. This feature has been added to the kernel as a helper layer for devices that want to mirror a process address space into their own memory management unit (MMU). Thus a non-CPU device processor is able to read system memory using the unified system address space. To enable this feature, add
experimental_hmm=enable
to the kernel command line. (BZ#1230959)
criu rebased to version 3.5
Red Hat Enterprise Linux 7.2 introduced the
criu
tool as a Technology Preview. This tool implements Checkpoint/Restore in User-space (CRIU)
, which can be used to freeze a running application and store it as a collection of files. Later, the application can be restored from its frozen state.
Note that the
criu
tool depends on Protocol Buffers
, a language-neutral, platform-neutral extensible mechanism for serializing structured data. The protobuf and protobuf-c packages, which provide this dependency, were also introduced in Red Hat Enterprise Linux 7.2 as a Technology Preview.
In Red Hat Enterprise Linux 7.5, the criu packages have been upgraded to upstream version 3.5, which provides a number of bug fixes and enhancements. In addition, support for IBM Z and the 64-bit ARM architecture has been added. (BZ#1400230, BZ#1464596)
kexec
as a Technology Preview
The
kexec
system call has been provided as a Technology Preview. This system call enables loading and booting into another kernel from the currently running kernel, thus performing the function of the boot loader from within the kernel. Hardware initialization, which is normally done during a standard system boot, is not performed during a kexec
boot, which significantly reduces the time required for a reboot. (BZ#1460849)
kexec fast reboot as a Technology Preview
As a Technology Preview, this update adds the
kexec fast reboot
feature, which makes the reboot significantly faster. To use this feature, you must load the kexec kernel manually, and then reboot the operating system. It is not possible to make kexec fast reboot
as the default reboot action.
Special case is using
kexec fast reboot
for Anaconda
. It still does not enable to make kexec fast reboot
default. However, when used with Anaconda
, the operating system can automatically use kexec fast reboot
after the installation is complete in case that user boots kernel with the anaconda option. To schedule a kexec reboot, use the inst.kexec
command on the kernel command line, or include a reboot --kexec
line in the Kickstart file. (BZ#1464377)
Unprivileged access to name spaces can be enabled as a Technology Preview
You can now set the
namespace.unpriv_enable
kernel command-line option if required, as a Technology Preview.
The default setting is off.
When set to
1
, issuing a call to the clone() function with the flag CLONE_NEWNS
as an unprivileged user no longer returns an error and allows the operation.
However, to enable the unprivileged access to name spaces, the
CAP_SYS_ADMIN
flag has to be set in some user name space to create a mount name space. (BZ#1350553)
SCSI-MQ as a Technology Preview in the qla2xxx
driver
The
qla2xxx&
driver updated in Red Hat Enterprise Linux 7.4 can now enable the use of SCSI-MQ (multiqueue) with the ql2xmqsupport=1
module parameter. The default value is 0
(disabled). The SCSI-MQ functinality is provided as a Technology Preview when used with the qla2xxx
driver.
Note that a recent performance testing at Red Hat with async IO over Fibre Channel adapters using SCSI-MQ has shown significant performance degradation under certain conditions. A fix is being tested but was not ready in time for Red Hat Enterprise Linux 7.4 General Availability. (BZ#1414957)
NVMe over Fibre Channel is now available as a Technology Preview
The NVMe over Fibre Channel transport type is now available as a Technology Preview. NVMe over Fibre Channel is an additional fabric transport type for the Nonvolatile Memory Express (NVMe) protocol, in addition to the Remote Direct Memory Access (RDMA) protocol that was previously introduced in Red Hat Enterprise Linux.
To enable NVMe over Fibre Channel in the
lpfc
driver, edit the /etc/modprobe.d/lpfc.conf
file and add one or both of the following options:
- To enable the NVMe mode of operation, add the
lpfc_enable_fc4_type=3
option. - To enable target mode, add the
lpfc_enable_nvmet=<wwpn list>
option, where<wwpn list>
is a comma-separated list of World-Wide Port Name (WWPN) values with the0x
prefix.
To configure an NVMe target, use the
nvmetcli
utility.
NVMe over Fibre Channel provides a higher-performance, lower-latency I/O protocol over existing Fibre Channel infrastructure. This is especially important with solid-state storage arrays, because it allows the performance benefits of NVMe storage to be passed through the fabric transport, rather than being encapsulated in a different protocol, SCSI.
In Red Hat Enterprise Linux 7.5, NVMe over Fibre Channel is available only with Broadcom 32Gbit adapters, which use the
lpfc
driver. (BZ#1387768, BZ#1454386)
perf cqm
has been replaced by resctrl
The Intel Cache Allocation Technology (CAT) was introduced in Red Hat Enterprise Linux 7.4 as a Technology Preview. However, the
perf cqm
tool did not work correctly due to an incompatibility between perf infrastructure and Cache Quality of Service Monitoring (CQM) hardware support. Consequently, multiple problems occurred when using perf cqm
.
These problems included most notably:
perf cqm
did not support the group of tasks which is allocated usingresctrl
perf cqm
gave random and inaccurate data due to several problems with recyclingperf cqm
did not provide enough support when running different kinds of events together (the different events are, for example, tasks, system-wide, and cgroup events)perf cqm
provided only partial support for cgroup events- The partial support for cgroup events did not work in cases with a hierarchy of cgroup events, or when monitoring a task in a cgroup and the cgroup together
- Monitoring tasks for the lifetime caused
perf
overhead perf cqm
reported the aggregate cache occupancy or memory bandwidth over all sockets, while in most cloud and VMM-bases use cases the individual per-socket usage is needed
With this update,
perf cqm
has been replaced by the approach based on the resctrl
file system, which address all of the aforementioned problems. (BZ#1457533, BZ#1288964)