What does HackerNews think of syzkaller?
syzkaller is an unsupervised coverage-guided kernel fuzzer
Google have a project to do fuzzing on Linux system calls using coverage feedback: https://github.com/google/syzkaller
Strace and similar tools can trace syscalls to see what kernel system calls are made by a process: https://en.wikipedia.org/wiki/Strace#Similar_tools
Google/syzkaller https://github.com/google/syzkaller :
> syzkaller ([siːzˈkɔːlə]) is an unsupervised coverage-guided kernel fuzzer. Supported OSes: Akaros, FreeBSD, Fuchsia, gVisor, Linux, NetBSD, OpenBSD, Windows
Fuschia / Zircon syscalls: https://fuchsia.dev/fuchsia-src/reference/syscalls
"How does Go make system calls?" https://stackoverflow.com/questions/55735864/how-does-go-mak...
[0] https://llvm.org/docs/LibFuzzer.html [1] https://github.com/google/syzkaller
Because they have no other option, it's a fuzzer. Therefore, it may take a long time(up to universe heat death) for it to finally exercise the path that causes the issue. And the kernel has a pretty enormous footprint.
Fuzzers never really terminate, so it is not like you can plug it on a CI/CD system and wait for reports.
> The process of reproducing one crash may take from a few minutes up to an hour depending on whether the crash is easily reproducible or non-reproducible at all.
That's for one known crash. But otherwise it will be running 24/7 (across multiple VMs!) looking for issues.
More details here: https://github.com/google/syzkaller
Then it lists 9 issues found in the OpenBSD kernel, including two[2][3] issues with kqueue.
Pretty cool stuff!
[1] https://github.com/google/syzkaller
[1] https://github.com/kernelslacker/trinity [2] https://github.com/google/syzkaller/