]> www.infradead.org Git - users/jedix/linux-maple.git/commit
amdgpu: populate buffers before exporting them.
authorDave Airlie <airlied@redhat.com>
Thu, 4 Sep 2025 02:16:40 +0000 (12:16 +1000)
committerDave Airlie <airlied@redhat.com>
Thu, 11 Sep 2025 00:04:31 +0000 (10:04 +1000)
commit619ddf57cfddf81ffb75905cc5f533e61206b10c
tree485253937b4d7fcf3d1d289b73a0c9602d07b23c
parent50243079865ae7c150bc54ea3ed59077cdf3da03
amdgpu: populate buffers before exporting them.

Before exporting a buffer, make sure it has been populated with
pages at least once.

While discussing cgroups we noticed a problem where you could export
a BO to a dma-buf without having it ever being backed or accounted for.

This meant in low memory situations or eventually with cgroups, a
lower privledged process might cause the compositor to try and allocate
a lot of memory on it's behalf and this could fail. At least make
sure the exporter has managed to allocate the RAM at least once
before exporting the object.

This only applies currently to TTM_PL_SYSTEM objects, because
GTT objects get populated on first validate, and VRAM doesn't
use TT.

Reviewed-by: Christian Koenig <christian.koenig@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Link: https://lore.kernel.org/r/20250904021643.2050497-2-airlied@gmail.com
drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c