{
  "finding_id": "DF-3281",
  "title": "if_addgroup() increments ifg_refcnt outside ifgroup_lock and can create duplicate groups",
  "verdict": "not_reproduced",
  "impact": "none",
  "confidence": "likely",
  "reproduce": {
    "build": "cc -O2 -Wall -o /root/addgrp_race /root/addgrp_race.c",
    "run": "(root) /root/addgrp_race   # two per-interface racers churn the same group for 45s",
    "expected": "MARKER lines (add/del ioctl errors proving desynchronized group bookkeeping) and/or panic. NOT OBSERVED: ifioctl serializes all SIOC[AD]IFGROUP under the global ifnet_mtx, so userland racers can never overlap inside if_addgroup(). The defect only races kernel-side creators/destroyers (if_attach/if_detach)."
  },
  "kernel_refs": [
    "sys/net/if.c:1174",
    "sys/net/if.c:1183",
    "sys/net/if.c:1169",
    "sys/net/if.c:1116",
    "sys/net/if.c:1231",
    "sys/net/if.c:991",
    "sys/net/if.c:558",
    "sys/net/if.c:2029"
  ],
  "artifacts": [
    "README.md", "VERDICT.md", "addgrp_race.c", "build.sh", "run.sh",
    "run.log", "fix.diff", "env.txt", "manifest.json", "verdict.json"
  ]
}
