Linux / Open Source

Linux Kernel 5.8 Will Be a Big Release of Small Patches

22 Jun 2020 10:58am, by

Linus Torvalds, the creator and maintainer of the Linux kernel, has claimed of the upcoming release of the 5.8 kernel, “it’s right up there with v4.9, which has long been our biggest release by quite a bit in number of commits.”

The buzz around 5.8 is palpable because it’s a very comprehensive release. There’s not a single game-changing feature in the mix: Overall the development of 5.8, according to Torvalds, “is all over the place.” The first release candidate of the kernel was released this week, and the completed release should be ready within the next few months.

Probably the most notable work on the 5.8 kernel is the tons of fundamental clean up that has been done. The 5.8 merge window has seen a 20% modification of all the files in the kernel source repository. That’s a sizable percentage. One particular piece of the kernel that saw a significant change is IOCTL Write (IOW). For this feature, there were over 14,000 non-merge commits, approximately 800,000 new lines, and over 14,000 files changed.

But what about the features, changes, and improvements for this new Linux kernel? Here’s a sample of what you can expect.

CPUs and Virtualization

There’s been considerable work done for processors, within the 5.8 kernel. New features and improvements include:

  • Updates for Microsoft’s Hyper-V virtualization platform.
  • Improvements for the Direct Rendering Manager (DRM) subsystem (such as mdp5 init error path for failed mdp5 kms allocation).
  • Fixes and improvements for IBM Power PC.
  • Numerous x86 CPU updates.
  • Addition of interconnect provider DT nodes and thermal zones for throttling support for ARM chips.
  • DTS node for PMIC VBUS booster for ARM chips.
  • ARM KVM introduction of steal time cap.
  • Introduced mechanism to recognize clocksource in time_get_snapshot for ARM KVM.
  • Added hypercall service for ARM KVM ptp.
  • Added basic functions to support hw DBM.
  • Nested AMD live migration with KVM support.
  • Loongson 3 CPU now supported for KVM.
  • Specter mitigation fixes.
  • CPPC/CPUFreq driver boost support.
  • PCIe NTB for Ice Lake Xeon servers.
  • Add kexec/kdump support for RISC-V.
  • RISC-V defconfig, Kconfig: enabled CPU power management.
  • Added mechanism to provide custom IPI operations for RISC-V.

File Systems

The biggest addition for file systems comes by way of Samsung and the Microsoft exFAT drivers. Along with the usual bug fixes and code cleanups, the exFAT entry cache functions have been optimized and a new feature, boot region verification (a means of checksumming boot sectors), has been added. Other exFAT changes include:

  • Improvement for the scatterlist contiguity check.
  • Fixed return value check in exynos_ufs_init().
  • Fixed a reference count leak in hw_random
  • Added support for UFS HCI.
  • Fixed ref count leak in mic_pre_enable
  • Simplified exfat_utf8_d_has and exfat_utf8_d_cmp().
  • Optimized exfat entry cache functions.

Outside of the exFAT improvements, other file system changes include:

  • Inline Encryption Support for fscrypt added.
  • Added fix to avoid invalid memory access in EXT2.
  • Numerous fixes added to e2fsck (such the introdtion of parallel fsck to e2fsck pass1 and the simplficiation of e2fsck context merging codes).
  • Fixed an inconsistency since reading old metadata from disk in EXT4.
  • Fixed and documented the stable_inodes feature in e2fsprogs.
  • Fixed a bug in smp_processor_id() in preemptible code in ext4_mb_new_blocks.
  • Performance optimizations for Xen 9pfs, SMB3 (large I/O).
  • EXT4+XFS DAX support added (for direct access on persistent memory storage).
  • Btrfs fix for gfs2 readahead regression in v5.8-rc1.
  • Added sysfs interface for debugging btrfs.
  • Btrfs workaround exhausted anonymous block device pool.
  • Detected and fixed qgroup leaked data reserved space for btrfs.

Miscellaneous Additions

There are a number of other, miscellaneous, additions, which include:

  • Habana Labs Gaudi support.
  • Support added for thunderbolt interface on non-x86 systems.
  • Inline crypto support on DragonBoard 845c added.
  • Added inline encryption support for fscrypt.
  • Added inline encryption support to UFS.
  • Reworking of test-klp-{callbacks,shadow_vars} for livepatching.
  • AMD Secure Encrypted Virtualization Encrypted State (SEV-ES) support has been added.
  • Kernel Concurrency Sanitizer has been merged with KCSAN.
  • Numerous Scheduler optimizations (such as Per-Entry Load Tracking enhancements and CFS bandwidth handling fixes).
  • Introduced CAP_CHECKPOINT_RESTORE for SELinux.
  • Fixed initial SID handling for SELinux.

This is just a portion of the work that has gone into improving the Linux kernel for the 5.8 release. For more information about this release, read Linux Torvalds official statement on the upcoming kernel.

The Linux Foundation is a sponsor of The New Stack.

Feature image by Rod Long on Unsplash.

At this time, The New Stack does not allow comments directly on this website. We invite all readers who wish to discuss a story to visit us on Twitter or Facebook. We also welcome your news tips and feedback via email: feedback@thenewstack.io.

A newsletter digest of the week’s most important stories & analyses.