Linux 6.0 Launch: Rust for Linux Still Awaiting Integration
Written on
Chapter 1: Introduction to Linux 6.0
On August 14, 2022, Linus Torvalds introduced the first release candidate of Linux 6.0. He indicated that this version would undergo stabilization in the following two months and has shown promising functionality and performance in early tests across various systems.
Previously, Torvalds, the creator of Linux, expressed his intention to transition from the 5.x series to the 6.0 versioning due to numerous minor updates. As reported by The Register, the Linux 6.0 release does not introduce major kernel changes but includes several beneficial updates.
Section 1.1: Understanding Versioning
Why was the version number changed from 5.20 to 6.0? To check the version of the Linux kernel on your system, simply enter the command:
uname -r
- The first digit "5" denotes the major version.
- The second digit "18" signifies a series of minor updates.
- The third digit, "15", indicates the patch version.
The Linux kernel adheres to semantic versioning, a widely used version control system in open-source software. However, for major upgrades, developers tend to avoid using excessively high numbers. Thus, instead of designating it as Linux Kernel 5.20, the decision was made to use Linux Kernel 6.0. While there are no strict guidelines, Torvalds commented, "If you prefer to call it 'Linux 5.20,' feel free, as kernel version numbers are essentially arbitrary and lack inherent meaning."
Subsection 1.1.1: Major Updates in Linux 6.0
Torvalds characterized Linux 6.0 as "a big boy," highlighting that it has witnessed a significant increase in file changes and new lines of code. Over one million lines of code were added during this development cycle, including enhancements related to the new AMDGPU and automatically generated headers for Intel’s Habana Labs Gaudi2 support. In contrast, the previous version, Linux 5.19, saw a mere 789k lines of new code, making 6.0 a substantial upgrade.
This release also introduces support for the RISC-V architecture, along with improved handling of Docker containers and applications packaged with Ubuntu's Snap system, as well as page-based memory types. Additionally, Intel's new Gaudi2 accelerator, designed for hardware acceleration of the TensorFlow machine learning library, is supported.
Further enhancements include better ACPI processing and power management for mainstream x86 packages, which are expected to decrease power consumption in Intel’s new "Sapphire Rapids" Xeon processors and alleviate issues experienced with AMD’s Ryzen 6000 chip-based laptops launched in January. Other modifications are anticipated to benefit devices like Microsoft Surface and AMD-powered ThinkPad laptops.
Section 1.2: Pending Features and Future Developments
Despite the excitement surrounding the changes in Linux 6.0, certain features are still pending integration. Notably, the Rust for Linux patches have yet to be merged, and enhancements related to performance such as MGLRU work and Maple Tree were not finalized in this cycle. Similarly, the Linux Real-Time "PREEMPT_RT" patch, which is nearing completion, has not been incorporated.
Torvalds noted some recent kernel crashes attributed to the VirtIO merge, which are currently under resolution. In the announcement for Linux 6.0-rc1, he mentioned:
"I had hoped to see some of the initial Rust infrastructure and a multi-generational LRU VM in this release, but unfortunately, neither materialized. There will always be more releases. The development work continues, and the 'short log' is too extensive to share, so I've included only my 'merge log' below. For a high-level overview, scanning through it will suffice, but remember that the individuals mentioned are merely the maintainers I highlighted; over 1700 developers contributed when you examine the full details in the git tree."
Chapter 2: Insights from Linus Torvalds
In the video titled "Linus Torvalds: Speaks on RUST and the Future of Linux Programming," Torvalds discusses the implications of Rust integration into the Linux ecosystem and its potential future role.
Additionally, the video "No, Linus Torvalds Never Merges Code On Github!!" clarifies common misconceptions about Torvalds’ involvement in the GitHub repository management and highlights the collaborative nature of Linux development.