DF-3906 / manifest.json
{ "finding_id": "DF-3906", "title": "xl_stop()/xl_stats_update() AB-BA callout deadlock (DF-3715 family, 10th instance, non-MPSAFE callout)", "file": "sys/dev/netif/xl/if_xl.c", "impact": "permanent-kernel-wedge DoS on 3c90x hardware; mechanism proven on guest via protocol replica", "verdict": "inconclusive (mechanism PROVEN via replica, hardware-gated)", "reproduce": { "build": "cd /root/kmod && make (KMOD=xl_callout_replica SRCS=xl_callout_replica.c)", "run": "kldload /root/kmod/xl_callout_replica.ko; sysctl kern.xlreplica_arm=1; sleep 1; (sysctl kern.xlreplica_stop=1 >/dev/null 2>&1 &)", "expected": "serial console: 'xlreplica[stop]: tick INPROG and PARKED on the serializer (fired=2 ran=1)' + terminal marker; stopper D/costp; softclock B/slize; callout_stop never returns; shutdown wedges" }, "kernel_refs": [ "sys/dev/netif/xl/if_xl.c:1320", "sys/dev/netif/xl/if_xl.c:2377", "sys/dev/netif/xl/if_xl.c:2429", "sys/dev/netif/xl/if_xl.c:3169", "sys/kern/kern_timeout.c:920" ], "artifacts": [ "README.md", "VERDICT.md", "xl_callout_replica.c", "xl_callout_replica_fixed.c", "build.sh", "run.sh", "run.log", "console_markers.txt", "fix_validation.log", "env.txt", "fix.diff", "manifest.json", "verdict.json" ] } |