⬢ DragonFlyBSD Kernel Audit
DF-4545 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-4545",
  "title": "vega20_processpptables: OD revision gate + five ignored copy-helper returns let pptable init succeed with NULL od arrays -> NULL-deref panic at driver load (vega20_hwmgr.c:906)",
  "verdict": "reproduced",
  "impact": "panic",
  "reproduce": {
    "build": "cc -O2 -Wall -o od_null_deref od_null_deref.c  (guest cc 8.3)",
    "run": "./od_null_deref",
    "expected": "VARIANT A (ucODTableRevision=2): init returns 0 with od_feature_capabilities=0x0, consumer SIGSEGV at 0x0; VARIANT B (ignored -ENOMEM): same fault; CONTROL rev=1 healthy: clean; PATCHED: init refuses (-EINVAL), no fault"
  },
  "kernel_refs": [
    "sys/dev/drm/amd/powerplay/hwmgr/vega20_processpptables.c:823",
    "sys/dev/drm/amd/powerplay/hwmgr/vega20_processpptables.c:835",
    "sys/dev/drm/amd/powerplay/hwmgr/vega20_processpptables.c:870",
    "sys/dev/drm/amd/powerplay/hwmgr/vega20_processpptables.c:889",
    "sys/dev/drm/amd/powerplay/hwmgr/vega20_hwmgr.c:906",
    "sys/dev/drm/amd/powerplay/hwmgr/vega20_hwmgr.c:1598",
    "sys/dev/drm/amd/powerplay/hwmgr/hwmgr.c:222"
  ],
  "artifacts": [
    "od_null_deref.c", "build.sh", "run.sh", "build.log", "run.log",
    "run.2.log", "fix_run.log", "fix.diff", "fix_build.log", "env.txt",
    "README.md", "VERDICT.md", "manifest.json", "verdict.json"
  ]
}