Skip to content

About

Linux kernel syzbot lockdep reports: reproduction in QEMU, root-cause analysis and candidate fixes (C).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

Linux kernel: syzbot lockdep reports, reproduced and analysed

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).

Method

  1. Take the syzbot C reproducer and config; build a minimal kernel with lockdep (make O=../build).
  2. Boot it in QEMU (-accel kvm, virtio-scsi, snapshot=on so the disk image is never modified).
  3. Reproduce the splat on an unpatched kernel first (control).
  4. Apply the change, rebuild, rerun, and compare.

harness/run-vm-test.sh is the VM launcher used for every run.

Layout

  • bug1-d_alloc_parallel/ - analysis, patches, logs
  • bug2-set_blocksize/ - analysis, patch, repro, logs
  • harness/ - VM launcher

Credit

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.

About

Linux kernel syzbot lockdep reports: reproduction in QEMU, root-cause analysis and candidate fixes (C).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages