Linux kernel amdgpu firmware, ACPI and IP-block initialisation (drm/amdgpu): An out-of-bounds access in the amdgpu
Impact
An out-of-bounds access in the amdgpu firmware, ACPI and IP-block initialisation - a length, index or size supplied through the driver interface is used without a proper bound check. Depending on the path this reads kernel memory back to the caller (leaking whatever happens to sit past the buffer, including other tenants' data still resident in the slab) or writes past the allocation, which is a kernel heap-corruption and privilege-escalation primitive. Upstream fix: drm/amdgpu: Add bounds checking to ib_{get,set}_value
Who can reach it
Local. Reachable by a local user with driver-load influence, or an attacker who controls platform ACPI tables / VBIOS content - usually root or firmware-level access rather than a tenant. Not reachable over the network and not reachable from a container that has no GPU device node mapped in.
What to do
Kernel-side fix: this lands in mainline Linux and flows into distro kernels (RHEL/Rocky, Ubuntu HWE, SLES) and into AMD's out-of-tree DKMS amdgpu package shipped with ROCm. Patch the kernel or the DKMS module, then **reload the amdgpu module or reboot the node** - you cannot fix a running driver in place. Reloading amdgpu requires no process holding /dev/kfd or a render node, so in practice this is a cordon + drain + reboot per node. Plan it as a rolling maintenance across the fleet; there is no VBIOS flash, no SBIOS/AGESA step and no firmware update involved. Nodes running the ROCm DKMS stack often lag mainline by a release or two, so confirm the fix is actually present in the AMD driver version you deploy rather than assuming a new distro kernel covers it.
References
This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.