โฌข DragonFlyBSD Kernel Audit
DF-3170 / fix_run.log
โ† back to finding โ†“ download raw
DF-3170 fix validation run โ€” PATCHED kernel (#1 Mon Sep 7 16:11:15 UTC 2026),
QEMU/KVM 6 vCPUs, INVARIANTS X86_64_GENERIC.

Setup (root):
  mkdir -p /mnt/mfs3 && chmod 1777 /mnt/mfs3
  (mount_mfs -s 32768 swap /mnt/mfs3 &)
  -> /dev/mfs1108 on /mnt/mfs3 (mfs, asynchronous, local), server pid 1108

Stress (unprivileged maxx), identical pattern to the baseline panic run
(6 writers, 2 files each, 512-byte O_SYNC pwrite/pread, 6 vCPUs):
  for i in 1 2 3 4 5 6; do (nohup /tmp/mfsrace /mnt/mfs3 2 >/tmp/r3.$i.log 2>&1 </dev/null &); done

Additionally running concurrently during most of the window (extra load):
  - 4 writers on a second MFS (/mnt/mfs2, ENOSPC-pressured = worst-case churn)
  - the DF-3171 kill sequence executed against a third MFS (devfs#2 RO open +
    umount -f) at ~T+11min

Progress (per-writer counters, iters at N seconds):
  T+21s:   262144 iters   (6 writers)
  T+41s:   524288 iters
  T+70s:   524288-786432 iters
  T+475s:  3407872 iters
  T+662s:  4718592 iters
  T+705s:  6291456 iters   (pid 1126)

Aggregate: >4M synchronous I/O ops per writer sustained for 11+ minutes
(~7-12k ops/s/writer; ~74k ops/s aggregate peak) across two MFS mounts
simultaneously, plus a forced devfs unmount mid-run.

RESULT: NO panic, NO wedge, NO lost bios (all writer counters monotonically
advancing; guest up; all three MFS servers alive in mfsidl at teardown of
the test; MFS_node allocations = 3, no leak).

BASELINE COMPARISON: stock kernel #0 panicked within ~3 minutes of the same
6-writer stress:
  panic: Bad link elm 0xfffff8004f593d48 prev->next != elm (from mfs_start)
and a second stock run panicked in <=90s during concurrent stress:
  panic: Bad tailq NEXT(...->tqh_last) != NULL, last ... (from mfsstrategy)
[see panic.txt and run.2.log โ€” the second stock panic is DF-3170's
producer-side manifestation; initially misattributed to DF-3171, corrected
in this pack's VERDICT.md]

CONCLUSION: fix_status=fixed โ€” the unsynchronized producer/consumer race no
longer manifests under stress that reliably panics the stock kernel.