Kernel 5.19 arrives with improvements in processes, hardware support, security and more

The new version of Kernel 5.19 has already been released and in this new version, among the most notable changes, for example, the support for LoongArch processor architecture, "BIG TCP" patch integration, "on-demand" mode in fscache, code removal to support a.out format, the ability to use ZSTD to compress firmware, an interface for managing memory offset from user space, improved reliability and performance of the pseudo-random number generator, support for Intel IFS (In-Field Scan), AMD SEV-SNP (Secure Nested Paging), Intel TDX (Trusted Domain Extensions) and ARM SME extensions (Scalable Matrix Extension).

The new version accepted 16401 fixes from 2190 developers (latest version had 16206 fixes from 2127 developers), patch size: 90 MB (changes affected 13847 files, added 1149456 lines of code, removed 349177 lines).

Main news of kernel 5.19

Of the most notable changes of this new version, we can mention that it is found that when compiling with Clang 15, randomization mechanism is supported of the kernel structure.

The mechanism landlock, that allows to limit the interaction of a group of processes with the external environment, support for rules has been provided allowing control the execution of operations file renaming.

The subsystem IMA (Integrity Measurement Architecture), designed to check the integrity of operating system components using digital signatures and hashes, changed to use the fs-verity module for file verification.

Changed the logic of actions when disabling non-privileged access to the eBPF subsystem; previously, all commands associated with the bpf() system call were disabled, and as of version 5.19, access to commands that do not lead to object creation was retained. With this behavior, a privileged process is required to load a BPF program, but non-privileged processes can interact with the program.

Added support for fallback of MPTCP connections (MultiPath TCP) to plain TCP, in situations where certain functions of MPTCP cannot be used. MPTCP is an extension of the TCP protocol to organize the operation of a TCP connection with the delivery of packets simultaneously along several paths through different network interfaces bound to different IP addresses. Added an API to manage MPTCP streams from user space.

It is also highlighted that added over 420 lines of code controller related amdgpu, of which about 400 lines are automatically generated header files with data for ASIC registers in the AMD GPU driver, and another 22,5K lines provide the initial implementation of AMD SoC000 support. The total driver size for AMD GPUs has exceeded 21 million lines of code. In addition to SoC4, the AMD driver includes support for SMU 21.x (System Management Unit), updated support for USB-C and GPUVM, and is ready to support the next generation of RDNA13 (RX 3) and CDNA (AMD instinct).

The i915 driver (intelligent) has enhanced power management capabilities, IDs for Intel DG2 (Arc Alchemist) GPUs used in laptops were added, initial support was provided for the Intel Raptor Lake-P (RPL-P) platform, information on Arctic Sound-M graphics cards was added, implemented ABI for compute engines, added for DG2 cards support for Tile4 format, DisplayPort HDR support for systems based on Haswell microarchitecture.

The controller Nouveau has switched to using the drm_gem_plane_helper_prepare_fb driver, some structures and variables have been assigned statically. As for the use of open source Nouveau kernel modules by NVIDIA, the work so far has been reduced to identifying and removing bugs. In the future, it is planned to use the released firmware to improve the performance of the controller.

capabilities have been developed related to the response to split lock detection ("split lock"), which occur when accessing misaligned data in memory because when executing an atomic instruction, the data crosses two lines of the expanded CPU cache. Such crashes lead to a significant drop in performance. If previously, by default, the kernel issued a warning with information about the process that caused the crash, now the problematic process will be additionally slowed down to preserve the performance of the rest of the system.

Added support for the IFS mechanism (In-Field Scan) implemented in Intel processors, which allows you to run low-level CPU diagnostic tests that can detect problems that are not detected by regular means based on error correcting codes (ECC) or parity bits.

Of the other changes that stand out from this new version:

  • Added a driver for the NVMe controller used in Apple computers based on the M1 chip.
  • added initial support for the LoongArch instruction set architecture used in Loongson 3 5000 processors, which implements a new RISC ISA similar to MIPS and RISC-V.
  • The LoongArch architecture is available in three versions: 32-bit simplified (LA32R), 32-bit normal (LA32S), and 64-bit (LA64).
  • Added the ability to embed the bootconfig file in the kernel.
  • 'CONFIG_BOOT_CONFIG_EMBED_FILE=”/PATH/TO/BOOTCONFIG/FILE”'.
  • Removed support for x86-specific boot options: nosp, nosmap, nosmep, noexec, and noclflush).
  • Support for the obsolete CPU architecture h8300 (Renesas H8/300), which has not been maintained for a long time, has been discontinued.

Finally if you are interested in knowing more about it about this new version, you can check the details In the following link.


Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.