After two months of development, Linus Torvalds announced the release of Linux kernel 5.18 version in which among the most notable changes was a major cleanup of deprecated functionality, the Reiserfs file system was deprecated, user process tracking events were implemented, support for the vulnerability blocking mechanism was added Intel IBT, among other things.
The new version received 16206 fixes from 2127 developers (latest version had 14203 fixes from 1995 developers), patch size is 108 MB (changes affected 14235 files, added 1340982 lines of code, removed 593836 lines).
Main new features in Linux 5.18
In this new version, the file system Btrfs has added support for forwarding compressed data when performing sending and receiving operations. Previously, when using send/receive, the sending side would decompress the stored data in compressed form and the receiving side would recompress it before writing.
In kernel 5.18, user space applications that use send/receive calls have the ability to transfer compressed data without repackaging. The functionality is implemented thanks to the new ioctl operations BTRFS_IOC_ENCODED_READ and BTRFS_IOC_ENCODED_WRITE, which allow you to read and write information directly to extensions.
Direct I/O mode provides access to encrypted files when fscrypt uses inline encryption, where the encryption and decryption operations are performed by the drive driver, not the kernel. With conventional kernel encryption, accessing encrypted files via direct I/O is still impossible, as files are accessed without going through the kernel buffering mechanism.
The file system ReiserFS has been deprecated and is expected to be removed in 2025. The deprecation of ReiserFS will reduce the effort required to maintain common file system changes to support the new mount, iomap, and tome APIs.
For the file system F2FS, the possibility of assigning user IDs is implemented of mounted file systems, which is used to match a given user's files on a mounted external partition with another user on the current system.
The code for calculating statistics in Device-mapper drivers has been reworked, which has significantly improved accounting accuracy in drivers like dm-crypt.
For NVMe devices, support for 64-bit checksums for integrity checks has been implemented.
A new mount option "keep_last_dots" for exfat filesystem, which prevents trailing periods from filenames from being stripped (on Windows, trailing periods from filenames are stripped by default).
EXT4 improves fast_commit mode performance and increases scalability. The "mb_optimize_scan" mount option, which improves performance under conditions of high file system fragmentation, has been adapted to work with files with .
Besides that, integration of a set of patches has been started, which can significantly reduce core rebuild time by restructuring the hierarchy of header files and reducing the number of cross dependencies. Kernel 5.18 includes patches that optimize the structure of the scheduler header files (kernel/sched). Compared to the last version, the CPU time consumption for creating kernel/programming/code has been reduced by 61% and the actual time has been reduced by 3,9% (from 2,95 to 2,84 seconds).
On the other hand, it also highlights the extended tools for tracking applications in user space. The new kernel version adds the ability for user processes to create user events and write data to the trace buffer, which can be viewed through common kernel trace utilities such as ftrace and perf. Userspace trace events are isolated from kernel trace events.
Support for older ARM processors (ARMv4 and ARMv5) that do not have a memory management unit (MMU) has been removed. Support for ARMv7-M systems without an MMU has been preserved.
In the subsystem eBPF, the BTF mechanism (BPF type format), which provides information for type checking in BPF pseudocode, implements the ability to add annotations to variables that refer to memory areas of the user space. Annotations help the BPF code verification system to better identify and verify memory accesses.
For architecture x86, support for the Intel IBT command flow protection mechanism has been added, which avoids the use of exploit building techniques using return-oriented programming (ROP) techniques, where the exploit is formed in the form of a chain of calls to pieces of machine instructions that are already in memory, ending with a control return instruction (as a rule, these are the end of functions).
The amdgpu driver has FreeSync adaptive-synchronization technology enabled by default, which allows you to adjust the refresh rate of information on the screen, ensuring smooth and uninterrupted images when playing games and watching videos. Aldebaran GPU support announced as stable.
The nouveau driver provides support for higher bit rates for DP/eDP interfaces and support for ltprs cable extensions (link training tunable PHY repeaters).
Finally if you are interested in knowing more about it, you can check the details in the following link