- cross-posted to:
- linux@programming.dev
- cross-posted to:
- linux@programming.dev
cross-posted from: https://piefed.social/c/linux@programming.dev/p/2509642/linus-torvalds-posts-his-first-ai-assisted-patch-to-the-linux-kernel-synthetic-test-clo
It’s funny how the “AI-assisted” in the headline turns into an “LLM-assisted” in the article.
The graphic with the magic “AI” hand is even funnier.
Clown “AI” journalism.
Fucking tragic…
I really can’t wait for tech communities to rid themselves of political tourist so the discussion can go back on how best to use AI instead of the high pitch screeching that fills the space.
I get that some people don’t like AI, but they should really just get back to putting the fries in the bag and stop slop posting.
Been away from lemmy for a bit and we don’t seem as bugfuck about hating AI as in the past. At least now we can have some conversations about sane use cases without being voted straight to hell.
Does it makes sense to make your development process dependent upon companies that lose billions of dollars every year and are run in a completely unsustainable way? (https://lemmy.world/post/53393512)
I think there can be some application of these things, but becoming cripplingly dependent upon AI when it remains to be seen whether or not the products will continue to be made or updated seems reckless.
AI is not going to die, no matter what. Survivors will crawl out the blast crater, no matter what.
But I’ve said much the same! If your workflow is wrapped too tightly around a particular AI, you may well be in for an ass fucking, and not the fun kind. I think the discussion should be around broad use cases and not, “Claude does it this way.” Does that make sense?
This is savage af. Is this considered a rare insult? I think it should be.
This whole situation reminds me of people’s distrust for Big Pharma. Forgetting the actual problem and just assuming everything it produces is evil and will kill you. The problem with big pharma isn’t that modern medicine doesn’t work, it’s that pharmaceutical companies charge so much for it that poor people are condemned to die preventable deaths in the name of profit.
The problem with AI isn’t that it can’t produce good code, it’s that it’s capable of producing a shitload of bad code at volumes no human can possibly review. It doesn’t surprise me at all that the guy who made Linux can wrangle an AI to produce exceptionally good outcomes. The problem is that there’s a million Joe Normals who are gonna try to replicate it with no idea how to audit the output.
I’d like to steal this comment for my Detailed And Nuanced Opinions On AI.
Fair enough!
I’ve been vocally against Linus AI advocacy, but I do understand all the points you make here.
I don’t like that a lot of stupid people will take Torvalds use and embrace of AI as gospel that AI is some be all end all.
I also LOATH that he is indirectly benefitting fascist corporations that committed the largest theft in human history.
But the code is good 🤷♂️
To say I am conflicted, is an understatement.
Isn’t the AI problem the vast amount of resources needed to produce code?
Text doesn’t seem to be much of a resource hog, at least not compared to static images and video. For example, ChatGPT seems like it will go all day running text errands, though I’ve never dived too deep or for long. Want free pics? A handful a day, for now. Video? Only the most primitive options are free.
That as well
Compare the resources used to the alternatives.
Unfortunately, we will never enjoy the fruits of prosperity, because our system is designed to squeeze first, ask questions later.
Instead of being reduced, human misery will be redirected, and little will change.
Plus all the employees who’ve been forced to produce and sift through that garbage code, because their bosses bought into the hype and don’t see the software for what it actually is.
Yet even for those Joe Normals, I kinda like the democratising effect that they’re now able to produce software, or modify existing software for their own use. Just don’t fool yourself into thinking it’s enterprise grade. Understand your limitations. And don’t spam open source projects with slop PRs because you think the AI makes you a software wizard.
I would think a siginificant portion of the population doesn’t possesses this sort of nuance.
Yeah, they clearly don’t. At the moment the downsides by far outweigh the upsides, but I keep hoping that eventually people will come to their senses.
This is an old argument
Right, like from March or so. Everybody in the loop, especially CEOs know that AI now produces clear code that doesn’t need any review.
But sometimes worth repeating.
I started using Linux about 30 years ago. I wasn’t a science major, but reading about the GPL and the GNU movement, it seemed to fit really well with my values. I was willing to put up with a lot (the first distro I used didn’t come with a working XFree), but it was worth it, to me. I never really sat well having Linus at the head. He just seemed like a bit of a prat most of the time, but whatever. Then I got nnoyed enough that I spent a year or two going through alternatives. I had used BeOS before I found Linux, but at the time BeOS had gone away and Haiku didn’t exist. Plan9 had a lot of cool things, but wasn’t a daily driver. Spent time mostly with FreeBSD, but after being a GPL fan, the BSD licensing just kind of annoyed me. Lately I’ve been finding myself feeling the same way I felt about the BSD world. It would be nice to get away from Linux and Linus, but at this point I’m much older, less willing to jump through hoops to get shit working. I’m hoping some kernel alternative comes along that ticks the boxes for me. Maybe Hurd will get there (ha!). I sure wish something would come along. Although, like worrying about the climate, or US politics, the momentum towards comprehensive social shittery just feel completely inevitable and I should try not to worry about it. I guess.
OpenBSD is great, Linus seems to be in the early stages of AI psychosis so now’s a god time to jump ship.
I don’t say that lightly either. The most recent debate about whether LLMs should be allowed to write the commit messages in the mailing list implies to me he’s losing the plot. People attached to these things will get very defensive of them even in situations that seem antisocial (should the LLMs be allowed to write emails and commit messages for instance).
Sad to see it happen but best to spend our efforts elsewhere.
Pa.
Ra.
Graphs.
What gets me is that this is roughly the best-case scenario for “capable hands” — Linus knows this codebase better than anyone alive — and a race condition plus a 9% read regression still slipped through on the first attempt. Reviews and testing caught it, which is the system working, but it moves the bottleneck from writing code to reviewing it. And review doesn’t scale the way generation does; skimming a patch is quick, but actually proving an LLM-assisted one is correct takes real effort. I say that as someone who uses AI tooling daily — reading code you didn’t write is genuinely more tiring than writing it, and that tax compounds the more you lean on generation. The maintainer-burnout angle might end up being the real story here, more than the AI one.
reading code you didn’t write is genuinely more tiring than writing it
What I keep saying. Good take except that you don’t use “AI” tooling, you use copyright evasion slop tooling.
I thought code couldn’t be copywritten? It’s instructions, isn’t it?
Half a century of companies suing each other over code licenses suggests otherwise
Instructions can be copywritten just like recipes can.
Code is just a recipe for computer brains
Linus knows this codebase better than anyone alive
Does he? Is it even possible to know the entirety of the Linux kernel within one head?
Does one need to know the entirety in their head to know it better than anyone else? If not Linus, who?
I’d argue the people who wrote the code for the various subsystems know more about it than the guys who “just” review and merge them.
That’s a fair point that I hadn’t considered
He’s spiraling downward, so even if he once lnew the kernel best, I am sure he no longer does by a long shot.
Verifying LLM code isn’t necessarily harder than verifying a human PR. I hope that this also boosts automated test tooling so that it also gets easier to test these PRs, since the focus will shift to review rather than writing.
Verifying 10 pounds of incoherent architectural choices and over engineered submodules is certainly harder than reviewing tee bits of coherent human work.
Sure, that’s why I said “not necessarily”. LLMs can be misused and made to do dumb shit too. But I have seen plenty of bullshit come from human developers too.
LLMs make dumb shit by default. Even Linus had a race condition caught in review when he used AI to bulldoze his way through a feature.
Agentic loops have major flaws which humans don’t, a tradeoff you seem to keep ignoring while you suggest that developers and agents are comparable in their output quality. The only comparison is, at surface value, they both produce code. Deeper than that, there are plenty of tradeoffs.
Yes tradeoffs in code quality, project quality, maintainability, technical debt, … you need to be a good programmer to get a good project out of an agent — and even that isn’t enough at times.
And verifying 10 pounds of incoherent architectural choices and over engineered submodules of human work is certainly harder than reviewing tee bits of coherent agent work.
You are? I can also make false dichotomy fallacies!
The difference is that AI is prone to this issue, even a single agentic process. Humans only really run into this issue with large, disorganized teams.
Humans burn out.
https://maevyn.codes/decoherence
edit: hold up. Presenting as though what I said works in reverse,
verifying 10 pounds of incoherent architectural choices and over engineered submodules of human work is certainly harder than reviewing tee bits of coherent agent work.
as though agentic and human contribution is equatable… wouldn’t that be false equivalency? Tisk tisk…
Human work is not swappable with agentic work without tradeoffs, which is kind of why I was making a point at all.
Well no editorilorizing in that title. no sir. /s is this the change that also have produced articles that stress kinda the opposite.
If you think the title is bad, wait until you see the graphic of an imaginary “AI” hand.
and in the process he introduced a race condition, a performance regression costing up to 9% when making reads of files around 1 MiB and dumped the responsibility of fixing his mess on co-maintainers and went on vacation.
Yeah but it sounds like three steps forward half a step back. Also, reviews/testing caught it. Sounds like the system is working. I’ve written quite a few race condition bugs in my 25 year career. That nobody caught until weeks in prod.
I understand the reluctance of AI but there’s no denying that AI in capable hands can be useful.
More like three steps backwards one quarter step forward.
In capable hands. Is the real issue. Too many people believe they are capable hands.
Even incapable hands can do more than they could before. The problem is when they attempt far too much.
Too many people believe
they areAI is capable hands.Capable hands are going to quickly diminish as people grow up around vibe coding.
That’s not a new issue.
The absolute slop I’ve seen people hand write long before AI is actually impressive.
AI is just a force multiplier
I mean, fine. But its easier to fix human written slop over AI slop solely because of the sheer volume of AI slop.
Eh it depends, you can use AI to help you fix AI slop.
A hand written project I worked on was such a mess I can’t even begin to describe how badly written it was.
It was a POC writen by students that then just got launched as the actual product for millions of users.
The DB had zero foreign keys.
The thing just had to be rewritten from scratch
It was a POC writen by students that then just got launched as the actual product for millions of users.
Classic. I really don’t understand why anyone would do this.
People are morons or just don’t give a F.
Sometimes both
if Linus, who has worked with the language AND the project for decades, can’t find a race condition and a performance regression in his VERY FIRST LLM-assisted commit, then just maybe we should accept that humans are fucking horrible att catching the mistakes that clankers make and stop deluding us into thinking that this is the future of software engineering.
“Skill issue” was a dumb argument for pushing against rust, and it’s still a dumb one now. There are plenty of reasons not to want LLMs in the Linux kernel, no need to make Linus sound like some godlike entity who’s never written buggy code before LLMs
yeah, it wasnt my intention but I made it look like I put him on a pedestal there. My bad
What makes you think he wouldn’t have made the same mistake hand coding it?
If he didn’t catch it on his own review the likelihood that he would’ve made the same mistake if he coded it himself is high.
First of all, if a human makes a mistake it’s a learning opportunity. When a human misses a bug an LLM hallucinated, noone really learn from it.
I like to compare it with the xray machines at airports. Human operators stare at the screens hunting for weapons and other prohibited items and miss pretty obvious stuff because they get bored out of their minds. They actually added a mechanism to insert fake xray images of weapons ever so often to actually keep the operators interested and alert. Ain’t much too different from doing code reviews being the human-in-the-loop/scapegoat.
Also, LLMs don’t necessarily generate good code. They excel at generating good-looking mediocre code.
So yeah, I’m gonna go ahead and claim that Linus is more likely to miss a bug a LLM wrote on his behalf than one he wrote himself.
The TSA has to pretend to even keep their employees looking busy. Hilarious.
[…] if a human makes a mistake it’s a learning opportunity.
As per Linux kernel AI policy (and a common fucking sense), you’re the one responsible for the code that is submitted from your side, regardless of the tools and pipeline you use. Now get this, when an agent makes a mistake, that you didn’t notice, that’s still a learning opportunity, especially when you’re held accountable for the fuck up.
Also, LLMs don’t necessarily generate good code. They excel at generating good-looking mediocre code.
True… When you give them a general task that involves solution of technical problems and decision making. But when it’s a concrete “do the x thing over here, using this, this, and this”, which is then accompanied by your manual review of the changes, they actually do fine, basically allowing you to minimize the tedium, while not robbing you of the most interesting and important parts of development.
Did Linus’s pipeline look like what i described, tho, when he introduced the aforementioned bugs? Was it his technical decision that, by proxy, introduced bugs? I don’t know. Regardless of the answers, he’s a grown-ass man, and thus is responsible for the consequences of his decisions.
Is he more likely to introduce a bug now that he uses AI? Only time will show. I might be wrong, but i think Linus is too smart for it to be the case.
Despite the “AI policy and common sense” saying that the contributor is responsible for understanding the code committed, Linus did clealry not treat this with the due dilligence required. He used unproven error-prone technology to emit code for a project that millions of users depend on and sent it in despite it having the race condition and the performance regression.
If Linus was as smart as you seem to believe, he should have checked that code as if it was submitted from his worst enemy, as if it was written by a smarter and malicous adversary or at least a very enthusiastic imbecile. But the LLMs are designed in a way that trick you into believing that they are smart, reasoning and capable and you drop your guard. The code looked good, he got fooled and here we are.
[…] He used unproven error-prone technology […]
I’d say, there was plenty of time for people, including Linus, to understand its limits, especially considering that before introducing current AI policy to the kernel maintainers, he used it for his personal project.
Human-written code is just as error-prone and unreliable, even if it is written by the most experienced dev there is. Do i really need to explain that your own ability to write quality code varies, based off countless factors that affect your mental state? John Dev didn’t have his breakfast — boom! Uncaught race condition, segfault, or some other critical bug, or safety vulnerability is introduced into prod.
What i’m saying is, unreliability of the submitted code is a problem as old as coding itself. It’s a well known one, hence all the static analysis tools developed over the decades, code reviews, hell, even opensource itself partially exists to solve this very issue. The fact that the bugs were caught is the living proof of just that.
If Linus was as smart as you seem to believe […]
“Smart” doesn’t mean “omniscient”, doesn’t mean “makes no mistakes”. “Smart” is not some kind of divine status. He’s still human, he still gets tired, his focus still can dwindle, and important things still slip his mind.
The code looked good, he got fooled and here we are.
That’s your speculation, probably based off your own experience. Neither of us know the exact circumstances, by which the discussed bugs were introduced.
First of all, if a human makes a mistake it’s a learning opportunity. When a human misses a bug an LLM hallucinated, noone really learn from it.
Agents can “learn” from their mistakes within their harness.
You or the agent can add notes in the memory files or the repo level agents.md files, or standards and conventions files to look for those mistakes.
Most harnesses these days will spin up a new agent to do a review once the implementation is done, that agent will take memory files, agents.md files and other standards and conventions files into its context to know what to look out for so it won’t make the same mistake twice
Claude code is even doing “dreaming” where it’ll do a cron every night to look through all the conversations from the day for stuff it messed up on and add to its memory files to not do those same mistakes.
You putting quotes around “learn” and “dream” is you admitting that they are not really doing either. LLMs don’t think, learn, reason, analyse, design or anything else that require a human mind.
You making a note in agents.md did not teach the model anything, it’s a halfassed attempt to compensate for the fact that LLMs are INCAPABLE of learning. You need to create a new model trained on the new data you wish to incorporate, because when that phase is over the model is locked in.
Have a look at the claude code leak and you will see how they actually prompt inject constantly to try to keep it on track and not do stupid shit. It has fucking CYBER ALZHEIMERS for gods sake.
Look at that woman at meta who told an agent to suggest which emails to archive, explicitly forbidding it from deleting anything. Guess what? That internal monologue filled up the context and that instruction fell off the back of the truck, and the clanker happily started shredding emails until they literally pulled the plug.
LLMs are somehow passing the Turing test for a subset of humans and its embarassing that the bar is apparently that low. The AI labs are doing their best to weaponize that and you fell for it.
Wild how mad you are about this.
Not really
Ok. Looks like the process just needs to do more testing/validation in CI.
What’s your alternative? just stop progress here? No more new things?
How about we keep relying on deterministic tooling that are not built on stolen data and don’t fuck the economy and the environment at the same time? How about putting a fraction of the money invested i LLMs into SAST and DAST tools? Maybe a dollar or two for fuzz testers? How about we look at projects like curl and build safeguards into the project to avoid footguns?
I’m not opposed, that honestly sounds good. Now, let’s wish in one hand and shit in the other and see which fills up first.
People will do what they do.
I run small local models, I do a lot of what you are saying. However this technology and process is new. Yeah capitalism will fuck everything up but you can’t control people.
Capitalism is a control mechanism for people
So let’s make a competing one and swap it out for something else. Oh and by tomorrow, I’ll wait.
Just because there are better options doesn’t mean you can change it over night and without set backs.
Have you considered that you might be an ai, yourself? I hear only AI makes these mistakes.
Isnt that because of a bug in f2fs, and not his kernel patch?
How does this compare to his usual patches?
This is the first time a bug has been introduced into Linux, the AI apocalypse is truly upon us.
i’m too autistic to understand, whether this is a sarcasm
It was :)
Basically this tone of voice:

