October 24th, 2024

Rust in enterprise kernels

The Maintainers Summit confirmed ongoing Rust integration into enterprise kernels, addressing challenges with the nouveau driver and the new Nova project, while considering the best approach for a core driver.

Read original articleLink Icon
Rust in enterprise kernels

At the recent Maintainers Summit, it was decided that the integration of Rust into enterprise kernels will continue, with more Rust code expected to enter the kernel. However, challenges remain, particularly highlighted by discussions surrounding the nouveau driver for NVIDIA GPUs and the new Nova project, which aims to replace it with a Rust-based driver. The nova project is still in its early stages and may take years to be ready for mainline inclusion. Meanwhile, a new "vGPU" functionality for NVIDIA GPUs, which relies on the existing nouveau driver, is being developed to facilitate GPU access for cloud-based systems. This dependency raises concerns about backporting the vGPU subsystem to older enterprise kernels that do not support Rust, as only a small percentage of these kernels are based on versions that include Rust support. Developers are debating whether to create a core driver in C or Rust to facilitate this transition. While there is a consensus on the long-term goals, the community is grappling with the implications of Rust's integration and the potential duplication of functionality between nouveau and Nova. The discussions indicate a willingness to find solutions that accommodate both the current needs and future developments in kernel architecture.

- The Rust integration into enterprise kernels is progressing, but challenges remain.

- The nova project aims to replace the nouveau driver with a Rust-based solution for NVIDIA GPUs.

- The new vGPU functionality depends on the existing nouveau driver, complicating backporting efforts.

- Developers are considering the best approach for a core driver to support both nouveau and Nova.

- There is a general agreement on long-term goals, but ongoing discussions are necessary to address immediate concerns.

Link Icon 6 comments
By @throwup238 - 3 months
> There is an increasing market for cloud-based systems with GPU access so that we can all enjoy the benefits of large language models appearing uninvited in every aspect of our lives.

I came for the Rust kernel drama, I stayed for the sick LLM burns.

I love LWN. Like with HN the comments are far more interesting than the article. I'm a huge Rust fan that's been using it since 1.0 and it's adoption by the linux kernel is one of the most interesting social phenomena I've seen. The tug of war between stability/backporting and moving forward with Rust in the comments is fascinating.

By @alilleybrinker - 3 months
Greg KH's comment about not letting yourself be limited today by the needs of commercial users of old kernels is a good one [1]. That would be a tail wagging the dog situation, where newer APIs can't improve beyond the support that's available in old kernels. If that were the constraint, then improvements which rely on available toolchains would have to wait years for those toolchains to read wide enough distribution to users with slow adoption schedules for new kernels before you could even think of building on those toolchains.

[1]: https://lwn.net/ml/all/2024092614-fossil-bagful-1d59@gregkh/

By @justahuman74 - 3 months
Until Nova is ready for merge it shouldn't get a say on how things get implemented
By @rc00 - 3 months