CVE-2026-46006 PUBLISHED

drm/nouveau: fix u32 overflow in pushbuf reloc bounds check

Assigner: Linux
Reserved: 13.05.2026 Published: 27.05.2026 Updated: 27.05.2026

In the Linux kernel, the following vulnerability has been resolved:

drm/nouveau: fix u32 overflow in pushbuf reloc bounds check

nouveau_gem_pushbuf_reloc_apply() validates each relocation with

<pre>if (r->reloc_bo_offset + 4 > nvbo->bo.base.size) </pre>

but reloc_bo_offset is __u32 (uapi/drm/nouveau_drm.h) and the integer literal 4 promotes to unsigned int, so the addition is performed in 32 bits and wraps before the comparison against the size_t bo size.

Cast to u64 so the addition happens in 64-bit arithmetic.

[ Add Fixes: tag. - Danilo ]

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from a1606a9596e54da90ad6209071b357a4c1b0fa82 to fa297e919d1680c38ab268ff952b1698dac987f6 (excl.)
  • affected from a1606a9596e54da90ad6209071b357a4c1b0fa82 to d749a9a0ee4014681487e7ae549901aa8c176637 (excl.)
  • affected from a1606a9596e54da90ad6209071b357a4c1b0fa82 to 332884f5eb79dd60a7162b079d09d39208567a31 (excl.)
  • affected from a1606a9596e54da90ad6209071b357a4c1b0fa82 to e441d5c23ec644c8d27593db3b8928e8933512a9 (excl.)
  • affected from a1606a9596e54da90ad6209071b357a4c1b0fa82 to 2fc87d37be1b730a149b035f9375fdb8cc5333a5 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 2.6.34 is affected
  • unaffected from 0 to 2.6.34 (excl.)
  • unaffected from 6.6.140 to 6.6.* (incl.)
  • unaffected from 6.12.86 to 6.12.* (incl.)
  • unaffected from 6.18.27 to 6.18.* (incl.)
  • unaffected from 7.0.4 to 7.0.* (incl.)
  • unaffected from 7.1-rc1 to * (incl.)

References