{
  "finding_id": "DF-4580",
  "title": "radeon_cs_parser_init: uncapped num_chunks/length_dw wired allocations; DragonFly GFP_KERNEL failure = kernel panic or eternal vm_wait hang (plus latent parser_fini NULL-deref)",
  "verdict": "not_reproduced",
  "impact_class": "local kernel DoS (panic / unkillable hang)",
  "reproduced": 0,
  "reproduce": {
    "build": "cd /root/df4580 && make   (kld building against /usr/src/sys)",
    "run": "kldload ./df4580.ko",
    "expected": "panic: df4580: malloc limit exceeded  (mechanism demo; radeon ioctl itself needs AMD GPU, absent on guest)"
  },
  "kernel_refs": [
    "sys/dev/drm/radeon/radeon_cs.c:287",
    "sys/dev/drm/radeon/radeon_cs.c:298",
    "sys/dev/drm/radeon/radeon_cs.c:346",
    "sys/dev/drm/radeon/radeon_cs.c:447",
    "sys/dev/drm/radeon/radeon_kms.c:912",
    "sys/dev/drm/include/linux/gfp.h:40",
    "sys/dev/drm/include/linux/slab.h:44",
    "sys/dev/drm/linux_vmalloc.c:136",
    "sys/kern/kern_slaballoc.c:372",
    "sys/kern/kern_slaballoc.c:877",
    "sys/kern/kern_slaballoc.c:944",
    "sys/kern/kern_slaballoc.c:1724",
    "sys/kern/kern_slaballoc.c:1780",
    "sys/vm/vm_page.c:2927"
  ],
  "artifacts": [
    "README.md",
    "VERDICT.md",
    "df4580_limitpanic.c",
    "Makefile",
    "build.sh",
    "run.sh",
    "build.log",
    "run.log",
    "panic.txt",
    "env.txt",
    "fix.diff",
    "manifest.json",
    "verdict.json"
  ]
}
