Blog articles

What Rust developers can expect from Linux Kernel 6.1

December 06, 2022

Linux Kernel 6.1 is coming soon, and it's great news for server administrators and …Rust developers. Yes, Rust developers! Let's talk about the recent Linux Kernel 6.0 release and what we can expect in the upcoming 6.1 release.

What’s new with Linux Kernel 6.0?

The Linux Foundation released kernel version 6.0 on October 2nd, packed with awesome features. It introduced support for AArch64 (ARM 64 processors) and big changes for server-class processors. Improved NUMA balancing and CPU scheduler changes made impressive performance gains for server CPUs. Server administrators improve performance with a software upgrade.

Kernel 6.0 also included a fix for the Retbleed vulnerability in AMD and Intel CPUs. This is another speculative instruction attack that allows attackers to access your in-memory data, so this was a welcome fix.

We also saw some improvements to virtualization with Kernel 6.0. VirtIO has received some tweaks, fixes, and vq resize support. Cloud services are growing in popularity by the day, and VPS solutions are in high demand. 

When will Linux Kernel 6.1 be released? 

Release 6.1 is currently hot on the tail of 6.0 and should be released sometime in December 2022. 

What’s new with Linux Kernel 6.1?

Besides welcoming Rust to the Linux Kernel, which we’ll cover more below, the release of Linux Kernel 6.1 has a lot to offer server administrators. It includes many bug fixes and minor improvements to performance. In particular, the Multi-Generational LRU support is a notable and exciting addition.

Multi-Generational LRU support

CPUs address memory pages from LRU (least recently used) lists. There are two lists in the current architecture: Active and Inactive. The kernel determines what pages are active and which ones are likely inactive and set to be disposed of soon.

With Multi-Generational support, the kernel will add two more phases, "likely to be active" and "likely to be used." This results in improved memory management and performance. Once software developers take advantage of this new upgrade, we'll see better performance across the board, though gains may not be immediate.

Rust in the Linux Kernel

The C programming language has been the only game in town with the Linux Kernel. But there has been a massive effort to include Rust into the kernel recently. Miguel Ojeda is a kernel developer leading a movement to include Rust as a native addition. And now, thanks to the 6.1 release, Rust developers will finally be able to start programming on Linux.

Advantages of programming with Rust in the Linux kernel

Rust has a high-level syntax with low-level performance, which means it enables simpler code with more performance. In addition to excellent performance, it also scales well, supports parallelization, and encourages memory safety, making Rust a natural fit for the Linux kernel.

C is still the kernel's primary language, but the inclusion of Rust into the kernel is great news for Rust developers who have been asking for this for years. It's also great news for the millions of end users of Linux, who will undoubtedly see better performance and stability from the kernel in the future.

Want to learn more about Rust programming?

With its low overhead and high performance cross platform development, Rust is a great language for systems programming, embedded development and web programming. A great way to get started is to take Pluralsight's Rust Fundamentals course, which teaches you everything you need to know to get started as a Rust developer.