DF-3486 / fix_run.log
fix_run.log — DF-3486 fix validation (both fixed modules loaded)
=================================================================
Exact same triggers as baseline, with fix.diff modules
(/usr/obj/.../ng_iface.ko = DF-3485+DF-3486 fixes, ng_eiface.ko = DF-3486):
# kldload ng_socket
# kldload /usr/obj/usr/src/sys/netgraph/iface/ng_iface.ko
# ngctl mkpeer . iface inet inet && echo IFACE-CREATED
IFACE-CREATED <-- no panic (was: instant panic)
# ngctl list
There are 2 total nodes:
Name: ngctl876 Type: socket ID: 00000003 Num hooks: 0
Name: ng0 Type: iface ID: 00000002 Num hooks: 0
# ifconfig ng0
ng0: flags=808890<POINTOPOINT,NOARP,SIMPLEX,MULTICAST,PROXY> metric 0 mtu 1500
# kldload /usr/obj/usr/src/sys/netgraph/eiface/ng_eiface.ko
# ngctl mkpeer . eiface e0 ether && echo EIFACE-CREATED
EIFACE-CREATED <-- no panic (was: instant panic)
# ifconfig ngeth0
ngeth0: flags=808802<BROADCAST,SIMPLEX,MULTICAST,PROXY> metric 0 mtu 1500
ether 00:00:00:00:00:00
# ngctl shutdown ng0: && echo IFACE-SHUTDOWN-OK
IFACE-SHUTDOWN-OK <-- deferred if_detach thread path
Stress (attach/detach thread races):
- 6 further creations without shutdown (units 1..6, ng1..ng6) - OK
- 1 re-create after shutdown (unit reuse) - OK
- 8 back-to-back create+immediately-shutdown cycles (no sleep; exercises
PENDING/RUNNING/DYING/DETACHING state transitions) - 0 failures, 0 panics
- further 8 creations + 8 shutdowns - 0 failures, 0 panics
- vmstat -m: no allocation runaway observed
- guest stayed up throughout (vm.sh status: up)
Baseline vs patched:
baseline (stock modules): ng_iface mkpeer -> panic (free NULL, DF-3485)
ng_eiface mkpeer -> panic (ifnet lock, DF-3486)
patched (fix.diff, this pack + DF-3485 fix):
both triggers SUCCEED; interfaces appear in
ifconfig; shutdown clean; 22+ create/destroy
cycles across attach/detach thread races with
zero panics.