β¬’ DragonFlyBSD Kernel Audit
← triage Β· dashboard
DF-5111

amdgpu_job_dependency busy-loops forever on amdgpu_vmid_grab allocation failure, wedging the ring scheduler kthread (unbounded spin + DRM_ERROR flood, ring-wide GPU DoS)

Summary

The while-loop's three exits are all under vmid_grab's control; its alloc-failure paths (-ENOMEM at 4 sites) return without setting vmid or adding to sync, so the sched worker spins at 100% with unbounded DRM_ERROR flood, stalling all CS on the ring. Unpriv-triggerable with GPU access racing kmem exhaustion; upstream-identical shape. Hardware-gated on guest (no AMD VGA - verified). Break-on-persistent-error fix (lets ib_schedule reject cleanly).

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-5111 Β· 1 files
FileTypeDescriptionSize
verdict.json file 937 B view raw

Fix verification

not_testable
baseline no→ patch + rebuild →patched clean
per-fix-DF-5111

Confirmed kernel references

Detail

Evidence (decisive lines)

source trace in finding markdown

Verified recommended fix

see finding markdown

Verdict

untested (hardware-gated: no AMD GPU on audit guest; PoC sketch for capable hw in finding)