Resigning as Asahi Linux project lead
-
Going to need you to cite your sources on that one. https://www.adelaidenow.com.au/sport/football/the-major-flaw-with-racial-charge-against-sam-kerr-that-shouldve-seen-the-case-abandoned/news-story/62e5fad93d835c9f432923375e5e833d
-
In the same way a swastika is no longer linked to an ancient peace symbol.
-
Can a maintainer really NACK any patch they dislike? I mean I get that Hellwig said he won't merge it. Fine. What if for example Kroah-Hartmann says "whatever, I like it" and merges it nonetheless in his tree?
-
Linus is pro-Rust. It is not clear from what you wrote that you realize that. He has merged plenty of Rust code. I personally expect him to merge the change that caused all this current drama (though I could clearly be wrong about that).
Right or wrong, this is how Linux kernel dev has always worked. How long did it take for real time to get in? How smoothly is the bcachefs merge going? Have you read any of the GPU driver chatter?
Honestly though, it is not just the kernel. How much different is the Wayland scene?
I am hardly defending Linux here by the way. I think the maintainers are blocking progress. I am merely pointing out that it is hardly new or unique.
Anyway, RedoxOS is quite progressive. They would probably love help from anybody that finds Linux kernel dev too stodgy.
-
I doubt Greg is pulling in Rust until it has been through the mainline. That said, Linus can merge anything he wants.
-
If we are going to be honest, let’s not be misleading.
Nobody is looking to replace C in the kernel. This is not a “rewrite it in Rust” initiative.
What the R4L folks want is to be able to write “new” code in Rust and for that code to calling into the C parts of the kernel in an idiomatic way (idiomatic for Rust). So they need to create Rust interfaces (which they, the R4L side, or doing). This whole controversy is over such an example.
At this point, we are talking about platform specific drivers.
Now, new kernel code is written all the time. Sometimes newer designs replace older code that did something similar. So yes, in the future, that new code may be written in Rust and replace older code that was written in C.
Core kernel code is not getting written in Rust for a while though I do not think. For one thing, Rust does not have broad enough architecture support (platforms). Perhaps if a Rust compiler as part of GCC reaches maturity, we could start to see Rust in the core.
That is not what is being talked about right now though. So, it is not a reasonable objection to current activity.
-
GNOME is not user-centric. GNOME is GNOME-centric.
-
It was an example. I don't have a fucking clue how all the maintainers are named.
The main question was: why can a maintainer NACK something not in their responsibility? Isn't it simply necessary to find one maintainer who is fine with it and pulls it in?
Or even asked differently: shouldn't you need to find someone who ACKs it rather than caring about who NACKs it?
-
If that does happen, I just hope there will be enough developers by then that can/will want to use it (as in, write rust code). Especially developers that can put up with the kernel process and its people.
-
If R4L authors want to use Rust so badly, then still:
Maintain your own tree! Let's see how simple and clean these interfaces are over the longer haul.
They will get mainlined if they are technically superior.
-
Take this case, it all started over a bit of code. The subsystem maintainer refuses to take it. But it does not require any changes to existing code. It just has to be merged.
Linus can take it directly. If he does that, the Rust folks can start to use it. The sub-system maintainer will lose in the end.
At some point, the battle will be lost by those trying to block Rust.
It all depends on Linus. We will see.
Linus hasn't been merging the necessary code, by virtue of supporting a maintainer who was very obviously trying to sabotage R4L; if Linus was going to stand up for R4L, this would have been the time.
-
Linus can merge whatever patches he wants to, and the stonewalling subsystem maintainers would have to deal with it--like he did with the eBPF scheduler. R4L maintainers already wrote the patches, they literally just needed to be merged.
-
Slightly OT but I always thought Asahi Lina was a woman. TIL.
-
You're probably right from a legal perspective, but the difference between "donation" and "salary" is pretty murky in this context.
-
Yes, but asking him in this case was basically a courtesy, the code isn't going into anything he manages. He can reject it, but that's an opinion, not a decision. It can still be merged if the regular maintainer (or someone senior like Linus himself) approves.
-
It was merged into mainline, in 6.1, over a year ago.
-
People are not under sanctions, and no linux developer worked for the Russian government, and since when has a war affected who works on what open source project. There are wars all over the place all the damn time ..
I am not talking about the sanctions, I am talking about the additional remarks on how nationalist and racist both the leaders of the project appeared to be from their statements.
-
It sounds like you really value skill and precision.
-
It's never been confirmed that they are the same person, and they both operate as if they are completely separate people. Lina goes by she/her on stream as well.
-
They are not irrelevant points and hopefully I can show why.
So I went fishing through the kernel rust directory and didn’t find any drivers. It’s late and I definitely missed a lot (I didn’t even go through the drivers branch, but should rust code be there? I thought it all lived in /rust…), but the r4l page lists the nvme driver, an implementation of existing functionality in rust that is in the words of its description page “not suitable for general use”. The r4l page also has the null block driver, which is not a strictly speaking useful thing for actually doing stuff with the computer but is a great way to do a bunch of goofy crap and its page on the r4l website explains why it’s being rewritten in rust.
I just want to pause here in the comment and say that the null block driver is actually a phenomenal thing to be rewriting in rust for so many reasons.
Then there’s the android binder driver which is not something I understand enough to comment on, but is a rewrite in rust. I also saw a puzzlefs driver on the r4l page. Puzzlefs is an experimental file system written in rust to begin with so it’s no surprise the Linux driver is rust.
Last the r4l page offers two gpu drivers, the apple one that asahi uses and the nvidia nova one which seems to be in the early stages of development.
As I said, I probably missed some drivers and other rust code that needs to use —since it’s our topic of discussion— the c dma bindings through a wrapper.
But if all six of those used the dma c bindings wrapper then that’s still far short of my agreement with you that the right way would be to write a bunch of good rust shit that uses the wrapper then say “hey, if we move this wrapper into dma directly it’ll save 10k lines of code because it’s a hundred lines and used in a hundred things”.
Instead it’s used by three rewrites (the point of r4l!), an experimental file system, a in development gpu driver and the asahi mac driver.
For a third time, I’m absolutely 100% sure there’s more rust drivers than that, but enough to make the argument that you’re taking a hundred lines out of a hundred places?
When I was younger I was involved in local government. I was idealistic and thought that having been accepted at the table, the correctness of my ideas would be evident and they would be accepted and implemented quickly. Of course I was very wrong and was surrounded by competing interests vying for limited resources so the force of my argumentation had almost no effect.
What was effective was constructing scenarios that made it almost impossible for people to act in ways other than what I wanted.
I chose a narrative analogous to the common rust person complaint of “political reasons” here on purpose because ultimately instead of appealing to an authority to settle the chicken or egg problem for them (which is somehow not political, despite the authority existing within some governing structure but whatever!) rust devs should be saying “who the fuck cares, I’m headed to market with a cartload of chickens and eggs, you gonna give me a stall to sell out of or am I gonna be clogging up the thouroughfares?”