DF-0819 / manifest.json
{ "finding_id": "DF-0819", "guest_uname": "DragonFly dfbsd 6.5-DEVELOPMENT DragonFly 6.5-DEVELOPMENT #0: Thu Jul 2 06:02:54 UTC 2026 root@dfbsd:/usr/obj/usr/src/sys/X86_64_GENERIC x86_64", "code_hash": "b9a306d0f9e7f73e4c245b4cc038294a3be6c13dd327ab55b89b5a9764a94a47", "tested_at": "2026-07-22T18:10:00Z", "verdict": "REPRODUCED (code-level) \u2014 LATENT lock-leak; fix VALIDATED", "impact": "dos", "confidence": "certain", "reproduce": { "build": "./build.sh", "run": "./run.sh", "expected": "guest hang/wedge (DoS); see run.log. On a fixed kernel: returns promptly." }, "kernel_refs": [ "sys/vfs/hammer/hammer_blockmap.c:285", "sys/vfs/hammer/hammer_blockmap.c:372", "sys/vfs/hammer/hammer_blockmap.c:377", "sys/vfs/hammer/hammer_blockmap.c:392", "sys/vfs/hammer/hammer_blockmap.c:393", "sys/vfs/hammer/hammer_blockmap.c:546", "sys/vfs/hammer/hammer_blockmap.c:604", "sys/vfs/hammer/hammer_blockmap.c:606", "sys/vfs/hammer/hammer_blockmap.c:611", "sys/vfs/hammer/hammer_blockmap.c:613", "sys/vfs/hammer/hammer_io.c:437", "sys/vfs/hammer/hammer_io.c:460" ], "artifacts": [ { "path": "blkmap_lock_trace.c", "type": "trigger-source", "desc": "code-level analysis harness proving lock-acquire-without-matching-release" }, { "path": "hammer_blkmap_trigger.c", "type": "runtime-trigger", "desc": "runtime trigger: mounts hammer fs, fills to ENOSPC under memory pressure, checks for deadlock" }, { "path": "build.sh", "type": "build-script", "desc": "exact cc build commands" }, { "path": "run.sh", "type": "run-script", "desc": "runs the code analysis harness" }, { "path": "run.log", "type": "run-log", "desc": "code analysis PoC output on patched kernel" }, { "path": "fix.diff", "type": "suggested-fix", "desc": "git-apply-able fix: add hammer_unlock before goto failed at lines 377 and 606" }, { "path": "fix_build.log", "type": "fix-build-log", "desc": "full nativekernel build output for single-fix kernel (rc=0)" }, { "path": "env.txt", "type": "environment", "desc": "uname, cc version, sysctls" }, { "path": "VERDICT.md", "type": "verdict", "desc": "full narrative: mechanism, reachability, fix validation" }, { "path": "manifest.json", "type": "manifest", "desc": "this file" }, { "path": "build.log", "type": "build-log", "desc": "kernel build log excerpt proving -Werror clean compile of patched source" }, { "path": "fix_apply.log", "type": "apply-log", "desc": "patch --dry-run output proving fix.diff applies cleanly on with-src" }, { "path": "../fix_build_combined.log", "type": "build-log", "desc": "Combined 41-finding kernel build (rc=0, -Werror clean)" }, { "path": "../fix_build_summary.txt", "type": "build-summary", "desc": "Summary of the combined 41-finding kernel build" } ] } |