{
  "finding_id": "DF-4458",
  "title": "drm_gem_mmap_single passes user-controlled mmap length and in-object offset (bits 0..39 of the fake offset) to the GEM device pager without any bounds check — upstream clamp is dead in #if 0",
  "verdict": "inconclusive",
  "impact": "none",
  "confidence": "certain",
  "reproduce": {
    "build": "cc -O2 -Wall -Wextra -o df4458 df4458.c   (guest cc 8.3: BUILD_RC=0)",
    "run": "./df4458 /dev/dri/card0",
    "expected": "On GPU hardware: [A]/[B] SUCCESS lines demonstrate mappings past the GEM object (cross-object GGTT access via the DF-1146 sink, or SIGBUS); with core fix: EINVAL. On this guest: open() ENOENT (no /dev/dri) — runtime gate."
  },
  "kernel_refs": [
    "sys/dev/drm/drm_gem.c:1082",
    "sys/dev/drm/drm_gem.c:1099",
    "sys/dev/drm/drm_gem.c:944",
    "sys/dev/drm/drm_drv.c:1256",
    "sys/dev/drm/drm_drv.c:1270",
    "sys/vm/vm_mmap.c:1377",
    "sys/vm/device_pager.c:109",
    "sys/dev/drm/i915/i915_gem.c:6383"
  ],
  "artifacts": [
    "README.md", "VERDICT.md", "df4458.c", "run.sh", "build.sh",
    "run.log", "env.txt", "build.log", "fix.diff",
    "manifest.json", "verdict.json"
  ]
}
