Linux Kernel 5.12 is a well-turned release with many essential additions. Linus Torvalds wrote in the brief 5.12 announcement,
Thanks to everybody who made last week very calm indeed, which just makes me feel much happier about the final 5.12 release.
The Linux Kernel 5.13 merge window is now open and it would be the first Linux Kernel to add initial support for Apple M1 devices.
Linux Kernel 5.12 prominent features
PlayStation 5 DualSense Controller Driver
PlayStation 5 DualSense controller driver was initially published back in December, just days ahead of Christmas and fully open-source. The driver supports the PS5 controllers via USB and Bluetooth and supports nearly all of the functionality including extras like LEDs, motion sensors, battery reporting, light-bar control, rumble, etc.
If you were looking to use Sonyโs DualSense PlayStation 5 Controller, now would be a good time to test it out.
Btrfs initial support for zoned devices and subpage block size
Btrfs is a copy on write filesystem for Linux aimed at implementing advanced features while focusing on fault tolerance, repair and easy administration.
Linux Kernel 5.12 adds initial support for Btrfs in zoned devices, and support for block sizes smaller than the size of a memory page. There are also several performance improvements.
Eager NFS write support
This release adds a set of mount options for NFS file systems that control how write() system calls react. writes=lazy
is the default, writes=wait
means we send off the write as an unstable write, and then wait for the reply, and writes=eager
means we send off the write immediately as an unstable write to the server. This ensures that a NFS client sees ENOSPC
errors immediately.
Kernel Electric-Fence (KFENCE) memory error detector
Kernel Electric-Fence (KFENCE) is a low-overhead sampling-based memory safety error detector. It detects heap out-of-bounds access, use-after-free, and invalid-free errors. KFENCE has near zero performance overhead – it trades performance for precision. Because of the low overhead, it is designed to be enabled and used in production kernels.
ID mapping in mounts
Linux Kernel 5.12 introduces the concept of idmapped mounts. This allows to map the user id of a mount to a different one. This makes possible to share files more easily between multiple users or multiple machines especially in complex scenarios. ID mapping also makes possible to share files from the host with unprivileged containers without having to change ownership permanently.
This initial implementation comes with ports for FAT and ext4, with other file systems being prepared in next releases.
Other improvements
In addition to the key additions above, there are numerous other improvements that include:
- Linux as a root partition on Hyper-V
- The old game console Nintendo 64 support is now added
- Snapdragon 888 support
- Intel Adaptive-Sync for Xe Graphics
- AMD FreeSync HDMI Support
- Networking and security improvements