DF-4266 / manifest.json
{ "finding_id": "DF-4266", "title": "Inverted RX descriptor-ownership test in wb_rxeof(): RX permanently dead + per-interrupt chip reset storm + chip-owned descriptors processed/re-armed", "verdict": "reproduced", "impact_class": "dos", "reproduce": { "build": "sh /root/df4266/kld_build.sh (make -m /usr/src/share/mk; clean -Werror)", "run": "sh /root/df4266/kld_run.sh baseline (then: apply fix.diff to /usr/src, make -j6 nativekernel && make installkernel, reboot, sh /root/df4266/kld_run.sh fixed)", "expected": "baseline: S1 BUG CONFIRMED (completed frame dropped: delivered=0 ipackets=0 descriptor untouched), S1fix (identical state delivered by fixed comparator), S2 BUG CONFIRMED (chip-owned descriptor processed per dispatch: ierrors++, 'receiver babbling', full ring re-init, ~65ms), S3 BUG CONFIRMED (frame accepted from OWN=1 descriptor, re-armed under the chip), SURVIVED. fixed kernel: S1 delivered by the REAL patched handler (ipackets=1), S2 9-13us no-op, S3 descriptor untouched - all bug markers gone." }, "kernel_refs": [ "sys/dev/netif/wb/if_wb.c:972", "sys/dev/netif/wb/if_wb.c:975", "sys/dev/netif/wb/if_wb.c:982", "sys/dev/netif/wb/if_wb.c:988", "sys/dev/netif/wb/if_wb.c:993", "sys/dev/netif/wb/if_wb.c:1137", "sys/dev/netif/wb/if_wbreg.h:243" ], "artifacts": [ "df4266_wb_poc.c", "Makefile", "kld_build.sh", "kld_run.sh", "kld_build.log", "build.log", "kld_run_baseline.log", "run.log", "kld_run_fixed.log", "fix_run.log", "fix_build_tail.log", "fix_build.log", "panic_rig_v1.txt", "env.txt", "VERDICT.md", "README.md", "wb_logic.c", "run.sh", "logic_run.log", "fix.diff", "manifest.json", "verdict.json", "code_hash.txt" ] } |