Linux Kernel 5.7 Released: The Top 10 New Features You Should Know


After seven release candidates, Linus Torvalds has officially announced the final stable version of Linux Kernel 5.7. The latest release succeeds the previous Linux Kernel 5.6 including all the changes pulled out during the kernel 5.7 merge window.

Linux Kernel 5.7: What’s New?

Linux 5.7 packs several exciting new changes and enhancements to existing components. It ranges from processor support like Qualcomm Snapdragon 865 to exFAT file systems and other hardware support. Here, I’m listing the top 10 new features of Linux Kernel 5.7 that you might be interested to know the most:

1. New ARM Features And Device Support

v5.7 introduces several new enhancements to 64-bit ARM architecture such as ARM Activity Monitors (AMU) extension support and in-kernel pointer authentication which was earlier restricted to userspace.

Furthermore, kernel 5.7 also adds support for new ARM architecture-based devices and SoCs. It includes Qualcomm Snapdragon 865 and PINE64’s Pinebook Pro laptop, PineTab tablet, and PinePhone mobile phone.

2. Better HDR/OLED Display Support

For AMDGPU Linux driver that deals with modern OLED and HDR displays, Linux 5.7 includes Display Core (DC) patches. With DC patches, it now allows for managing backlight brightness using the DisplayPort AUX channel and adds Panel Self Refresh (PSR) functionality.

3. Improved Linux I/O Interface IO_uring

IO_uring is a new high-performance I/O interface for Linux that was introduced with the release of Linux 5.1. Since then, it has continued with several new features and performance optimizations.

In Linux 5.7, it comprises more cleanup, fixes, and improvements to existing support than a few features like buffer selection and splice support. For a full list of IO_uring updates for v5.7, you can read it in the pull request.

4. New exFAT Filesystem Driver

Ever since Microsoft shared patents related to its own exFAT file system, the Linux community has taken a sigh of relief to use exFAT-formatted flash drives and SD cards on Linux desktop.

Special thanks to Samsung engineers who pushed the improved exFAT code for kernel 5.7. With Linux Kernel 5.7, you can now enjoy much better and more reliable exFAT support on Linux. The new exFAT driver also enables access to Windows disk encrypted data.

If you want to know more about exFAT on Linux, I’ve written a full timeline story of Microsoft exFAT and Linux here.

5. F2FS And XFS Filesystem Update

Speaking of the other filesystems, Linux 5.7 brings Zstd compression support to the F2FS (Flash-Friendly File System) filesystem. Not only that, but F2FS now also has a new kernel ioctl and mount time display in debugfs. Here is a pull request that contains all enhancements, cleanups, and other bug fixes for F2FS in Kernel 5.7.

With Linux 5.7, XFS also sees a number of changes coming in two parts for code clean-ups, improved metadata validation, and other bug fixes. The major highlight in XFS is the initial preparation for online repair and filesystem checking.

6. Zoned Block Device Support In Btrfs

Continuing the development of Btrfs file system, Linux Kernel 5.7 pulls several core updates and fixes. This includes deleting subvolumes function in ioctl, per-inode file extent tree, leak detector for tree root structures, and page migration callbacks for data pages.

Another important feature of Btrfs is the zoned block device support for which it sets the initial stage. For a full list of updates for Btrfs in v5.7, check out the pull request here.

7. Apple USB Fast Charge Support For iOS devices

The previous Linux kernel 5.6 brought initial support for USB4 based on Intel’s Thunderbolt code. Now Linux 5.7 introduces a new driver to support USB fast-charge functionality for Apple iOS hardware. There are also other USB and PHY drivers added which can you found here in this patch.

8. New Sound Hardware Support Update

Among the sound subsystem, Linux 5.7 has a few ALSA core, ASoC, HD-audio, and USB-audio updates. To name some of them, it includes new hardware support for the Amlogic GX, Meson 8 / 8B, T9015 DAC, Broadcom DSL/PON, Ingenic JZ4760/JZ4770, and Realtek RL6231.

Additionally, it also optimizes the HDMI jack handling in HD Audio driver and adds quirks for Realtek codecs, Motu, Kingston, and Presonus. Here is a patch by SUSE’s Takashi Iwai that includes all changes for the 5.7 kernel.

9. A Tiny Power Button Driver

Coming to ACPI (Advanced Configuration and Power Interface), Linux 5.7 features a tiny power button driver for power management in Virtual Machines. It’s a simulated ACPI button exposed by VM to guest kernels through which it sends signals directly to the init process.

The tiny power button driver aims to decrease startup time and reduce VM image complexity. Here you can look at the other ACPI updates for 5.7 Linux.

10. Other Linux Kernel 5.7 Changes

  • Better touchscreen support for older Intel tablets
  • Added split lock detection
  • Improved EFI boot handling
  • Thermal pressure support for the scheduler
  • Intel Gen12 / Tiger Lake graphics enabled by default
  • Performance improvements to open source storage platform Ceph

The list does not end here. If you want to read more, I would suggest you visit Michael Larabel’s blog Phoronix for a complete feature overview of kernel 5.7.

Linux Kernel 5.8 Merge Window Opens

Following the traditional development cycle, Linus Torvalds has also opened the merge window for the next Linux 5.8. He’ll now pull all line-up merge requests.

To give you a short overview of Linux kernel 5.8, it’ll most likely include thunderbolt support for non-x86 kernels, AMD energy driver, and more power-saving for Linux system using PCIe-to-PCI Bridge.

Sarvottam Kumar

Sarvottam Kumar

Sarvottam Kumar is a software engineer by profession with interest and experience in Blockchain, Angular, React and Flutter. He loves to explore the nuts and bolts of Linux and share his experience and insights of Linux and open source on the web/various prestigious portals.
More From Fossbytes

Latest On Fossbytes

Find your dream job