โฌข DragonFlyBSD Kernel Audit
DF-0613 / run.log
โ† back to finding โ†“ download raw
=== BEFORE test: EBUSY bug present (constructor fix only, no EBUSY fix) ===
Kernel: DragonFly 6.5-DEVELOPMENT #0: Fri Jul  3 17:30:11 UTC 2026 (noinv-installed, INVARIANTS OFF)
Module: ng_iface_before.ko (SHA256: 18c7a5f3e4efe5d4b30a81681f78b907bb2654d16695c0161ec5376c3834e676)

--- Run 1 ---
=== BEFORE vmstat ===
           netgraph       5   1.11K       0    390M       18
=== RUN ===
[+] Opened NG_CONTROL socket fd=3
[+] Created ng_iface peer node (hook leak -> inet)
[+] Interface name: ng1
[+] Brought ng1 UP
[*] Sending 2000 NGM_IFACE_POINT2POINT messages (arglen=0)...
[*] Expected leak: ~104000 bytes (2000 * (52 + 0))
[*] Check 'vmstat -m | grep Netgraph' before/after
    ... 500/2000 sent
    ... 1000/2000 sent
    ... 1500/2000 sent
    ... 2000/2000 sent
[+] Done: sent 2000 messages
[+] Each message leaked ~52 bytes (sizeof(ng_mesg) + arglen=0)
[+] Total leaked: ~104000 bytes
[*] Run 'vmstat -m | grep -i netgraph' to confirm M_NETGRAPH growth
RUN_RC=0
=== AFTER vmstat ===
           netgraph   1.96K    112K       0    390M    5.89K

  โ†’ M_NETGRAPH grew from 1.11K to 112K (leaked ~111K, 2000 msgs)

--- Run 2 (same kernel, cumulative) ---
=== BEFORE vmstat ===
           netgraph   1.96K    112K       0    390M    5.89K
=== RUN ===
[+] Opened NG_CONTROL socket fd=3
[+] Created ng_iface peer node (hook leak -> inet)
[+] Interface name: ng2
[+] Brought ng2 UP
[*] Sending 2000 NGM_IFACE_POINT2POINT messages (arglen=0)...
    ... 2000/2000 sent
[+] Done: sent 2000 messages
RUN_RC=0
=== AFTER vmstat ===
           netgraph   3.92K    222K       0    390M    11.8K

  โ†’ M_NETGRAPH grew from 112K to 222K (leaked another ~110K, 2000 msgs)
  โ†’ Total leaked after 4000 msgs: ~222K