After two months of development, Linus Torvalds released Linux kernel 5.13 release which is considered as the largest version in history, since it received 17189 corrections from 2150 developers and of which the changes affected 12996 files, 794705 lines of code added, 399590 lines removed
Among the most notable changes Initial support for Apple M1 chips highlighted, cgroup "misc" driver, discontinued support for / dev / kmem, support for new Intel and AMD GPUs, ability to directly call kernel functions from BPF programs, kernel stack randomization for each system call, the ability to build in Clang with CFI (Control Flow Integrity) protection, LSM module Landlock for additional process throttling, and more.
Main news in Linux 5.13
In this new version of the Kernel se highlights introduction of initial support for Apple's ARM M1 chip, which covers the functions of interrupt controller, timer, UART, SMP, I / O and MMIO. It is mentioned that the GPU reverse engineering is not complete yet, serial console and framebuffer support is provided to organize the output.
Another novelty that stands out is continuous integration in the MPTCP kernel (MultiPath TCP), since the new version adds support for sockopt to configure generic TCP options. The ability to reset individual subflows has been implemented.
Also stands out a new "Misc" cgroup driver (CONFIG_CGROUP_MISC), designed to limit and track scalar resources that can be controlled using a simple and limited counter setting the maximum allowed values. As an example, the management of address space identifiers used in the AMD SEV (Secure Encrypted Virtualization) mechanism is mentioned.
On the other hand, it also stands out that in BPF tracing programs, it became possible to use local storage de tasks for a task, which provides higher performance when binding data to a specific BPF handler.
In addition, it is also highlighted that after 13 years in the preparation branch, the controller «comedi» ( a collection of controllers for a variety of common data acquisition boards. Drivers are implemented as a Linux kernel module providing common functionality and individual low-level driver modules) has stabilized and moved to the mainframe to support the data collection devices.
En ext4, directory entries are now allowed to be overwritten when files are deleted to ensure deleted file names are erased. By preloading block bitmaps, code performance for block mapping in newly assembled FSs was improved. Ext4 also allows the simultaneous use of encryption and case-insensitive mode.
While for XFS the ability to remove space from the last distribution group on the file system is added, which was the first link in implementing the function of reducing the size of existing partitions with XFS FS. Various performance optimizations have been made.
In Btrfs the use of read ahead has been added in the dispatch command, which reduced the time for a full dispatch by 10% and an incremental one by 25%. For zone block devices, automatic background redistribution of zones is provided when the 75% unused space threshold is exceeded.
Support for the / dev / kmem special file has been removed, which can be used to access the entire kernel address space. This file has been found to be out of date and cause security issues.
We can also find in this new version of Linux 5.13 that added support for building a kernel with the inclusion of a CFI protection mechanism (Control Flow Integrity) in the Clang compiler, which add a check function before every indirect call to identify some forms of undefined behavior which can potentially lead to a violation of normal flow control as a result of exploits, modifying pointers to functions stored in memory. The CONFIG_CFI_CLANG parameter is proposed to enable CFI.
Finally on the part of the drivers, now for GUD (Generic USB Display) the driver provides DRM (Direct Rendering Manager) properties for image rotation, brightness control, EDID access, video mode configuration and TV connection, which are they can be used as a basis for creating device-specific drivers.
While for amdgpu added initial support for Aldebaran GPUs (gfx90a) and Initial support for FreeSync Adaptive Sync for HDMI is included (previously available for DisplayPort),
While for Intel controllers it is highlighted that a new controller for cooling management has been implemented, which allows to reduce the frequency of the processor when there is a danger of overheating.
For those interested in the new version Linux 5.13 can download now from kernel.org