Linux 5.18 Features Include Many AMD & Intel Additions, Tesla FSD Chip, Other Changes
With Linux 5.18-rc1 released last night the merge window is now over for feature work on Linux 5.18. So as usual here is my feature overview of all the changes for Linux 5.18 that caught my eye and were interesting for this kernel that is working its way towards the stable debut by late May.
Linux 5.18 is baking a lot of exciting improvements from new hardware support to enabling extra software features, never-ending work on enhancing system security, and various low-level improvements. As is the case for most cycles recently, Intel and AMD continue dominating the change-logs with bringing up new hardware support and enhancing existing hardware support. It's great seeing AMD stepping up more in recent times and contributing more hardware improvements to the kernel -- and doing so in a more timely manner -- while Intel continues their two decade streak of leading Linux kernel contributions. Intel this cycle has landed their controversial Software Defined Silicon "SDSi" driver, new drivers for Hardware Feedback Interface (HFI) and the Platform Environment Control Interface (PECI), enabling CET's Indirect Branch Tracking (IBT) security feature, and continuing to improve their DG2/Alchemist discrete graphics driver support.
AMD this cycle has continued preparing for next-generation (Zen 4) processors, added the Host System Management Port (HSMP) driver, a scheduler/NUMA change can really help out AMD EPYC server performance even more for select workloads, improved nested virtualization, beginning to bring up new IP blocks for future/upcoming graphics cards, and more.
Other hardware work to get excited about in Linux 5.18 includes support for the Tesla Full-Self Driving (FSD) SoC, a new sensor driver for improving the sensor monitoring on newer ASUS motherboards, continued CXL subsystem work for the Compute Express Link standard, Raspberry Pi Zero 2 W support, and much more. Linux 5.18 also switches over to the C11 standard, and more. So far my Linux 5.18 testing has gone well but there is a big NUMA regression at least in a synthetic benchmark. I'll have more Linux 5.18 benchmarks soon.
The Linux 5.18 merge window brought more than one million lines of new code and deleting some 292k lines of code... In large part the line count addition is due to new AMDGPU header files in preparing for new hardware.
Here is the more exhaustive list of Linux 5.18 changes that caught my interest/attention:
- Scheduler updates around NUMA balancing that can further enhance the performance of AMD EPYC servers in particular.
- Intel Hardware Feedback Interface support is now merged with Intel's new "HFI" driver for this important feature for their hybrid processors.
- Intel Software Defined Silicon has been merged for that controversial Intel CPU feature about allowing the activation of extra silicon features using cryptographically-signed keys. Intel has yet to announce any products with SDSi but they are believed to be on the way though not yet clear what CPUs/features they may turn to a license model.
- Intel Indirect Branch Tracking (IBT) has landed! This is part of Intel Control-Flow Enforcement Technology with Tiger Lake CPUs and newer for better security.
- Re-enabling Intel ENQCMD support ahead of Sapphire Rapids after the code was previously disabled in the kernel for being in bad shape.
- The AMD HSMP driver was merged for the Host System Management Port for accessing additional information on AMD server platforms.
- Improved AMD nested virtualization as well as around nested-nested virtualization.
- Intel PECI was finally merged as the Intel Platform Environment Control Interface for interfacing between the CPU and BMCs on server platforms.
- The Intel Idle driver adds native support for Intel Xeon "Sapphire Rapids" CPUs.
- The Intel P-State driver will now use the default EPP value exposed by the firmware rather than using a hard-coded EPP default up to this point.
- CPUPower support for use with AMD's P-State driver that was introduced in Linux 5.17.
- KVM now supports AMD virtual machines with up to 511 vCPUs where as to now only up to 255 vCPUs was possible for AMD systems.
- RISC-V Sv57 virtual memory support for five level page tables along with other CPU architecture improvements for this royalty-free CPU ISA. Some of that other work includes supporting the Restartable Sequences (RSEQ) interface and RISC-V CPU Idle support.
- Support for Tesla's FSD chip has been upstreamed for this Samsung-based Arm SoC used by the Tesla vehicle full-self-driving computer
- The Razperry Pi Zero 2 W is now supported by the mainline Linux kernel.
- Removal of the Andes NDS32 CPU architecture code due to that code no longer being maintained for that AndesCore 32-bit architecture used in various IoT and digital signal control applications.
GPUs / Graphics:
- AMDGPU FreeSync Video Mode is enabled by default compared to prior kernels needing the AMDGPU module option to enable the FreeSync Video Mode.
- AMD has been preparing code for future/upcoming GPUs being enabled block-by-block so not particularly exciting at the moment in terms of leaks / disclosing new details.
- CRIU support for the AMDKFD driver for checkpoint/restore capabilities for ROCm compute workloads as the main focus.
- Intel DG2-G12 sub-platform support as that new variant alongside the announced DG2/Alchemist G10 and G11 targets. There is also a lot of other DG2/Alchemist discrete graphics work in general.