Notable Changes
The following notable changes and features are included in this update:
-
Automatic NUMA balancing disabled by default
In this update, the auto-enabling of automatic Non-uniform memory access (NUMA) balancing has been disabled. This change addresses several issues that were encountered on systems with multiple NUMA nodes, where automatic NUMA balancing was enabled. Symptoms that were reported included high
iowait
times and numerous processes (like Oracle DB processes) observed in theD
state, that were sitting on thewait_on_page_bit()
function in the process stack.You can manually enable automatic NUMA balancing by setting the
kernel.numa_balancing
kernel parameter to1
.To set the
kernel.numa_balancing
kernel parameter at runtime, use thesysctl
command, as follows:# sysctl -w kernel.numa_balancing=1
To make the enabling of automatic NUMA balancing persistent across a reboot, add the
kernel.numa_balancing=1
parameter to the/etc/sysctl.conf
file.To verify whether the
kernel.numa_balancing
kernel parameter is set, run the following command:# sysctl kernel.numa_balancing
-
Deferred compaction feature backported and set to
madvise
by defaultThe deferred compaction feature for Transparent Huge Pages (THP) has been backported from the mainline kernel, and the default
defrag
behavior has been set tomadvise
. This fix resolves an issue where THP could cause application stalls in the event that a huge page allocation from THP took a long time due to memory fragmentation. -
FRWR support added in RDS
This update adds support for MR registration through work requests in RDS, which is commonly referred to as FRWR/fastreg/FRMR. With this change, RDS can choose either FMR or FRWR as the registration method. The choice is based on the preference that is specified in the
prefer_frwr
module parameter, as well as the support that is offered by the underlying device. -
ibacm
available in the Oracle OFED releaseStarting with the Oracle OFED 1.0.0-33 release,
ibacm
includes Netlink support. Theibacm
service processes path record queries and also caches path records. Becauseibacm
provides an easy path record cache for kernel components, this implementation greatly improves performance on large fabric systems. -
libnvdimm
subsystem added to kernelThis update adds the
libnvdimm
kernel subsystem, which is responsible for the detection, configuration, and management of Non-Volatile Dual Inline Memory Modules (NVDIMMs). As a result, if NVDIMMs are present in the system, they are exposed through the/dev/pmem*
device nodes and can be configured by using the ndctl utility. -
panic_on_rcu_stall
parameter added tosysctl
to debug RCU stalls on avmcore
The
panic_on_rcu_stall
interface is useful for defining the root cause of RCU stalls when using avmcore
. You can set the parameter's value to1
to call thepanic()
function whenever an RCU stall is detected. -
Target Core Module in Userspace (TCMU) support for in-kernel iSCSI target
This feature provides support for userspace pass-through, which enables userspace modules to be specified as iSCSI targets. Typically, built-in modules are used as backstores or storage engines for SCSI devices and are implemented entirely as kernel code. Backstores cover common use cases, but some target solutions can support alternate backstores and act as translators for initiators that might need to store data on these non-traditional storage systems. By supporting TCMU, a small adapter module can be released for each backstore. This functionality is similar to Filesystem in Userspace (FUSE), but at the SCSI layer rather than the file system layer.
-
uio_hv_generic
driver enabledThe
uio_hv-generic
driver is a generic driver that can be bound to any Hyper-V VMBus device, providing there is userspace access to networking and adequate storage is available. The addition of this driver benefits both virtio and Xen drivers.