⬢ DragonFlyBSD Kernel Audit
DF-4459 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-4459",
  "title": "drm_gem_init: unchecked mm kzalloc (NULL-deref panic under kernel OOM) plus partial-failure leaks and dangling dev->mm_private on the drm_ht_create failure path",
  "verdict": "inconclusive",
  "impact": "none",
  "confidence": "certain",
  "reproduce": {
    "build": "cd /usr/src/sys/dev/drm/drm && make obj && make   (patched; guest cc 8.3, -Werror, RC=0)",
    "run": "sh run.sh sys/dev/drm/drm_gem.c   (static proof of the asymmetry)",
    "expected": "run.log: mm allocated at 139 with no NULL check (only vma_offset_manager checked at 141); dev->mm_private = mm at 146 precedes drm_ht_create failure kfree(mm) at 149 (dangling); drm_gem_destroy derefs it at 170-171."
  },
  "kernel_refs": [
    "sys/dev/drm/drm_gem.c:139",
    "sys/dev/drm/drm_gem.c:141",
    "sys/dev/drm/drm_gem.c:146",
    "sys/dev/drm/drm_gem.c:149",
    "sys/dev/drm/drm_gem.c:170",
    "sys/dev/drm/drm_gem.c:576"
  ],
  "artifacts": [
    "README.md", "VERDICT.md", "run.sh", "build.sh", "run.log",
    "build.log", "fix.diff", "manifest.json", "verdict.json", "env.txt"
  ]
}