⬢ DragonFlyBSD Kernel Audit
DF-4902 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-4902",
  "file": "sys/dev/drm/amd/amdgpu/iceland_ih.c",
  "title": "iceland_ih (Topaz): unvalidated device-DMA'd IH wptr \u2014 DF-4843/DF-4854/DF-4887/DF-4901 5th twin: permanent interrupt-thread spin on misaligned wptr + RB_OVERFLOW +16 recovery importing the bad phase \u2192 up to 12-byte OOB read past the zero-slack 64 KiB GTT ring BO",
  "verdict": "untested",
  "impact": "dos",
  "severity": "Low",
  "confidence": "certain",
  "reproduce": {
    "build": "n/a \u2014 device-gated (wptr is GPU DMA into the writeback slot); guest has no AMD GPU (env.txt)",
    "run": "n/a",
    "expected": "if armed on CZ/Stoney hardware: amdgpu ithread pegs one CPU forever re-dispatching the 64KiB ring (all GPU IRQs dead); with overflow bit + wptr phase 4..15 near ring end: first decode reads up to 12B past the ring BO"
  },
  "kernel_refs": [
    "sys/dev/drm/amd/amdgpu/iceland_ih.c:192",
    "sys/dev/drm/amd/amdgpu/iceland_ih.c:194",
    "sys/dev/drm/amd/amdgpu/iceland_ih.c:202",
    "sys/dev/drm/amd/amdgpu/iceland_ih.c:207",
    "sys/dev/drm/amd/amdgpu/iceland_ih.c:225",
    "sys/dev/drm/amd/amdgpu/iceland_ih.c:253",
    "sys/dev/drm/amd/amdgpu/iceland_ih.c:266",
    "sys/dev/drm/amd/amdgpu/iceland_ih.c:300",
    "sys/dev/drm/amd/amdgpu/amdgpu_ih.c:80",
    "sys/dev/drm/amd/amdgpu/amdgpu_ih.c:154",
    "sys/dev/drm/amd/amdgpu/vi.c:1600"
  ],
  "artifacts": [
    "README.md",
    "VERDICT.md",
    "trigger_sketch.c",
    "fix.diff",
    "verdict.json",
    "manifest.json",
    "env.txt"
  ]
}