Linux
Rust and C Linux Divide? + BCacheFS Tools removed from Debian + HUGE Win for Kernel Panics..
Linus the creator of Linux doesn’t like this file system being in the kernel anymore.. BCacheFS Tools just got removed from Debian …
[ad_2]
source
The dogmatic hubris of rust zealots never ceases to amaze. That blog post.. holy crap. The complete lack of self awareness is awesome.
"You see, we Rust devs aren't just visionaries. That's too pedestrian a title for our greatness. We're _wayfarers_! And you, well you're that construction crew we speed by at 30mph over the construction zone speed limit every morning on our way to work to change the world.
We recognize the importance of construction workers… "road builders", even as we ignore your basic safety as we fly by at 80mph. Our work is just more important. We are the future that you'll soon be tasked with building!
So do get out of our way. We've got a world to change!"
Use of the term "modern" is quickly becoming a euphemism for "repeating the mistakes of the past". These aren't modern development methods. They're just bad ones. If your filesystem can't survive a 7 year lifecycle deployment, it's useless in production. I have better things to do than babysit monthly breaking changes.
Also, take a shot for every "Leenus". 😂
Rust people: we want YOU to fix stuff when changes on the C side break our stuff.
C devs: no. This was not what we were told when you wanted in.
Rust people: you are big meanies! You are unfair! Rust is the best and only language. Rust is the future. You are all dumb!
C devs: grow up.
Rust people: that's it! I am going home! And post a long ass text for everyone to see that you are dumb meanies!
Lol some other kernel take place of linux… dude literally the whole world runs on linux😂
really, the bcachefs folks just need to stick to module space until they get it right….
As far as rust is concerned, no reason why you can't fork the kernel and refactor all the code you want.
People will say C is bad and then happily use Java Script!
C is pretty good. Not saying it couldn't be improved, but it's not nearly as bad as some people make it out to be.
Tale as old as time:
The new generation thinks they can change everything.
The old generation thinks nothing needs to be changed.
The truth is, as always, somewhere in-between.
I may be totally wrong, but I think that if Rust developers instead of contributing to Linux focus on something like "Redox OS" and "do to Linux what Linux has done to UNIX", it will be not a tragedy at all. If they are confident Rust (and other memory-safe languages) is the way to go, let them do it – and let Linux continue developing its traditional way, it is quite good at it so far.
Nice job!
Introducing rust is a big mistake.
C is obsolete. Some programmers are very reactive to build more stable software. They want continue generating more and more memory issues.
I'm against Rust in the kernel for a couple of reason.
First, to then build the kernel you need ALSO a Rust toolchain. What is the matter? For anyone like me that deals with embedded systems and knows the pain to get a working build toolchain that requires having the exact versions of each tool otherwise everything breaks the idea of having to deal ALSO with Rust, that evolves far more quickly than GCC, it's a recipe for a disaster. Platform also have their quirks, thus finding a toolchain that works it's not always easy, because you maybe need to compile with specific options for that specific CPU because it implements that instructions in their way, not everything is x86 or ARM!
Secondly, Rust build times are too high. Again when working with embedded systems you have to compile the kernel again and again. Sure, you have a fast server, sure you have ccache (by the way, is there an equivalent of ccache for Rust?), sure you have distcc (again, for Rust?) but in the end it's slow. If the build time get even 10 minute higher, while developing and building hundreds of images it reduces your productivity a lot.
Finally, rewriting any piece of code from language A to language B is always a risk. No matter that language A is not memory safe and with many defects, that code is tested on the field and runs on billions of machines every day. If you rewrite it in language B (Rust), even if you have a 0.01% change of introducing a bug, it would mean that in a project as big as the Linux kernel you introduce lots of bugs. This is the reason why banks still run COBOL programs written in the 80s, because it's a risk upgrading them to a more modern language, as it's to converting Linux code to Rust.
And, by the way, Linux doesn't have a test suite that you can run on every update to test regression, because it's a kernel and has to deal with hardware, most of which no kernel developer even has, most of which is some sort of old esoteric device that is not even sold anymore, but that you still need to support because there are thousands of people using it. For that reason I think the best thing is touch as few things that you can.
For the first problem in theory that would help a gcc frontend for Rust (they were developing it, I don't know if the project is still active), for the second one the problem is the language that is slow by design to compile since it has to do a ton of checks that C doesn't, and for the last one, I think there is no solution.
Regardless, I think that Rust is a great language that has a big potential, in fact we are starting considering it in our company for userspace application whenever possibile (i.e. where there is a toolchain that supports the target), but surely not for the kernel.
I’m with team C. Rust should behave exactly the same and use the exact same APIs as the C drivers. You don’t want different approaches in the same kernel! And you can’t just change roads that needs to be though over properly planned, because updating roads causes traffic jams and problems (always), you don’t want that in critical systems. I’d yiu want the latest and greatest build a new kernel. And soon you’ll be in the same mindset to not change your roads (or at least not too hastily).
IBM never did that in the decades that OS/3XX exists and they too changed technologies. Stability and thus standard of doing things are the utmost importance of a kernel!
And I see in the Rust devs, something I’ve seen with developers below the age of 40-45 and that’s properly designing, testing and implementing robust critical software having the vision and mindset to not break what is there; this is why modern software breaks so often MacOS, Windows but also Adobe and AutoDesk critical applicaties crash like a junky getting of a high. Critical software takes time and is tedious, and it seems to not be a thing anymore. And it irks me in this business, these days.
Call me crazy buuuuuut..
What does this have to do with rust as a language???
Gee whats the road analogy to deal with a severe software regression? Are all Rust devs children?
From what ive seen rust is just another java script hype today gone tomorrow.
Leenus 😂
bachefs single handedly destroying rust use case good riddance, i hate rust that can't be compiled with cygwin
Well if rust leave Linux , rust will fall into the forgotten languages
Here's a thought, maybe the Rustaceans can rebuild TempleOS in Rust instead shoehorning themselves into existing projects
As a developer, myself personally I want my operating systems to just work. If that means putting the code in c okie dokie if that means putting it in rust so be it. To be honest both are viable systems programming languages personally I know C myself; however, I have no issues with rust there's a lot of people who like to stick with what works. Also there are people who like to just do the new thing. Due to the polarization that's been happening in our society people have trouble agreeing on that to be frank a balance needs to be struck.
Leeenus
To be fair, the C kernel team has a reputation of "patronizing pedantic megalomaniacs" to quote the pop_os team
I knew the whole Rust thing was gonna be a problem, just make another Kernel in Rust, don't try to mix it into the C Kernel or you're gonna have clashes by having two subsets of developers focused on different parts of the same project that they cannot mutually understand, it's problematic.
I don't side with either camp, i merely acknowledge the issue and fully expected it from the start, which is why i didn't want Rust in Linux, it makes more sense if you start another Kernel as a fork and write that in Rust.
Shoehorning Rust into the middle of the existing Kernel will always be problematic for various reasons, the same way adding any other build system and language would be
I have some bias, so as usual take the comment as seriously you would take any comment on a YouTube video.
But my point of view is that Rust is a newcomer language into the kernel, and should adapt to the existing environment rather than makes things more difficult for existing code. And maybe some maintainer are viewing rust code through a stricter lens because having a different toolchain to build the kernel is already making things more difficult than they are for a lot of existing developer.
As per my experience as a user on the receiving end of a tool transition to rust, it makes my life more difficult, and because of some of the details of my setup, rust building tools cannot be easily found on my path. And I can rarely download pre built binary.
Also as far as I know some part of the Rust community has been far more vocal into discouraging either wannabe or prominent Rust developer into making further contribution to the community.
The irony of C developers accusing Rust developers of being in a cult is delicious.
Rust getting hated on for simply existing as usual
Ok, so I gotta know. Is Linus' name pronounced "Lean-us", or "Line-us"?
Always thought it was the latter, and not the former.
Rust is glowing
Sounds like Rust for Linux devs need to hard fork Linux. And that western governments should pass laws preventing operating systems developed using non-safe from being used by large corporations, militaries, critical industries or critical infrastructure with a deadline to transition in a decade or further away.
The problem is that most of the devs in the linux kernel are C devs, not a surprise given the time spent
Its a fundamental problem of "We've been doing this OUR way for years, why are you coming in and ruining our way of running things" that most big organizations sadly tend to become, and the kernel is no different, they have reached that point
This is fundamentally not a C lang devs vs rust devs problem, this is a long-term maintainer vs new "junior" problem, where the old people are threatened by the change to their sanctuary
Its a fully human thing, I've seen this so much in various companies its absolutely not about the language
You could replace C with Golang devs and it would happen all the same
"Leenus"? And Wikepedia is a terrible source for "facts".
I wrote software in rust professionaly, for two years.
The only thing it convinced me of is that rust is not the way forward. It's an another strange side step of a language. Definitely usable for certain things, but I wouldn't use it for everything.
Why it has such rabid followers, I don't really know, but I have a guess. It is obtuse, takes a long time to learn and often requires sacrifices to use. It makes people who went through that effort invested in it. It's like religions having many rules on behaviour – the more rules, the more likely it is to survive.
Anyway, I do not believe shoving rust into the linux kernel was a good idea. And this is not from a technical perspective, but the fact that it leads to this kind of cultural clash. The tech might be good, but the culture around it is immature and heavily autistic.
12:43 I don't believe this is specifically for graphics subsystem crashes. Historically kernel panic messages just didn't work if a DRM driver was in use. They would only show on fbdev drivers and that was about it. There has been a lot of work recently on getting panic messages to show correctly on DRM in general as almost no one uses fbdev drivers at this point outside of early boot.
I do think that rust in the kernel is good…but also, Linux has been C for a long time and it's not going to be easy to get rust in it, I feel like the rust devs might be moving a bit too quickly.
as purist programmer, one is allow to only mix 2 languages assembly language and a high lelvel one , c and rust have no business comingling with each other, this elevate the complexity of thing,
if Rust is that great as a programming language the should not have issue creating their 100% Rust kernel, instead they want to complain and blame the the original api for it issues,
even a programming language change over time, software that look like frankensteing are terrible and too complex to understand seriously if they want Linux with rust they should start porting it now, but the language is immature and it was recommended by an overzealous idiot from the gonverment to make all software safe
Rust developers frustrated? Yeah. f-Rust-ration, it's baked into the language. You can't just walk into a project and expect everything to change for you and around you, especially something like Linux. Honestly, Linus is the OG pathfinder. It seems kinda arrogant to come in thinking, you know the way, and everyone else must be wrong.
You're never going to have a "safe" kernel. Rust is "safe" because it delegates unsafe, or just goes unsafe and is no longer safe, and now you have to be a guru in how the compiler optimizes code and the assumptions it makes. You're more unsafe at that point.
I have now read all the comments here and they are depressing. It’s like reading “smart” people talking about how dumb electric cars are…
People discover one way to do things, and then they decide to stop learning.
I'm with the maintainers it's right they are very conservative with rust code when you understand how complex the kernel is but imo rust shouldn't be in the kernel
The problem with the "just make a new kernel" is that if push comes to shove we might just see the death of Linux. A vast, *VAST*, amount of work is being done by corporate backed maintainers and the foundation itself gets most of its money that way. I think Linux will just get obsoleted if that is pushed for.
Once I hear rust comunity is a bunch of narcissists that don't accept their cult language have problems. And from my personal experience, rust is about abstract EVERYTHING as raii paradigm. Under supposition their raii is conflicting with legacy huge amount of C, I suppose it's better for them to create their ideal hevean of abstraction from a clear slate. Let the better system win. I think rust is a very interesting language, and their idea can actually end up winning this natural selection.
It kinda pisses me off that the C maintainers are being so petty. Like they don’t have to like Rust, but going out of there way to make the Rust maintainers lives difficult is just childish.
Whenever I see people be petty and make others lives/jobs difficult it just screams jealousy to me. Like nobody is forcing them to learn Rust, and C has benefits over Rust and vice versa.
Rust-devs are cancer and should just stay out of the Linux community. Their ideology is toxic and will eventually destroy the community if left unchecked.
Just fork it! Rewrite all in rust!
Rust Dev's: We dont want C dev's to lean rust.
Also Rust Dev's: He didnt want to help me so i quit.
Imagine inviting a homeless stranger into your house with the intention of giving them a chance to get on the road to success.
It starts off well enough and looks promising as they have a shower, get some new clothes and good food into them
After a few days you notice some subtle differences in how you and they approach things. It’s a great learning experience for everyone’s benefit
After a few more weeks, you find that they are getting increasingly aggressive, and insult your “obsolete view of the world” whenever the chance arises
Old friends of the guest start rocking up and taking residence in your remaining rooms .. this is good, it means your plan to help is having a big impact
A couple of months later, you come home to find the interior of your house converted into a temple to the Mighty God Marduk – ruler of the 7 kingdoms!
Your guests insists that YOU take the initiation rites, and swear allegiance to the Priests of Marduk
They are only wanting to make the world a better place, and free it from the oppression that YOUR kind caused in the first place
It’s for the common good. Convert now, or die by the spear of Marduk, useless infidel !