On 24th November 2019, Linux founder, Linus Torvalds, announced the release of the Linux Kernel 5.4 (dubbed ‘Kleptomaniac Octopus’) via the Linux Kernel Mailing List. This new kernel packs quite a punch in features and patches inclusion. However, Linus intentionally downplayed the upgrade in his overview, “What little there is here is mostly some networking updates (mix of network drivers and core networking), and some minor GPU driver updates. Other than that it’s a small collection of random other things all over.”
Linux 5.4 is the final major kernel release this year and it opened the merge window for the development of Linux Kernel 5.5. Let’s explore some of its major features and improvements:
1) Linux Kernel Lockdown
The principal feature addition on Linux kernel 5.4 is the kernel lockdown mode which aims to enhance Linux kernel security by separating the userland and kernel code. The kernel lockdown limits the root (UID 0) account access to kernel features that enable arbitrary code modification and execution. This way, the Linux kernel remains safe even when the root account is compromised.
Linux kernel lockdown comes in two modes- Integrity and Confidentiality. Activating the integrity mode deactivates features that permit the root account (user) to modify the functioning kernel. On the other hand, enabling the confidentiality kernel lockdown mode disables kernel features that allow the user to extract confidential data from the kernel.
The kernel lockdown feature comes as a security module for Linux and is disabled by default as it’s intended for Linux developers, device manufacturers, and Linux enterprise distributors. Nonetheless, you can enable and configure it with the lockdown parameter though this will impact all hardware and systems that rely on low-level access.
2) exFAT file system support
By default, Microsoft’s FAT file system restricts file transfer size to 4GB. Though Microsoft’s exFAT file system overcomes this hurdle, Linux didn’t have native exFAT support prior to the release of Linux kernel 5.4. Previously, you had to install extra libraries to utilize the exFAT file system.
Linux kernel .4 features native exFAT file system support, a welcome move by Linux enthusiasts who use large-size exFAT-formatted drives for data storage and transfer. This improvement comes in the wake of Microsoft’s recent (August 2019) move to open source and publish its proprietary file system.
3) Support for AMD and Intel GPUs
This kernel upgrade presents ample graphics performance enhancement for AMD Radeon via the AMDGPU DRM driver. It also improves support for the coming Dali and Renoir AMD APU platforms, AMD Navi 12 and14 GPUs, and AMD Arcturus GPUs. Linux kernel 5.4 also integrates early support for Intel Tiger Lake Gen12 graphics and hardware and features display color management via the Nouveau open-source driver.
4) FlySky FS-iA6B drone receiver support
Linux kernel 5.4 comes with support for the FlySky FS-iA6B drone receiver. Its input driver updates contain an RC receiver that connects with supported RC controllers to function as a Linux joystick input. The upgrade also provides for more precise time-stamping, improved velocity tracking, and performance enhancement for the BU21013 touchpad driver.
Linux kernel 5.4 integrates code (driver) that enables the FlySky FS-iA6B to serve as a serial IBUS device. Compliant RC controllers like the FlySky FS-i6 can connect to the receiver and operate as Linux joystick input peripherals. They can then serve as gaming controls, DIY drone flying, and flight simulation.
5) VirtIO-FS integration for file & folder sharing between VMs
VirtIO-FS integration in Linux debuted with the release of Linux kernel 5.4. This merge offers quicker file and folder transfer between host and guest operating systems via virtual machines (VMs) than the previous VirtIO-8 and VirtIO-9P. VirtIO-FS integration employs FUSE to export directories from the host VM and mount them onto guest VMs more expeditiously than in the past. Besides the improved transfer speeds, VirtIO-FS features better POSIX compliance and integrates QEMU support in Linux kernel 5.4.
6) Patches for newer 64-bit Windows games on Wine and Proton
A kernel patch in the Linux 5.4 enables some 64-bit Windows games to run flawlessly in new generation AMD and Intel Linux processors under Wine, Proton, and CrossOver. The patch features a few necessary x86 assembly patches alongside emulation support for the Store Interrupt Descriptor Table (SIDT), Store Machine Status Word (SMSW) commands, and the Store Global Descriptor Table Register (SGDT) for 64-bit processors.
These instructions are sometimes used by Windows programs but the User-Mode Instruction Prevention (UMIP) functionality in new-gen processors hinders their execution in user-mode. Since Wine runs solely in user-space, windows programs running on Wine are bound to hit hitches when executing these command sets on UMIP-enabled CPUs.
To cross out this hurdle, Linux kernel 5.4 integrates spoofing (emulation) support for SMSW, SGDT, and SIDT processes. With this kernel upgrade, you can enjoy a smooth 64-bit Windows gameplay on your new generation machine. Prominent Windows games like Shadow of the Tomb Raider, Soulcalibur VI, Team Sonic Racing, and Devil May Cry 5 among others won’t crash mid-way anymore.
7) Extended audio hardware support
Linux 5.4 brings extensive audio support for a number of hardware components via its open-source sound improvement drivers. It supports several new audio hardware including the Freescale i.MX7ULP, Cirrus Logic CS47L15/CS47L92, Freescale i.8MQ, Meson G12A, and early support for Intel’s sound open firmware initiative on the i.MX8 SoC among others.
8) Qualcomm Snapdragon support
Linux kernel 5.4 presents mainline support to some gadgets running on the Snapdragon 835 interface like the ASUS NovaGo, Lenovo Miix 630, and HP EnvyX2 laptops. The Lenovo Yoga C630 is powered by Snapdragon 850 SoC and also exploits the mainline 5.4 Linux kernel for basic functionality.
The Linux kernel 5.4 adds mainline Linux support for the Qualcomm SM8150 MTP reference platform that’s powered by Snapdragon 855. Further, it includes support for the ASpeed AST2600 server management processor.
9) Improved Fscrypt to optimize the handling of native file encryption
This kernel release beefs up file encryption security by improving the process of adding, removing, and deriving cryptographic keys in the fscrypt file encryption system. Besides FS-VERITY file authentication, Linux 5.4 brings standardized, flexible, and secure, and flexible native file encryption for improved file security.
10 ) Power (thermal) management tweaks
Linux kernel 5.4 includes thermal management updates to heighten performance on Intel platforms. It provides for the reading and adjustment of the Intel TCC thermal activation offset in line with the TjMAX thermal throttle activation value. This thermal offset tweaking ensures the system operates at optimal temperatures for ship-shape performance. In some systems, the TCC offset is can be set via the BIOS (firmware).
Other perk-ups in Linux kernel 5.4
In addition to the above features, Linux 5.4 packs numerous other improvements that include:
- AMD Ryzen 3000 temperature monitoring and reporting
- Fixes and improvements around existing file systems
- Quicker large directory modifications on XFS
- Support for Intel Ice Lake Thunderbolt
- RK3288 VP8 decoding
- RTL8125 network device support.
That’s a round up of some of the features and improvements that ship with the latest Linux kernel 5.4. It sure looks one hell of a sturdy and robust kernel that will seek to support more functionalities and improve the overall user experience.