Two syzbot-reported lockdep deadlock warnings, each reproduced on a kernel I built
myself, root-caused, and tested against a candidate fix inside a QEMU/KVM VM with
PROVE_LOCKING enabled.
| # | syzbot report | Subsystem | Status |
|---|---|---|---|
| 1 | possible deadlock in __d_alloc_parallel (bug page) |
VFS dcache / overlayfs | Root cause found, two fixes verified. An upstream fix by Neil Brown was posted on 2026-10-02, before I finished, so I did not send a competing patch. |
| 2 | possible deadlock in set_blocksize (bug page) |
btrfs / block layer | Splat reproduced; candidate patch removes it. Not yet submitted upstream (see bug2 notes). |
- Take the syzbot C reproducer and config; build a minimal kernel with lockdep (
make O=../build). - Boot it in QEMU (
-accel kvm, virtio-scsi,snapshot=onso the disk image is never modified). - Reproduce the splat on an unpatched kernel first (control).
- Apply the change, rebuild, rerun, and compare.
harness/run-vm-test.sh is the VM launcher used for every run.
bug1-d_alloc_parallel/- analysis, patches, logsbug2-set_blocksize/- analysis, patch, repro, logsharness/- VM launcher
The reproducer in bug2-set_blocksize/repro/ was generated by syzbot. Bug 1's
upstream fix is Neil Brown's patch series; my part was independent reproduction and
verification. Nothing here has been merged under my name.