{
  "verdict": "not_reproduced",
  "impact_class": "kernel heap OOB write (32 bytes, deterministic per GPU-VM create) on AMD Raven APUs; hardware-gated",
  "finding": "DF-4864",
  "file": "sys/dev/drm/amd/amdgpu/amdgpu_ring.c",
  "root_cause_files": [
    "sys/dev/drm/amd/amdgpu/amdgpu_vm.c:855",
    "sys/dev/drm/amd/amdgpu/amdgpu_vm.c:861-876",
    "sys/dev/drm/amd/amdgpu/amdgpu_vm.c:878",
    "sys/dev/drm/amd/amdgpu/amdgpu_vm.h:293",
    "sys/dev/drm/amd/amdgpu/sdma_v4_0.c:1184-1200",
    "sys/dev/drm/amd/amdgpu/sdma_v4_0.c:1208-1222",
    "sys/dev/drm/amd/amdgpu/amdgpu_ib.c:61-81",
    "sys/dev/drm/amd/amdgpu/amdgpu_sa.c:151-173",
    "sys/dev/drm/amd/amdgpu/gmc_v9_0.c:941-949",
    "sys/dev/drm/amd/amdgpu/amdgpu_vm.c:3172"
  ],
  "reproduce": {
    "build": "sh build.sh   # cc -O2 -Wall -o df4864_trigger df4864_trigger.c (DragonFly guest, unpriv user)",
    "run": "sh run.sh     # as unpriv user; prints the three cases + hw probe",
    "expected": "[Raven-root-512]/[Raven2-root-257]: after pad length_dw=24, 'OOB WRITE: 8 dwords (32 bytes) past the 64-byte SA sub-allocation', 32 canary bytes destroyed; [non-ATS-single]: length_dw=16, fits exactly. On this guest the hw probe reports no AMD VGA and no /dev/dri — kernel path unreachable."
  },
  "kernel_refs": [
    "sys/dev/drm/amd/amdgpu/amdgpu_vm.c:855",
    "sys/dev/drm/amd/amdgpu/amdgpu_vm.c:861-876",
    "sys/dev/drm/amd/amdgpu/sdma_v4_0.c:1184-1200",
    "sys/dev/drm/amd/amdgpu/sdma_v4_0.c:1208-1222",
    "sys/dev/drm/amd/amdgpu/amdgpu_ib.c:61-81",
    "sys/dev/drm/amd/amdgpu/amdgpu_vm.c:3172"
  ],
  "artifacts": [
    "df4864_trigger.c",
    "build.sh",
    "run.sh",
    "build.log",
    "run.log",
    "run.2.log",
    "env.txt",
    "fix.diff",
    "fix_build.log",
    "README.md",
    "VERDICT.md",
    "manifest.json",
    "verdict.json"
  ]
}
