- cross-posted to:
- news@lemmy.linuxuserspace.show
- badnews@lemmy.ml
Wedson Almeida Filho is a Microsoft engineer who has been prolific in his contributions to the Rust for the Linux kernel code over the past several years. Wedson has worked on many Rust Linux kernel features and even did a experimental EXT2 file-system driver port to Rust. But he’s had enough and is now stepping away from the Rust for Linux efforts.
From Wedon’s post on the kernel mailing list:
I am retiring from the project. After almost 4 years, I find myself lacking the energy and enthusiasm I once had to respond to some of the nontechnical nonsense, so it’s best to leave it up to those who still have it in them.
…
I truly believe the future of kernels is with memory-safe languages. I am no visionary but if Linux doesn’t internalize this, I’m afraid some other kernel will do to it what it did to Unix.
Lastly, I’ll leave a small, 3min 30s, sample for context here: https://youtu.be/WiPp9YEBV0Q?t=1529 – and to reiterate, no one is trying force anyone else to learn Rust nor prevent refactorings of C code."
Daniel Quinn ( @danielquinn@lemmy.ca ) English70•7 months agoOof, that video… I don’t have enough patience to put up with that sort of thing either. I wonder how plausible a complete Rust fork of the kernel would be.
Vincent ( @Vincent@feddit.nl ) 44•7 months agoThat person in the audience was really grinding my gears. Just let the folks you’re talking to answer you; no need to keep going on your diatribe when it’s based on a false assumption and waste the whole room’s time.
floofloof ( @floofloof@lemmy.ca ) English22•7 months agoI wonder how plausible a complete Rust fork of the kernel would be.
It sounds highly impractical, and it would probably introduce more issues than Rust solves, even if there were enough people with enough free time to do it. Any change must be evolutionary if it’s going to be achievable.
cerement ( @cerement@slrpnk.net ) 19•7 months agoNOT a fork of Linux, but Redox is aiming for a Unix-like OS based on Rust – but even with “source compatibility” with Linux/BSD and drivers being in userspace, my guess would be hardware drivers are still going to be a big speed bump
merthyr1831 ( @merthyr1831@lemmy.ml ) English8•7 months agoAll you need nowadays for a decent Unix-like is compatibility with a handful of Linux softwares and a web browser. Hell, if you could get WINE working on your kernel you could maybe support as many Windows apps/games as Linux for free.
The big issue, as I see it, is performant drivers for a wide range of hardware. That doesn’t come easy, but I wonder if that can be addressed in a way I’m too inexperienced to know.
But projects like Redox are a genuine threat to the hegemony of Linux - if memory safety isn’t given the true recognition it deserves, projects like Redox serve to be the same disrupting force as Linux once was for UNIX.
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English2•7 months agoYou should do it. The Linux kernel is a C project. You can’t change a 30-year project on a dime. Make your own project with Rust and hookers.
The Doctor ( @drwho@beehaw.org ) English2•7 months agoThat’s pretty well answered here: http://vger.kernel.org/lkml/#s15-3
morrowind ( @morrowind@lemmy.ml ) 1•7 months agoSite is unreachable
youmaynotknow ( @jjlinux@lemmy.ml ) 59•7 months agoTed Ts’o is a prick with a god complex. I understand his experience is hard to match, we all have something in our lives we’re that good at, but that does not need to lead to acting like a fucking religious fanatic.
dino ( @dino@discuss.tchncs.de ) English7•7 months agoWho is Ted Ts’ in this context?
youmaynotknow ( @jjlinux@lemmy.ml ) 13•7 months agoHe’s the guy you hear vexing rust in the video posted. While both languages have their pros and cons, he chooses to just blast this other guy by repeating the same crap over and over without letting him reply. Basically the kind of person with a “I win because I’m louder” demeanor.
Findmysec ( @Findmysec@infosec.pub ) English51•7 months agoWho the fuck is this little shit? Can’t they even be a little considerate towards rust? Just because they have 15 years worth of inertia for C doesn’t mean they can close their eyes and say “nope, I’m not interested”. I do not see how the kernel can survive without making rust a first class citizen
T (they/she) ( @Templa@beehaw.org ) 45•7 months agoSomeone linked the thread from Phoronix forum and the comments are so awful. Imagine having to deal with people like this.
One of them reads:
We need Microsoft people like we need fleas. Why can’t they work for projects we don’t like, like GNOME?
It is funny because Ts’o works at Google, lol.
Vilian ( @Vilian@lemmy.ca ) 19•7 months agoPhoronix comments were always dumb, like, infuriating bad, I don’t even read them anymore, the moderation on that site don’t give a fuck about toxicity in there
vividspecter ( @vividspecter@lemm.ee ) 4•7 months agoBeyond moderation, Phoronix is a case study in why downvotes are a good thing. Those idiots going on dumb tangents would continue, while the rest of us can read the actual worthwhile comments (which does happen, given AMD employees and the like comment there sometimes).
Chaotic Entropy ( @ChaoticEntropy@feddit.uk ) English3•7 months agoI’ve asked one question, one time in those comments and it just got buried in people spitting venom at each other about their file system preferences.
morrowind ( @morrowind@lemmy.ml ) 18•7 months agoPhoronix comments are a special place on the internet. Don’t go there for a good discussion.
Possibly linux ( @possiblylinux127@lemmy.zip ) English4•7 months agoI once started reading the comments on bcachefs. It was a extremely heated for no reason. People were screaming on the nature of btrfs
0x0 ( @0x0@programming.dev ) 39•7 months agoThe kernel is mostly written in C, by C developers… understandably they’re rather refactor C code to make it better instead of rewritting everything in the current fancy language that’ll save the world this time (especially considering proponents of said language always, at every chance they get, sell it as C is crap, this is better).
Linux is over 30yo and keeps getting better and more stable, that’s the power of open-source.
Vincent ( @Vincent@feddit.nl ) 83•7 months agoThis sounds exactly like the type of nontechnical nonsense they’re complaining about: attacking a strawman (“they’re trying to prevent people from refactoring C code and making them rewrite everything in the current fancy language”) even after explicitly calling out that that was not going to happen (“and to reiterate, no one is trying force anyone else to learn Rust nor prevent refactorings of C code”).
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English1•7 months agoThey said it wasn’t going to happen but their plan will result in it happening, how do you square that?
Vincent ( @Vincent@feddit.nl ) 1•7 months agoYou tell me how it will result in it happening. Who even has the power to force people to learn Rust?
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English1•7 months agoLinus and GKH, if they merge something that breaks every time C programmers change a kernel API
Vincent ( @Vincent@feddit.nl ) 1•7 months agoAnd where did you find that they will do that?
AItoothbrush ( @AI_toothbrush@lemmy.zip ) English47•7 months agoMost reasonable people say c is good, rust is better
troed ( @troed@fedia.io ) 30•7 months agoC is crap for anything where security matters. I’ll happily take that debate with anyone who thinks differently.
Skull giver ( @skullgiver@popplesburger.hilciferous.nl ) 15•6 months ago[This comment has been deleted by an automated system]
troed ( @troed@fedia.io ) 14•7 months agoAgree. I’m an absolutely awesome software dev myself - and I know C by heart (being my favorite language after assembler). However, with age comes humility and the ability to recognize that I will write buggy code every now and then.
Better the language saves me when I can’t, in security critical situations.
- ulterno ( @ulterno@lemmy.kde.social ) English1•7 months ago
Even if you manage to keep all memory accesses in your memory, while writing the code, there’s a good chance you’ll forget something when reviewing another person’s MR. That’s probably the main problem creator.
Still, a language that you are familiar with, is better than a new language that you haven’t finished reading the specifications of. And considering that adding new maintainers comes with a major effort of verifying trustworthiness, I get how it would be harder to switch.
cerement ( @cerement@slrpnk.net ) 5•7 months agosuch a weird dichotomy in Windows – secure kernel space and privacy-nightmare user space … “we’re the only ones allowed to steal your data”
pooberbee (they/she) ( @pooberbee@lemmy.ml ) 14•7 months agoI think most people would agree with you, but that isn’t really the issue. Rather the question is where the threshold for rewriting in Rust vs maintaining in C lies. Rewriting in any language is costly and error-prone, so at what point do the benefits outweigh that cost and risk? For a legacy, battle-tested codebase (possibly one of the most widely tested codebases out there), the benefit is probably on the lower side.
troed ( @troed@fedia.io ) 12•7 months agoIsn’t that exactly the strawman the maintainer got tired of?
pooberbee (they/she) ( @pooberbee@lemmy.ml ) 4•7 months agoHmm… I admit I didn’t follow the video and who was speaking very well and didn’t notice hostility that others seem to pick up on. I’ve worked with plenty of people who turn childish when a technical discussion doesn’t go their way, and I’ve had the luxury of mostly ignoring them, I guess.
It sounded like he was asking for deeper specification than others were willing or able to provide. That’s a constant stalemate in software development. He’s right to push for better specs, but if there aren’t any then they have to work with what they’ve got.
My first response here was responding to the direct comparison of languages, which is kind of apples and oranges in this context, and I guess the languages involved aren’t even really the issue.
Liz ( @Liz@midwest.social ) English2•7 months agoSeeing as how 40% of the security issues that have been found over the years wouldn’t exist in a memory-safe language, I would say a re-write is extremely worth it.
🦄🦄🦄 ( @Duke_Nukem_1990@feddit.org ) Deutsch10•7 months agoWhat debate? You offered zero arguments and “C bad tho” isn’t one.
troed ( @troed@fedia.io ) 6•7 months agoDo you believe C isn’t crap when it comes to security? Please explain why and I’ll happily debate you.
/fw hacker, reverse engineer
🦄🦄🦄 ( @Duke_Nukem_1990@feddit.org ) Deutsch2•7 months agoThat’s not how it works. You said:
C is crap for anything where security matters.
Argue for your point.
🦄🦄🦄 ( @Duke_Nukem_1990@feddit.org ) Deutsch5•7 months agoLink dropping is also not arguing.
troed ( @troed@fedia.io ) 6•7 months agoCiting scientific research is. Now, please post your gut feeling in response.
zaphod ( @zaphod@sopuli.xyz ) 1•7 months agoLots of categories which Rust doesn’t prevent, and in the kernel you’ll end up with a lot of
unsafe
Rust, so it can’t guarantee memory-safety in all cases. loudwhisper ( @loudwhisper@infosec.pub ) 4•7 months agoThe biggest items on the graph are all out of bounds accesses, use-after-free and overflows. It is undeniable that memory safe languages help reducing vulnerabilities, we know for decades that memory corruption vulnerabilities are both the most common and the most severe in programs written in memory-unsafe languages.
Unsafe rust is also not turning off every safety feature, and it’s much better to have clear highlighted and isolated parts of code that are unsafe, which can be more easily reviewed and tested, compared to everything suffering from those problems.
I don’t think there is debate here, rewriting is a huge effort, but the fact that using C is prone to memory corruption vulnerabilities and memory-safe languages are better from that regard is a fact.
unexposedhazard ( @unexposedhazard@discuss.tchncs.de ) 6•7 months agoMaybe when you build some little application or whatever. When building the most used kernel in the world, there are probably some considerations that very few people can even try to understand.
corsicanguppy ( @corsicanguppy@lemmy.ca ) English5•7 months agoC is crap for anything where security matters.
True for people misusing it. If you want to argue the ease of mis-use, it’s a fun talk.
witx ( @witx@lemmy.sdf.org ) 16•7 months agoBetter in what ways? Rust’s strong points are not to just make a program more stable, but more secure from a memory standpoint and I don’t think Linux keeps improving on that
corsicanguppy ( @corsicanguppy@lemmy.ca ) English5•7 months agoat every chance they get, sell it as C is crap, this is better
For ‘sendmail’ values of $C, this resembles another argument. Also, of course for $C=sysvinit.
sexual_tomato ( @sexual_tomato@lemmy.dbzer0.com ) 5•7 months agoFrom other discussions I’ve seen, the guy stepping down was frustrated by having C code rejected that made lifetime guarantees more explicit. No rust involved. The patch was in service of rust bindings, but there was 0 rust code being reviewed by maintainers.
JackbyDev ( @JackbyDev@programming.dev ) English37•7 months agoThis is a little off topic and admittedly an oversimplification, but people saying Rust’s memory safety isn’t a big deal remind me of people saying static typing isn’t a big deal.
merthyr1831 ( @merthyr1831@lemmy.ml ) English28•7 months agoThe video attached is a perfect example of the kind of “I’m not prepared to learn anything new so everyone else is wrong” attitude that is eating away at Linux like a cancer.
If memory safety isn’t adopted into the kernel, and C fanaticism discarded, Linux will face the same fate as the kernels it once replaced. Does the Linux foundation want to drag its heels and stuff millions into AI ventures whilst sysadmins quietly shift to new kernels that offer memory safety, or does it want to be part of that future?
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English11•7 months agoIf Linux gets rewritten in Rust it will be a new kernel, not Linux. You can make new kernels, even in Rust but they aren’t Linux. You can advertise them at Linux conferences but you can’t force every Linux dev to work on your new Rust kernel.
PotatoesFall ( @PotatoesFall@discuss.tchncs.de ) 23•7 months agoThere is no “your” new rust kernel. There is a gigantic ship of Theseus that is the Linux kernel, and many parts of it are being rewritten, refactored, removed an added all the time by god knows how many different people. Some of those things will be done in rust.
Can we stop reacting to this the way conservatives react to gay people? Just let some rust exist. Nobody is forcing everyone to be gay, and nobody is forcing everybody to immediately abandon C and rewrite everything in rust.
witx ( @witx@lemmy.sdf.org ) 22•7 months agoIsn’t Linux still Linux even though probably a lot of the original code is gone? Why would slowly rewriting it whole, or just parts, in Rust make it stop being Linux?
caseyweederman ( @caseyweederman@lemmy.ca ) 9•7 months agoIs a single line of code in the kernel completely unchanged since its birth?
cadekat ( @cadekat@pawb.social ) 5•7 months agoLinux is whatever the Linux Mark Institute says it is.
merthyr1831 ( @merthyr1831@lemmy.ml ) English1•7 months agothe crew on the Ship of Theseus would like a word with you. Because if you strip out every subsystem and replace them with a different language, everyone would still call it Linux and it would still work as Linux.
Linux isn’t “a bunch of C code” it’s an API, an ABI, and a bunch of drivers bundled into a monorepo.
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English2•7 months agoLinux is a development ecosystem. If everyone agrees to switch to Rust it can switch to Rust with continuity. But they won’t.
Ginny [they/she] ( @svcg@lemmy.blahaj.zone ) 16•7 months agoI am no visionary but if Linux doesn’t internalize this, I’m afraid some other kernel will do to it what it did to Unix.
Maybe that’s not a bad thing? If you ask me the GNU people are missing a trick. Perhaps if they rewrote Hurd in Rust they could finally shed that “/Linux”.
uis ( @uis@lemm.ee ) 3•7 months agoThey will write kernel in Ada
Tlaloc_Temporal ( @Tlaloc_Temporal@lemmy.ca ) 2•7 months agoGNU isn’t punchy though; as soon as any punchy word get’s associated with them, people will use that word instead, and we’ll just get GNU/Thermite or GNU/Abson or something.
Everett ( @myopic_menace@reddthat.com ) English1•7 months agoMaybe a pipe dream, but I would love to see RedoxOS get some traction. A rust based microkernel is a promising concept.
ᕙ(⇀‸↼‶)ᕗ ( @yournamehere@lemm.ee ) 13•7 months agoRUST ppl feel like ARCH ppl. yes it might be better than some other setup yadda yadda, but they are so enervating.i’d rather switch back to windows11 than read another post/blog on how som crustians replaced this or that c library. just shut up already.
wewbull ( @wewbull@feddit.uk ) English4•7 months agoArch people tell you “I use arch BTW”
Rust people make PRs rewriting your code in rust.
Rust people are worse.
gencha ( @gencha@lemm.ee ) 10•7 months agoI feel like the time to hide information behind YouTube links is over. Feels like a link to a paywall article at this point.
slowcakes ( @slowcakes@programming.dev ) 10•7 months agoPeople are dumb as hell, it’s fucking open source, go maintain the c fork, and let the those who want to improve the fucking shit cve producing codebase make a rust fork. And see which one people will use, and we all know that the rust fork will have wider adoption, it’s a no brainer.
No one is forcing them to maintain the Linux kernel, no one is telling them to stop writing patches, they can’t because you can download the code and work on it as you like.
It’s people who know they will be irrelevant because they spent decades producing shit software, and they can’t even be bothered to learn a new language to improve stability and security for the whole fucking userbase. Give me a break, what a bunch of whiners.
witx ( @witx@lemmy.sdf.org ) 16•7 months agoThis is such a dumb take. For as much as I’d like to have a safer language in the kernel you need the current developers, the “big heads” at least because they have a lot of niche knowledge about their domains and how they implementation works (regardless of language) People shouldn’t take shit like this from the ext4 developer, but it doesn’t mean we should start vilifying all of them.
This guy’s concerns are real and valid but were expressed with the maturity of a lunatic child, but they are not all like this.
merthyr1831 ( @merthyr1831@lemmy.ml ) English4•7 months agoIf anything, the constant coddling of a few aging individuals within the kernel and the protection of their comforts is why Linux has been so slow to adopt technologies and paradigms that developers are begging for.
Linus complains of dev burnout starving the kernel of contributors, but the processes and technologies driving kernel development are antiquated, and the very suggestion of change is either discarded or makes you the target of a public shaming by Linus himself.
witx ( @witx@lemmy.sdf.org ) 2•7 months agoI agree with your views. But I have to give praise to Linus for bringing Rust into the kernel.
slowcakes ( @slowcakes@programming.dev ) 3•7 months agoYes and the big heads in this case don’t want to share that knowledge, because why? Because they are treating the kernel like their pet project that they own and control, and they don’t wanna lose that control, rather looking at the bigger picture.
It’s kinda obvious that rust is the way forward as google has clearly shown, so why are they gatekeeping?
witx ( @witx@lemmy.sdf.org ) 3•7 months agoYes I agree but the solution for a project so big and critical is not to fork. How do you maintain all of it while at the same time adding support to Rust?
slowcakes ( @slowcakes@programming.dev ) 2•7 months agoThere’s no solution, they need not only to accept that rust is going to be part of the kernel but also that it’s a good thing. Otherwise how do you cooperate efficiently.
And also if they are so big brained, should be easy to learn rust then, I mean I’m pretty small brained and I know rust.
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English1•7 months ago“There’s no compromise, I’M RIGHT AND YOU’RE WRONG!”
no wonder everyone hates rustphiles
aaaaace ( @aaaaace@lemmy.blahaj.zone ) English1•7 months agoCan we have a vegan rust sub, please?
slowcakes ( @slowcakes@programming.dev ) 1•7 months agoWhat compromise? Half code should be in rust?
What does this even have to do with rust developers, The language rust gives us the ability to have more compile time checks, and why is that a bad thing. Do you like security issues in your OS because some dev forgot to handle pointers correctly?
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English1•7 months agoThe only compromise Rust programmers would accept is C programmers learn Rust so when they break Rust code they can fix it.
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English1•7 months agoWhen did they refuse to share knowledge?
slowcakes ( @slowcakes@programming.dev ) 1•7 months agoThat was what he was talking about at the conference, he literally asked for help about how things work, so he could write better APIs that they are more comfortable using.
But the response was we don’t want to write rust.
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English1•7 months agoSo what’s the solution that doesn’t involve C programmers writing Rust?
slowcakes ( @slowcakes@programming.dev ) 1•7 months agoThere’s is no other way, C is a security issue - do you understand?
WarmApplePieShrek ( @WarmApplePieShrek@lemmy.dbzer0.com ) English1•7 months agoSo you want to force C programmers to write Rust or GTFO.
PotatoesFall ( @PotatoesFall@discuss.tchncs.de ) 6•7 months agoNobody can maintan a fork of the linux kernel on their own or even with a team. It’s a HUGE task.
There already is rust in part of the linux kernel. It’s not a fork.
But I agree with your first statement, people are dumb as hell, me included lol
slowcakes ( @slowcakes@programming.dev ) 1•7 months agoNo shit
Trailblazing Braille Taser ( @0x0@lemmy.dbzer0.com ) 2•7 months agoUnix -> Linux -> Ferrix?
Charadon ( @Charadon@lemmy.sdf.org ) English9•7 months agoomfg, that guy in the video…
NauticalNoodle ( @NauticalNoodle@lemmy.ml ) 9•7 months agoI admit I’m biased towards C-languages out of sheer personal preference and limited exposure to Rust but I am wondering, are there any major technical barriers to Rust replacing these languages in it’s current form anymore?
I know there has been a lot of movement towards supporting Rust in the last 6 years since I’ve become aware of it, but I also get flashbacks from the the early 00’s when I would hear about how Java was destined to replace C++, and the early 2010’s when Python was destined to replace everything only to realize that the hype fundamentally misunderstood the use case limitations of the various languages.
kbal ( @kbal@fedia.io ) 6•7 months ago3min 30s, sample for context
If you keep watching for 10 minutes, it’s an interesting discussion. Too bad they had to cut it short due to time.
dino ( @dino@discuss.tchncs.de ) English5•7 months agoold white man scared of losing their jobs or their commits going insigificant…who cares. Lets move on.
Arthur Besse ( @cypherpunks@lemmy.ml ) English3•7 months agothe guy speaking off camera in the linked 3min 30s of the video is Ted Ts’o, according to this report about the session.
ByteOnBikes ( @ByteOnBikes@slrpnk.net ) 2•7 months agoLosing their jobs? Uh what?