Home

Description

In the Linux kernel, the following vulnerability has been resolved: drm/v3d: Reject empty multisync extension to prevent infinite loop v3d_get_extensions() walks a userspace-provided singly-linked list of ioctl extensions without any bound on the chain length. A local user can craft a self-referential extension (ext->next == &ext) with zero in_sync_count and out_sync_count, which bypasses the existing duplicate- extension guard: if (se->in_sync_count || se->out_sync_count) return -EINVAL; The guard never fires because v3d_get_multisync_post_deps() returns immediately when count is zero, leaving both fields at zero on every iteration. The result is an infinite loop in kernel context, blocking the calling thread and pegging a CPU core indefinitely. Fix this by rejecting a multisync extension where both in_sync_count and out_sync_count are zero in v3d_get_multisync_submit_deps(). An empty multisync carries no synchronization information and serves no useful purpose, so returning -EINVAL for such an extension is the correct defense against this attack vector.

PUBLISHED Reserved 2026-05-13 | Published 2026-06-08 | Updated 2026-06-08 | Assigner Linux

Product status

Default status
unaffected

e4165ae8304e5ea822fbe5909dd3be5445c058b7 (git) before 4fa42a249e8cd6ed17aea04e5695b6e9001f2433
affected

e4165ae8304e5ea822fbe5909dd3be5445c058b7 (git) before 9c5164781cb388d219d8f49fa0f0b04cf86ad544
affected

e4165ae8304e5ea822fbe5909dd3be5445c058b7 (git) before fb44d589bf3148e13452185a6e772a7efbf2d684
affected

Default status
affected

5.16
affected

Any version before 5.16
unaffected

6.18.33 (semver)
unaffected

7.0.9 (semver)
unaffected

7.1-rc1 (original_commit_for_fix)
unaffected

References

git.kernel.org/...c/4fa42a249e8cd6ed17aea04e5695b6e9001f2433

git.kernel.org/...c/9c5164781cb388d219d8f49fa0f0b04cf86ad544

git.kernel.org/...c/fb44d589bf3148e13452185a6e772a7efbf2d684

cve.org (CVE-2026-46314)

nvd.nist.gov (CVE-2026-46314)

Download JSON