It seems Linux is now a full-on corporate AI-driven project:
The requirement to add Assisted-by tags to patches created with LLMs will be removed, but maintainers still want to know about how a patch was created. […] There was agreement, though, that this information does not need to be recorded in the changelog; the suggestion came out of the discussion is that this information should be put into the cover letter instead.
The obvious benefit is that when the kernel gets noticeably worse and terrible defects are found, nobody can readily determine whether the defects were introduced by LLM-generated code.
The secondary benefit is that it enables corporations to get rid of that pesky GPL. AI-generated output cannot be copyrighted in the US, and the US Copyright Office guidance is that if a work is partly AI-generated and partly human generated, to get copyright protection you must disclose which parts are AI-generated (and therefore public domain). The Copyright Office state the expected procedure:
Individuals who use AI technology in creating a work may claim copyright protection for their own contributions to that work. […] For example, an applicant who incorporates AI-generated text into a larger textual work should claim the portions of the textual work that is human-authored. And an applicant who creatively arranges the human and non-human content within a work should fill out the “Author Created” field to claim: “Selection, coordination, and arrangement of [describe human-authored content] created by the author and [describe AI content] generated by artificial intelligence.”
By ensuring nobody can tell which parts of a work are AI-generated, it becomes impossible to claim copyright protection on it in the US. This will mean the GPL license on Linux cannot be enforced, and will allow US corporations to close off Linux. It seems that this is understood by the kernel developers, per the LWN article:
There is some concern about companies maintaining private kernels with LLM help, but there does not seem to be much to be done about it.
Of course, the legal situation isn’t completely settled into case law yet. The outcome corporations would like is that LLM output is their copyright, and we don’t get any copyright protection when they ingest our work. However, if they can’t get that, then nobody having any copyright protection for LLM input or output is an acceptable outcome for them, because they’d rather keep all their source code private anyway.
Then there’s this gem:
[Linus] ends every session with a lengthy cleanup pass that takes a couple of hours to run, executing tasks like ensuring that the code matches the comments. That amount of work cannot be done with a free LLM account. I asked whether that risked cutting off bright new developers that we would rather hang onto; Torvalds answered that the kernel project only wants serious developers. That includes having access to enough resources to function in this world.
The fact that working on Linux code will now require corporate backing to pay for the AI will also aid in taking Linux away from the free software community.
Torvalds said that the time has come to make it harder for new people to contribute code to the kernel. People like Kroah-Hartman have spent years trying to teach people how to contribute; it is time to stop doing that, he said.
Time for that pesky community to go away. No new contributors are needed, the LLM can do it all.
That Linus would go along with all of this is not a surprise. He has never cared about free software.
The original Linux license disallowed charging money for copies. That was purely because Linus resented having had to pay money for Minix. But that license discouraged people from contributing to Linux and distributing it, so he decided to change it. At the time GNU software like GCC was being adopted by commercial organizations; on Sun systems, people were using GCC instead of Sun’s commercial compiler. So it seemed like the GPL would be a good bet for getting people — and corporations — to contribute.
It was never about the four freedoms. Linus has been blunt about how he feels about licenses having any kind of moral component; quoting from an interview in 2011:
So the first and the very negative answer is that I absolutely despise the people who try to push the GPL as being about “ethics”. I think that’s absolute bullshit. Why? Because ethics are to me something private. Whenever you use it as an argument for why somebody else should do something, you’re no longer being ethical, you’re just being a sanctimonious dick-head.
Later, when corporations started ignoring the terms of the GPL, Linus spoke out against enforcement:
I personally think this arguing for lawyering has become a nasty festering disease, and the SFC and Bradley Kuhn has been the Typhoid Mary spreading the disease.
He explicitly said that he doesn’t care about Tivoization as a way to bypass the GPL:
Rms calls it “tivoization”, but that’s a word he has made up, and a term I find offensive, so I don’t choose to use it. It’s offensive because Tivo never did anything wrong, and the FSF even acknowledged that. The fact that they do their hardware and have some DRM issues with the content producers and thus want to protect the integrity of that hardware.
The kernel license covers the kernel. It does not cover boot loaders and hardware, and as far as I’m concerned, people who make their own hardware can design them any which way they want. Whether that means “booting only a specific kernel” or “sharks with lasers”, I don’t care.
So when the GPL’s freedoms conflicted with commercial interests, he was always on the side of commerce, to the point of not wanting TiVo’s feelings to be hurt.
So when Linus said:
This is NOT some kind of “social warrior” project, never has been, and never will be.
…he was absolutely right.
Linus also never cared about community. Linux started because he wanted a 386-specific Minix kernel, so he could have true virtual memory and memory protection. He also wanted to drop the microkernel design.
At the time, many Minix users were using other hardware — particularly 68000 on the Amiga, Atari ST and Mac, but also 8086 on older PCs. Minix for PC was available for 8086 or 386, on different disks, and the 8086 version was apparently outselling the 386 version 2:1. (I was hacking on the Minix kernel on an Atari ST to add Cyrillic support.)
Andy Tanenbaum was unwilling to put 386-only code in the kernel, because it would either split the community or throw the non-386 users under the bus. So Linus decided to write his own replacement kernel.
So right from the start, Linus was willing to alienate or exclude a big chunk of the community if it meant he got to play with some new technology. This time it’s expensive corporate AI.
But what was it that so impressed him with AI?
He has been playing with an LLM on a separate project for several months to learn about the technology, but hadn’t used one on the kernel until last week. He took an old patch and had the LLM revise it; the result has made him unwilling to work without an LLM. He plans to post that series at some point. Why bother, he asked, to search for all of the call sites of a function he has just modified, when the tool can fix them all automatically?
Or you could, you know, use any decent IDE, or a deterministic refactoring utility, or even a quick Perl script.
But, he said, it took six months to set up the tool to not produce bad responses.
The magic of AI. It can do something you can easily do in IntelliJ IDEA, once you spend six months teaching it.
If you are a competent developer, he said, an LLM makes a great tool, but only after that effort has been put in to set it up. He resisted suggestions to post his LLM-training materials, saying that each developer needs to go through that process separately.
He has a configuration that makes the AI work well. No, you can’t see it. You have to use the AI a lot yourself, then you’ll learn to love it. Come on, first hit’s free.
Linus Torvalds believes that blaming LLMs for the kernel community’s problems is wrong, when the problem is LLM users who do not understand how to use them or how the kernel works.
This is another attitude I’ve noticed in AI enthusiasts: the AI never fails, the AI is never the problem, it’s always the human who failed the AI by not asking it properly.