{
  "finding_id": "DF-4568",
  "file": "sys/dev/drm/i915/intel_guc_ct.c",
  "title": "CT teardown frees the shared CT page while GuC interrupts are still enabled and guc->handler still points at CT code (interrupt-context UAF read+write)",
  "severity": "Info",
  "bucket": "base:dev",
  "verdict": "untested",
  "impact": "none",
  "confidence": "certain",
  "reproduce": {
    "build": "n/a — teardown race on a path unreachable on this tree (no platform sets has_guc_ct; enable_guc defaults 0)",
    "run": "n/a",
    "expected": "n/a — static finding; window = asserted GuC event dispatched between intel_guc_ct.c:898 (page freed) and intel_uc.c:233/i915_irq.c:561 (IRQ masked+synchronized), handler swapped only at intel_guc_ct.c:902"
  },
  "kernel_refs": [
    "sys/dev/drm/i915/intel_uc.c:231",
    "sys/dev/drm/i915/intel_uc.c:233",
    "sys/dev/drm/i915/intel_guc_ct.c:898",
    "sys/dev/drm/i915/intel_guc_ct.c:902",
    "sys/dev/drm/i915/intel_guc_ct.c:628",
    "sys/dev/drm/i915/i915_irq.c:561"
  ],
  "artifacts": [
    "README.md",
    "VERDICT.md",
    "fix.diff",
    "verdict.json",
    "manifest.json"
  ]
}
