Dendarii
  • Communities
  • Create Post
  • Create Community
  • heart
    Support Lemmy
  • search
    Search
  • Login
  • Sign Up
Leaflet@lemmy.world to Linux@lemmy.mlEnglish · 9 months ago

Asahi Lina's experience about working on Rust code in the kernel

vt.social

external-link
message-square
4
fedilink
88
external-link

Asahi Lina's experience about working on Rust code in the kernel

vt.social

Leaflet@lemmy.world to Linux@lemmy.mlEnglish · 9 months ago
message-square
4
fedilink
Asahi Lina (朝日リナ) // nullptr::live (@[email protected])
vt.social
external-link
I regretfully completely understand Wedson's frustrations. https://lore.kernel.org/lkml/[email protected]/ A subset of C kernel developers just seem determined to make the lives of the Rust maintainers as difficult as possible. They don't see Rust as having value and would rather it just goes away. When I tried to upstream the DRM abstractions last year, that all was blocked on basic support for the concept of a "Device" in Rust. Even just a stub wrapper for struct device would be enough. That simple concept only recently finally got merged, over one year later. When I wrote the DRM scheduler abstractions, I ran into many memory safety issues caused by bad design of the underlying C code. The lifetime requirements were undocumented and boiled down to "design your driver like amdgpu to make it work, or else". My driver is not like amdgpu, it fundamentally can't work the same way. When I tried to upstream minor fixes to the C code to make the behavior more robust and the lifetime requirements sensible, the maintainer blocked it and said I should just do "what other drivers do". Even when I pointed out that other C drivers also triggered the same bugs because the API is just bad and unintuitive and there are many secret hidden lifetime requirements, he wouldn't budge. One C driver works, so Rust drivers must work the same way.

This is related to this post: https://lemmy.world/post/19184514

  • someacnt_@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    9 months ago

    Welp, that means I set up my neovim with rust as well… will do when I got time!

Linux@lemmy.ml

linux@lemmy.ml

Subscribe from Remote Instance

Create a post
You are not logged in. However you can subscribe from another Fediverse account, for example Lemmy or Mastodon. To do this, paste the following into the search field of your instance: [email protected]

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

  • [email protected]
  • [email protected]
  • [email protected]
  • [email protected]

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

Visibility: Public
globe

This community can be federated to other instances and be posted/commented in by their users.

  • 680 users / day
  • 3.6K users / week
  • 7.96K users / month
  • 17.6K users / 6 months
  • 1 local subscriber
  • 54.1K subscribers
  • 7.65K Posts
  • 199K Comments
  • Modlog
  • mods:
  • AgreeableLandscape@lemmy.ml
  • nooter692@lemmy.ml
  • MarcellusDrum@lemmy.ml
  • Arthur Besse@lemmy.ml
  • Cyclohexane@lemmy.ml
  • d3Xt3r@lemmy.nz
  • BE: 0.19.9
  • Modlog
  • Instances
  • Docs
  • Code
  • join-lemmy.org