These days Linus Torvalds rarely writes kernel patches himself. This time he did – and turned the commit into a little lesson. It was a bug in the Intel Xe graphics driver that, on certain hardware, kept restarting the login screen in an endless loop. The root cause sat in a two-year-old commit.
Getting there was grim. 24 debug patches, 18 kernel boots, until it was clear where it broke: in one spot the code said round_up() where it should have said round_down(). Because of that, the driver handed out memory as usable VRAM that was never supposed to be usable. The fix is one line. It ships in Linux 7.3 and the stable backports.
The AI wanted to give up, Linus didn’t
The fix isn’t the interesting bit. What Torvalds put in the commit message is. He calls it a “debug session from hell” where an AI helped him enormously – mostly with the grunt work: adding debug code, analyzing the output, over and over.
The catch: the AI flatly declared several times that the problem was unsolvable and that they should just write a report about it instead. Torvalds’ dry reply: it was probably trained by people who aren’t quite as stubborn as he is. He kept pushing, the AI faithfully kept adding debug code, and in the end he even let it write the commit message. He doesn’t say which model he used.
Why this is more than an anecdote
Two things stick with me. First: when the person who started the Linux kernel uses AI for debugging and talks about it openly, the “AI in real code – yes or no?” debate is basically over. The only question left is how.
Second, and maybe more important: the AI was wrong when it wanted to quit. The problem was solvable; it just needed someone who wouldn’t let go. That’s the whole point. The AI takes the dull work and keeps going for hours, but the stubbornness, the judgment, the “no, there’s more here” – that still comes from the human. Best tool, clear head – it only gets good when they work together.
Sources: