this post was submitted on 04 Aug 2026
224 points (99.6% liked)

Linux

14845 readers
1178 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 3 years ago
MODERATORS
 

Note, LLMs are very good at finding suspect "security issues" in kernel code these days. But even with the best of the current and next generation tools, at least 1/3 of the results they generate are flat out wrong or harmful. So, if you think your LLM-found/fixed issue in a drivers/staging/ file is really valid, it's fine to submit it BUT you must have first tested it on the actual hardware for the driver, and described how you have done so, in order for us to be willing to take the change.

you are viewing a single comment's thread
view the rest of the comments
[–] Hirom@beehaw.org 19 points 3 weeks ago (1 children)

Actually proving that C code is correct is not easy.

Having a human developer manually write code that is less harmful/wrong, and doesn't require proof, is probably easier.

[–] LurkingLuddite@piefed.social 4 points 3 weeks ago (3 children)

Except a good programmer will have proof, in the form of at minimum manual tests that exercise the exact issue. A good programmer will have automated tests that clearly assert the behavior in question.

It genuinely boggles my mind when people whine about having to prove what the AI said... THEY SHOULD'VE BEEN DOING THAT THE WHOLE FUCKING TIME in their entire career!

[–] Hirom@beehaw.org 19 points 3 weeks ago* (last edited 3 weeks ago) (1 children)

We're talking about different kind of proofs.

Proving a program is correct requires a formal specification and a formal verification with mathematics and/or formal methods. ie proving the behavior and result perfectly match specification for all possible inputs.

A test only proves that a program 1) returns the expected output for a specific input, or limited set of inputs, and 2) appears to behave correctly, ie there may be undefined behaviour but they don't cause an immediate crash.

[–] Miaou@jlai.lu 3 points 3 weeks ago (1 children)

No one proves their code is correct except in extremely niche cases. No idea what you're talking about.

[–] harmbugler@piefed.social 4 points 3 weeks ago

Maybe think of test driven development not like proving the code is correct, but failing to prove it’s broken.

[–] possiblylinux127@lemmy.zip 1 points 3 weeks ago

Test based development is not something you see much in the world of C