deleted by creator
Assuming these updates are fully tested before they’re deployed, by a human, it shouldn’t be that impactful negatively that AI is being used. The problem comes when updates are moved into production without human oversight.
But it gives me the heebie jeebies, since AI is known to make and fuck shit up, and I’m stuck using MS Teams every day in my job so I see all the weird shit that vibe coding produces. I don’t relish the thought of weird, stupid shit happening to my Linux installation.
Plus studies on skill decay when using AI. Also the linux maintainer onboarding pipeline—which was already critically endangered—is now no longer building understanding through writing code, just monitoring it’s generation.
I personally think you need to write a language by hand without AI doing it for you to learn in detail. It’s like trying to learn how to do math or how to write mandarin by just supervising an AI doing it… you need to do it yourself. Supervising is fine if you’re already fluent in mandarin and have been writing it for years and years. If you’re just learning it’s less than useless. If anything its directly harmful to learning.
Same with speaking a language yourself without crutching your native language as the best method to learn to speak it (immersion)
Edit: The long term externalities of AI—like pretty much everything nowadays—is going to be made worse by short term thinking. Quarterly profits and yearly results take precedence over long term skill development. Even OSS like linux will eat its seed corn out of expediency because of a lack of maintainers and new candidates being onboarded into the ivory tower mailing lists…
Yup, fair points.
Human review of AI is sufficient in theory, but in practice it’s never as thorough as the understanding you get writing it yourself. It’s hard to avoid AI, but it is a constant invitation to laziness.
Unlike reviewing a human who writes code there is zero chance of AI learning from the past and making fewer mistakes in the future. At a least a human has a chance of becoming better at coding from review feedback.
Ergo, you should leave as little places for AI to make mistakes, undiagnosable by static analysis tools, as possible. In other words, make all the technical and algorithmic decisions yourself.
No? Are you not aware of the concept of “memories”? AI do indeed take feedback into account, if they’re designed to.
AI does not have memories.
It has a comparatively small context window that makes things worse the more it fills up.
Eh I really think it does. You don’t news to load everything into context. You need to load where everything is located into context.
That isn’t equivalent to memories.
You are mistaken. Some AI models do indeed have memories.
They save some strings in a document to later read and “remember”. Calling them memories is a reach.
My point stands that they can learn from feedback. Your memories are only information in a virtual document, too. Just as susceptible to corruption, or misinterpretation.
The auto-generated memories I’ve seen it create are pretty inane: “always name variables container_ when in MySpecificClass”. Not really learning engineering principles.
Similar, I’ve found AGENT.md files might nudge it in the right direction, but as always it’s a fuzzy matcher, not a learning engineer.
It’s best to generate memories manually, but I’ve had good fortune with auto-generated so far. At least using Co-pilot.
I have found it best to have another AI generate the agent.md - having a layer of interpretation can really clarify the information imparted.
You’re not wrong. I personally prefer to do the work my self.
One thing I’m noticing about AI code is it’s very, very task oriented. Like it will produce code, that works for the one objective, but absolutely will not account for other interactions with other parts of the system. It’s really bad at juggling multiple priorities so for every solution it creates, it causes another 2 problems with other parts of the stack. Human coders would design a solution that takes those interactions into account from the ground up. With an AI solution, you kind of have to rebuild those interactions as an afterthought, which is where a lot of failures occur. Since interaction of multiple subsystems is kind of the whole point of a kernel… I have concerns.
Human coders would design a solution that takes those interactions into account from the ground up.
Lol, this only happens in Utopia
Utopic might be a bit of a stretch, but I should probably qualify that as good human coders.
Even good programmers are captured in poor practices due to short timelines and end up delivering shit code.
Which Microsoft apparently has access to zero of them.
Every time somebody says Microsoft is now shit because of AI, I have to remind them windows has been human slop since Vista.
it shouldn’t be that impactful negatively that AI is being used
Doesn’t it invalidate the GPL? Open source licenses depend on copyright, and LLM-generated code isn’t copyrightable.
(Also, it can’t be proven not to contain plagiarised proprietary code, in fact it’s quite likely that it does; between this, the testing / review burden, and the mental decay of developers that use LLMs instead of coding, this pretty much kills open source projects, in several different ways to make sure they stay dead…)
It’s not that they’re not copyrightable. That court case is misunderstood. The vibe coder tried to give the AI the copyright and the judge ruled that was stupid because AI can’t own shit.
Also copyright doesn’t mean much anymore because companies are rewriting open source software as copyrightable vibe coded bullshit the same way people are “open sourcing” Adobe using vibe coded crap.
It’s garbage “progress” all the way down.
The directive isn’t pro AI. It is pro results. It emphasized responsibility.
It also emphasized AI
It allows AI… nothing more.
We muat be reading different flames
What directive is that?
The Prime Directive.
- Serve the public trust
- Protect the innocent
- Uphold the law
- (CLASSIFIED)
Using AI tooling is fine as long as you know what’s being written by it.
I’m still a massive fan of copilot auto-complete because you’re still laying out the structure of the code and can hint at what you want with strong naming and good doc strings which are good practice anyway, and then the copilot finishes your thoughts and you save time. Especially good at rigging up tests.
Didn’t that used to be called Intellisense?
Only for the Visual Studio implementation. The general term is autocompletion.
Aha, gotcha–thanks!
Yup! I love AI for banging out object models. I can give it a pdf listing the spec with what amounts to hundreds of member variables and getters setters. I can say “hey AI turn this into a class, use the GOF builder pattern, and boom it does it. Saves me hours of monotonous typing.
This! 💪😎✌️
Dubious claim
I always read this as shardware.
Calm down, Wit
Thanks for ruining it for me now.




















