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
iowaittimes and numerous processes (like Oracle DB processes) observed in theDstate, 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_balancingkernel parameter to1.To set the
kernel.numa_balancingkernel parameter at runtime, use thesysctlcommand, 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=1parameter to the/etc/sysctl.conffile.To verify whether the
kernel.numa_balancingkernel parameter is set, run the following command:# sysctl kernel.numa_balancing
-
Deferred compaction feature backported and set to
madviseby defaultThe deferred compaction feature for Transparent Huge Pages (THP) has been backported from the mainline kernel, and the default
defragbehavior 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_frwrmodule parameter, as well as the support that is offered by the underlying device. -
ibacmavailable in the Oracle OFED releaseStarting with the Oracle OFED 1.0.0-33 release,
ibacmincludes Netlink support. Theibacmservice processes path record queries and also caches path records. Becauseibacmprovides an easy path record cache for kernel components, this implementation greatly improves performance on large fabric systems. -
libnvdimmsubsystem added to kernelThis update adds the
libnvdimmkernel 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_stallparameter added tosysctlto debug RCU stalls on avmcoreThe
panic_on_rcu_stallinterface is useful for defining the root cause of RCU stalls when using avmcore. You can set the parameter's value to1to 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_genericdriver enabledThe
uio_hv-genericdriver 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.