⬢ DragonFlyBSD Kernel Audit
DF-5652 / manifest.json
← back to finding ↓ download raw
{
  "verdict": "reproduced",
  "impact": "none",
  "reproduce": {
    "build": "cd /root/elcrx && sh build.sh   (bsd.kmod.mk; cc -Werror -> elcrx.ko elcrboom.ko)",
    "run": "cd /root/elcrx && sh run.sh      (E0/E1/E2 phases; then dmesg tail) ; sh run_boom.sh LAST (assert panic, INVARIANTS kernel) ; vm.sh reset with-src",
    "expected": "E1: elcr_read_trigger(-1)=E ... negative irq ACCEPTED | E1: ... ALIAS-PROVEN (1<<-22 == 1<<10) | E2: elcr_write_trigger(-27, LEVEL): hw0x4d0 0x00 -> 0x20 (bit5 SET) | E2: restored ... ok=YES | panic: elcr_write_trigger: invalid IRQ 16 (boom)"
  },
  "kernel_refs": [
    "sys/platform/pc64/icu/elcr.c:57",
    "sys/platform/pc64/icu/elcr.c:89",
    "sys/platform/pc64/icu/elcr.c:106",
    "sys/platform/pc64/icu/elcr.c:108",
    "sys/platform/pc64/icu/elcr.c:114",
    "sys/platform/pc64/icu/elcr.c:117",
    "sys/sys/systm.h:116",
    "sys/platform/pc64/icu/icu_abi.c:342",
    "sys/platform/pc64/icu/icu_abi.c:373",
    "sys/platform/pc64/x86_64/nexus.c:487"
  ],
  "artifacts": [
    "elcrx.c", "elcrboom.c", "Makefile", "build.sh", "run.sh", "run_boom.sh",
    "build.log", "run.log", "boom.log", "panic.txt", "panic_raw.log",
    "wedge_v1.log", "env.txt", "fix.diff", "VERDICT.md", "manifest.json", "verdict.json"
  ]
}