Files
linux/drivers/gpu/drm/amd/amdgpu
Harkirat Gill 5e70f6804b drm/amdgpu: cap GTT size to physical RAM on APUs
On APUs, the GTT pool is backed by system RAM, but its size is not bound
to the non-carveout memory that actually backs it. A user can end up
with GTT + VRAM exceeding total physical memory through the following
sequence:

 - Have a large non-carveout memory space (~128GB) and accordingly set a
   large GTT (~100GB) via the ttm module parameter.
 - Lower the non-carveout memory space in BIOS by increasing the UMA
   Frame Buffer Size (VRAM) to 64GB.
 - The previously set GTT value (~100GB) persists, even though the new
   non-carveout space (64GB) can no longer back it.

This leads to a case where kernel reports GTT (100GB) + VRAM (64GB)
despite the sum being greater than total physical memory (128GB).

Cap the GTT size to totalram_pages() on APUs. totalram_pages() already
excludes the VRAM carveout, so the resulting GTT can never exceed the
system RAM that actually backs it.

Signed-off-by: Harkirat Gill <harkirat.gill@amd.com>
Reviewed-by: David Francis <David.Francis@amd.com>
Assisted-by: Claude:claude-opus-4
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 5dafdd6492)
Cc: stable@vger.kernel.org
2026-07-28 20:01:16 -04:00
..
2024-07-24 17:30:23 -04:00
2025-10-13 14:14:15 -04:00
2024-01-15 18:35:37 -05:00
2024-01-15 18:35:37 -05:00
2024-07-24 17:30:23 -04:00
2024-07-24 17:30:23 -04:00
2026-07-08 16:37:12 -04:00
2026-06-17 18:36:31 -04:00
2023-08-07 16:35:38 -04:00
2023-03-15 18:45:26 -04:00
2023-03-15 18:45:26 -04:00
2026-01-05 16:59:55 -05:00
2023-08-30 15:00:27 -04:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-03-17 17:43:00 -04:00
2023-08-31 16:34:05 -04:00