← Back to context

Comment by Diggsey

10 months ago

He's not wrong, but he hasn't addressed the problem:

Some maintainers are rejecting changes as a way to block a project they disagree with - ie. there is no path forward for the contributor. I wouldn't assume this normally, but they're not hiding this fact, it's self proclaimed.

On the other hand, Linus has been largely in favour of the R4L project, and gave the green light for it to go ahead.

The Linux kernel maintainers need to figure out among themselves whether they want to allow Rust to be introduced or not, and if so under what constraints. If they can't come to an agreement, they're wasting everyone's time.

Once that happens, either the project is canned, or people can stop arguing over if these changes should be upstreamed, and start arguing over how instead, and that's a lot more productive.

It's not the maintainers job to make your project happen.

It's yours.

If you need someone to do free work but you can't convince them then you either get their boss to tell them to do it, you take over their job, or - the one thing that no one under 30 ever seems to do - fork and do the work yourself without anyone stopping you.

  • Reducing this to age is overly simplistic. When Linux was younger and simpler, it may've been easier to fork, but today it's a massive system with huge inertia behind it. Even if you are right in principle regarding your changes, it's extremely hard to overcome that inertia.

    In the related submission on this topic [1], the author makes this argument in a lot more detail, that it's essentially impossible to make a Linux fork sustainable without massive investment that no one can realistically obtain.

    [1] https://news.ycombinator.com/item?id=43036904

  • Noone's asking the maintainers to make the project happen.

    It is the maintainers job to determine whether a project should be pursued at all.

    If a maintainer says "yes I'd be happy to accept feature X", and then simply rejects all PRs implementing X without giving feedback then they're a bad maintainer!

    That's essentially what's happening here due to the fact that the kernel maintainers have not come to a coherent decision regarding R4L.

    • >Noone's asking the maintainers to make the project happen.

      If you're asking them to accept your code then yes, you' are asking them to support your project forever.

      If you weren't sending them patches then they couldn't block you. Since you are they can.

      Again, it's not their job to support this great idea you have that means they have to change how they've done everything for the last 30 years.

      12 replies →

  • I agree with you completely. If rust is so great why not make a new kernel with it and compete? or fork and start rewriting subsystems?

    I do also understand the frustration when an open source project strings you along (me: can I join your club?), ask for this and that (them: sure if you pay your dues), ensuring your cover every "important" person's pet use case (them: and also buy us lunch), then publicly snark about the whole thing (them: this new guy know about no mustard on the lunch!) and kill your failing motivation (me: oh, sorry).

    That's why the fork is so appealing. If it's good enough for long enough you get to join the club.

    • What I don't get is the complaints from the Rust people.

      If Rust truly is zero overhead on the C side of things then they should be just able to fork Linux indefinitely without any worry about what upstream does. Just fast forward every change and you're golden.

      Then they can write every driver they can imagine to their hearts' content.

      The fact they aren't doing this tells me that the promise that this won't impact C people at all isn't much of one.

      9 replies →

IIRC Linus has been in favor conditioned on the agreement of the respective subsystem maintainers. Meaning, he’s not deciding over their heads. And introduction of Rust can be handled differently from subsystem to subsystem.