{
  "finding_id": "DF-2666",
  "title": "HAMMER2IOC_RECLUSTER leaks the holdfp() file reference on both error returns in hammer2_ioctl_recluster()",
  "verdict": "not_reproduced",
  "impact": "none",
  "reproduce": {
    "build": "scp -F dfbsd-qemu/config findings/poc/DF-2666/{df2666_trigger.c,run_df2666.sh} dfbsd:/root/poc/df2666/ && dfbsd-qemu/vm.sh run_root 'sh /root/poc/df2666/run_df2666.sh' (guest cc -O -I/usr/src/sys)",
    "run": "dfbsd-qemu/vm.sh run_root 'sh /root/poc/df2666/run_df2666.sh'",
    "expected": "On a kernel where the EINVAL/VFS_ROOT-error branch is enterable: RECLUSTER_EINVAL>0 and kern.openfiles DELTA == RECLUSTER_EINVAL (one leaked struct file per failing call). On the stock healthy mount (observed): RECLUSTER_OK=200 RECLUSTER_EINVAL=0 DELTA=0 — branch not enterable, success-path ref accounting balanced."
  },
  "kernel_refs": [
    "sys/vfs/hammer2/hammer2_ioctl.c:212",
    "sys/vfs/hammer2/hammer2_ioctl.c:214",
    "sys/vfs/hammer2/hammer2_ioctl.c:217-225",
    "sys/vfs/hammer2/hammer2_ioctl.c:226-231",
    "sys/vfs/hammer2/hammer2_iocom.c:77-85",
    "sys/kern/kern_dmsg.c:128-131"
  ],
  "artifacts": [
    "README.md", "VERDICT.md", "df2666_trigger.c", "run_df2666.sh",
    "build.sh", "run.sh", "build.log", "run.log", "env.txt",
    "fix.diff", "manifest.json", "verdict.json"
  ]
}
