Stories
Slash Boxes
Comments

SoylentNews is people

SoylentNews is powered by your submissions, so send in your scoop. Only 10 submissions in the queue.
posted by janrinok on Tuesday September 20 2022, @05:04AM   Printer-friendly

News and Advice on the World's Latest Innovations:

The Rust in Linux debate is over. The implementation has begun. In an email conversation, Linux's creator Linus Torvalds, told me, "Unless something odd happens, it [Rust] will make it into 6.1."

The Rust programming language entering the Linux kernel has been coming for some time. At the 2020 Linux Plumbers Conference, developers started considering using the Rust language for new Linux inline code. Google, which supports Rust for developing Android -- itself a Linux distro -- began pushing for Rust in the Linux kernel in April 2021.

As Wedson Almeida Filho of Google's Android Team said at the time, "We feel that Rust is now ready to join C as a practical language for implementing the kernel. It can help us reduce the number of potential bugs and security vulnerabilities in privileged code while playing nicely with the core kernel and preserving its performance characteristics."

It took a while to convince the top Linux kernel developers of this. There were concerns about non-standard Rust extensions being needed to get it to work in Linux. For instance, with the new Rust Linux NVMe driver, over 70 extensions needed to be made to Rust to get it working. But, Torvalds had told me in an earlier interview, "We've been using exceptions to standard C for decades."

This was still an issue at the invitation-only Linux Kernel Maintainers Summit. But, in the end, it was decided that Rust is well enough supported in the Clang -- the C language family compiler front end -- to move forward. Besides, as Torvalds had said earlier, "Clang does work, so merging Rust would probably help and not hurt the kernel."

[...] Now, Torvalds warns in this first release, Rust will "just have the core infrastructure (i.e. no serious use case yet)." But, still, this is a major first step for Rust and Linux.


Original Submission

 
This discussion was created by janrinok (52) for logged-in users only, but now has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 5, Insightful) by canopic jug on Tuesday September 20 2022, @07:26AM (2 children)

    by canopic jug (3949) Subscriber Badge on Tuesday September 20 2022, @07:26AM (#1272518) Journal

    Very impressive that another language has finally made it to this point. Sure hope this move can make libraries more portable.

    Culling and refactoring is needed more. Lately the kernel seems to be write-only and growing (bloating) by the hour. If that keeps up then it will eventually cross a threshold where it is too full of holes to deal with any more. Adding multiple languages to the mix just adds to that trouble and to the security-destroying problem of complexity [schneier.com]. There are also the social and legal problems that an additional language will bring with it. Those last two rather over lap.

    There are many definitions of an open standardsd but there is a substantial amount of common aspects. Perhaps the primary shared characteristics of open standard definitions are as follows, with the key point here being about the maintenance:

    • The standard is adopted and will be maintained by a not-for-profit organization with the ongoing development occuring on the basis of an open decision-making procedure available to all interested parties.
    • The standard has been published and the standard specification document is available either freely or at a nominal charge. It must be permissible to all to copy, distribute and use it for no fee or at a nominal fee.
    • The copyrights and patents possibly present - of (parts of) the standard are made irrevocably available on a royalty-free basis.
    • There are no constraints on the re-use of the standard.

    If I understand correctly, at least C is an open standard. It is maintained by a not-for-profit organization with the ongoing development occuring on the basis of an open decision-making procedure. Specifically the American National Standards Institute (ANSI), ISO/IEC JTC 1/SC 22/WG 14 of the International Organization for Standardization (ISO), and the International Electrotechnical Commission (IEC) handle C.

    There are a still a lot of questions about how Rust is maintained [rust-lang.org], especially since it is all on M$ GitHub at the moment. That is in spite of the sale itself and what M$ has been doing to GitHub since the sale. And given the fights over the CoC [rust-lang.org] and its subsequent abuse, further questions are raised about control, specifically, not just governance.

    --
    Money is not free speech. Elections should not be auctions.
    Starting Score:    1  point
    Moderation   +3  
       Insightful=2, Interesting=1, Total=3
    Extra 'Insightful' Modifier   0  
    Karma-Bonus Modifier   +1  

    Total Score:   5  
  • (Score: 2) by janrinok on Tuesday September 20 2022, @07:34AM (1 child)

    by janrinok (52) Subscriber Badge on Tuesday September 20 2022, @07:34AM (#1272520) Journal

    It is unfortunate that the link to the roadmap that you provided doesn't seem to have been updated since 2021. I hope this doesn't indicate the way things are going...