Linux Kernel 6.1 RC1 Lands with Initial Rust Support

3 min


Linus Torvalds releases Linux Kernel 6.1 RC1 for everyone to test. And bringing the much-awaited Rust support.

Kernel 6.1 arrives with initial Rust structure
Kernel 6.1 arrives with the initial Rust structure

Following the Linux Kernel 6.0 release, the merge window is now closed for Kernel 6.1. And it’s time to test those new features.

While releasing, Linus mentioned that this release is fairly small compared to the prior ones. However, some of the major long-pending items eventually merged into this. However, he is not really happy with the late pull requests in the traditional two-weeks merge window.

This isn’t actually shaping up to be a particularly large release: we “only” have 11.5k non-merge commits during this merge window, compared to 13.5k last time around. So not exactly tiny, but smaller than the last few releases. At least in number of commits.

That said, we’ve got a few core things that have been brewing for a long time, most notably the multi-gen LRU VM series, and the initial Rust scaffolding (no actual real Rust code in the kernel yet, but the infrastructure is there).

Linus

Let’s take a look at what arrives in Kernel 6.1.

Linux Kernel 6.1: What’s New (RC1)

Rust infra and key items

The most important change in the Linux Kernel 6.1 is introducing the initial Rust framework code. A whopping 12k lines of code brings only the basic infrastructure for Rust. With this base, new drivers, subsystems, and kernel modules are expected to land in Kernel via Rust programming language. 

The primary support includes the following four areas:

  • Kernel internals
  • Rust build rules and scripts
  • Rust crates and bindings for minimal possible build
  • Documentation and Rust samples

Secondly, the highly anticipated MGLUR (Multi-gen least recently used) algorithm lands in this version. Google engineers primarily developed this work and are already out in the wild for Android and Chrome OS. Hence it’s merged in 6.1, hoping to be enabled by default in the coming days. This algorithm expects to perform better than LRU algo in high-pressure memory situations.

If you want to learn more about MGLUR, visit this page and check out the LPC 2022 conference presentation in the video below.

Graphics and Processors

AMD processors are now armed with Cache to Cache and memory reporting for better control and diagnosis. Also coming in this Kernel LbrExtV2 support (Last Branch Record Extension v2 functionality) for Zen 4 processors will improve overall performance.

Intel’s Meteor Lake family of processors get Thunderbolt support.

Intel brings additional work for its DG2/Alchemist discrete graphics support for consumer graphics cards. The support is currently experimental since it is still maturing in the Kernel.

Furthermore, LoongArch CPU support arrived with more updates which started in Kernel 5.19. This version brings EFI-boot support, performance events and kdump handling, and cache operations for TLB. This Chiese CPU support will continue for a couple of kernel releases until it is fully supported by the mainline kernel.

Also, this version gets a feature where Kernel now prints the CPU core when there is a segmentation fault error, which is a generic fault. This may benefit multi-core CPU situations and single-cores as well.

More work continues to arrive on the graphics card space for Intel’s Meteor Lake, which is planned to be released in the second half of 2023. Elsewhere AMD gets similar codes for RDNA2 and RDNA3 GPUs.

File system

The btrfs filesystem gets continuous performance improvements in all kernel releases. Kernel 6.1 introduces async buffer writes with more than 2x throughput improvement in file operations.

Good ol’ ext4 seems to have some minor improvements and bug fixes.

Also, the XFS file system and F2FS (Flash-friendly file system) get minor updates and bug fixes.

Other updates

PinePhone keyboard driver arrives that supports the keypad and its functionalities. PinePhone keyboard runs entirely open-source firmware. It is primarily used as an external keyboard for PinePhones.

In addition, a considerable number of Wi-Fi vulnerabilities in Kernel are fixed in 6.1. While these are mainlined in 6.1, also these are backported in the past supported Kernel versions at the moment. These are the CVEs that got fixed.

  • CVE-2022-41674
  • CVE-2022-42719
  • CVE-2022-42720
  • CVE-2022-42721
  • CVE-2022-42722

IBM folks bring its ibm-panel keyboard support for server interfaces.

A handful of sound driver updates arrive in Linux Kernel 6.1, including AMD, Apple M1 and M2, Mediatek and others.

Download

You can download the source tree from the following page:

mainline:6.1-rc1[tarball][patch][view diff][browse]

If you are running benchmarks, testing new hardware and finding issues, report to the Kernel mailing list.

Finally, the Linux Kernel 6.1 is expected to be released by December 2022. Hence, Ubuntu 23.04 & Fedora 38 may get this version by Q2-2022.


Arindam

Creator and author of debugpoint.com. Connect with me via Telegram, 𝕏 (Twitter), or send us an email.
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

1 Comment
Newest
Oldest Most Voted
Inline Feedbacks
View all comments