⬢ DragonFlyBSD Kernel Audit
DF-5163 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-5163",
  "title": "amdgpu atom-i2c consumes the shared ATOM fb scratch after amdgpu_atom_execute_table released ctx->mutex — radeon's scratch_mutex fix never ported; concurrent hw-DDC/atom-fb users deliver cross-contaminated DDC data",
  "verdict": "not_reproduced",
  "impact": "none",
  "reproduce": {
    "build": "cc -O2 -Wall -o ddc_race_sketch ddc_race_sketch.c",
    "run": "./run.sh",
    "expected": "guest: builds, prints conceptual note, amdgpu absent (virtio VGA). Hardware: concurrent DDC probing on two hw_capable buses returns misattributed/torn EDID bytes (window at atombios_i2c.c:94->104)."
  },
  "kernel_refs": [
    "sys/dev/drm/amd/amdgpu/atombios_i2c.c:52", "sys/dev/drm/amd/amdgpu/atombios_i2c.c:94",
    "sys/dev/drm/amd/amdgpu/atombios_i2c.c:103", "sys/dev/drm/amd/amdgpu/atom.c:1263",
    "sys/dev/drm/amd/amdgpu/atom.c:1278", "sys/dev/drm/amd/amdgpu/atom.h:128",
    "sys/dev/drm/amd/amdgpu/amdgpu_atombios.c:1814", "sys/dev/drm/amd/amdgpu/amdgpu_i2c.c:187",
    "sys/dev/drm/amd/amdgpu/amdgpu_drv.c:88", "sys/dev/drm/radeon/atom.h:128",
    "sys/dev/drm/radeon/atom.c:1247", "sys/dev/drm/radeon/atombios_i2c.c:51",
    "sys/dev/drm/amd/amdgpu/atombios_dp.c:114"
  ],
  "artifacts": [
    "ddc_race_sketch.c", "build.sh", "run.sh", "build.log", "run.log", "env.txt",
    "fix.diff", "README.md", "VERDICT.md", "manifest.json", "verdict.json"
  ]
}