5 Summary of Upstream History

This appendix sets out to provide listings of major features and enhancement in each subsequent upstream kernel release. Note that some of the key features listed here may have been backported into the most recent UEK R5 release, but this listing is used to illustrate major upstream kernel features that are included in UEK R6 by virtue of the selection of the upstream 5.4 kernel base. The features listed here are described in more detail at https://kernelnewbies.org/LinuxVersions:

4.15

  • AMD Secure Encrypted Virtualization (SEV)

  • Intel "User Mode Instruction Prevention"

  • Cgroupsv2

  • MAP_SYNC flushing (PMEM)

  • Page cache truncation speed improvements for performance

  • NVMe Multipath

  • NFIT PMEM v1.6 DSM

  • Trace module initialization functions

  • Reset WARN_ONCE messaging for improved debugging

4.16

  • IBPB security enhancements

  • More AMD Secure Encrypted Virtualization (SEV)

  • KASAN, dynamic memory error detector improvements

  • RDMA detailed QP information

  • NVMe passthrough command support

  • printk() less likely to lock up a CPU with heavy console traffic

  • Arm (aarch64) invalidates branch prediction (Spectre v2 mitigation)

  • Arm (aarch64) page table isolation (Meltdown mitigation)

  • Spectre v1 mitigations

4.17

  • XFS lazytime functionality enabled

  • KVM Hints

  • IMA

  • TLS kernel receive path

  • Arm (aarch64) System Control and Management Interface (SCMI) functionality enabled

4.18

  • Bpfilter for firewall rules

  • Zero-copy TCP receive

  • AX_FDP high performance networking

  • Huge page clearing optimizations

  • Reduce TLB shootdowns

  • virtio_net standby

  • Arm (aarch64) Spectre v4 mitigations

  • Write-cache device mapper target

  • In-kernel TLS offloading for Mellanox 5 adapters

  • Overflow-safe alloc calls expanded

4.19

  • Block IO Latency controller

  • Overlayfs improvements

  • L1TF

  • Huge pages microoptimization

  • Kexec/firmware signing

  • NVMe improvements

  • Intel's cache pseudo locking

  • Arm (aarch64) "stackleak" feature improvements

  • Block I/O latency controller

  • cgroup OOM killer control knob

  • Async IO Polling

4.20

  • /proc/pressure

  • Lazy TLB flushes

  • XArray structure and API

  • Pressure Stall Information (PSI)

  • Arm (aarch64) SSBS Spectre v4 mitigations

  • Kernel signal handling

  • Drivers: Multiqueue API

  • Expanded use of barriers for Spectre v2

5.0

  • AMD GPU FreeSync support

  • AMD QoS Support

  • Cgroupv2 cpuset resource

  • Btrfs swap files

  • Arm (aarch64) pointer authentication (user space), per thread canaries

  • Arm (aarch64) 52-bit VAs

  • Arm (aarch64) hotpluggable memory

  • Retpoline elimination merges

5.1

  • High perf async IO

  • Use PMEM as RAM

  • Btrfs ZSTD compression

  • Zero-key NVDIMM erase functionality

  • BPF spinlocks

  • Devlink health notifications

  • Memory compaction improvements

  • io_uring API for high-performance async IO

  • GCC improvements to avoid unnecessary retpolines

5.2

  • Ice Lake improvements (Intel DRM-next)

  • Elkhart Lake support

  • MM optimizations to reduce unnecessary cache line movements/TLB misses

  • AMD GPU FreeSync improvements

  • NVDIMM improvements

  • IOMMU changes for VT-d based SRIOV alternative (AUX)

  • Easier sysfs tracking of Spectre mitigation for Arm (aarch64)

5.3

  • AMD GPU HMM improvements

  • More Ice Lake improvements (NPPI)

  • Intel FSGSBASE instructions to enhance performance

  • Intel UMWAIT support

  • FEC in Intel ICE driver for better error handling

  • KDump support

  • Kexec on AMD /w SME

  • Arm (aarch64) KASLR on by default

  • Intel multi-die topology to user space

  • Intel Select Speed for performance monitoring

  • VirtIO PMEM Driver

  • VirtIO IOMMU Driver

5.4

  • Improved AMD Epyc scheduler/load balancing

  • AMD Rome Error Detection/Correction

  • AMD Navi 10 GPU FW in firmware tree

  • Pensando IONIC driver

  • Kernel lockdown feature

  • Easier host/guest file sharing with VirtIO-FS