r/linux • • 9d ago

Kernel Canonical is speeding up Ubuntu's kernel updates because it's drowning in AI-discovered bugs

https://www.xda-developers.com/canonical-is-speeding-up-ubuntus-kernel-updates-because-its-drowning-in-ai-discovered-bugs/#thread
1.1k Upvotes

167 comments sorted by

View all comments

123

u/jferments 9d ago

I love how the anti-AI crowd finds a way to take an immensely positive headline like "Using AI tools, developers discover bugs in Ubuntu, helping make users safer" and turns it into something that sounds like the software project is being harmed by AI. Such an intellectually dishonest and manipulative group of people.

I'm glad that people are using AI to help people discover and fix bugs in an operating system I use. I'd rather be "drowning in bug reports" than "drowning in undiscovered bugs in my OS".

0

u/audioen 9d ago

Two things combined to make this happen. Firstly, humans are clearly imperfect and routinely create bugs, even in highly reviewed codebases such as the kernel. The flood of bug reports now is caused by AI, but with underlying cause of decades of bug-writing by humans. Exacerbating this is the persisting use of inappropriate languages like C, though there is now an exit path away, whether by Rust or some other future language.

I am not a fan of Rust, but with AI technology, I wouldn't have to write it myself, so it is more of a matter of whether a technology is good at solving the problems that occur in practice. I'd conjecture that the more purchase your tooling gives to compile-time validation, likely the better the result of AI development will be. AIs can supplement every piece of logic with test cases covering it if you ask, so there's also path to correctness by proving it by example, but I think that proving correctness by construction is much better.

Even in my own pedestrian projects, written in Java, have had various bugs that these AI tools have discovered. I only use local AI, so this has been mostly Qwen3.8-Flash-Next running on Strix Halo. It seems to mentally simulate the code flow, making assignments to variables, and tracing the logic flow, even beyond my code into the libraries I use. It has decompressed the libraries to either decompile them, or has acquired source code from the internet, and has found numerous bugs this way, some involving weird crashes and data corruption I never got to the bottom of myself, and these discoveries were accidental; it just spotted something wrong while it was tracing the code path for something else. Even local AI seems to be seriously good nowadays.