Files
linux/drivers/gpu/drm/amd/amdgpu
Vitaly Prosyak 9dff2bb709 drm/amdgpu: disable peer-to-peer access for DCC-enabled GC12 VRAM surfaces
Certain multi-GPU configurations (especially GFX12) may hit
data corruption when a DCC-compressed VRAM surface is shared across GPUs
using peer-to-peer (P2P) DMA transfers.

Such surfaces rely on device-local metadata and cannot be safely accessed
through a remote GPU’s page tables. Attempting to import a DCC-enabled
surface through P2P leads to incorrect rendering or GPU faults.

This change disables P2P for DCC-enabled VRAM buffers that are contiguous
and allocated on GFX12+ hardware.  In these cases, the importer falls back
to the standard system-memory path, avoiding invalid access to compressed
surfaces.

Future work could consider optional migration (VRAM→System→VRAM) if a
performance regression is observed when `attach->peer2peer = false`.

Tested on:
 - Dual RX 9700 XT (Navi4x) setup
 - GNOME and Wayland compositor scenarios
 - Confirmed no corruption after disabling P2P under these conditions
v2: Remove check TTM_PL_VRAM & TTM_PL_FLAG_CONTIGUOUS.
v3: simplify for upsteam and fix ip version check (Alex)

Suggested-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2025-11-11 21:53:27 -05:00
..
2025-04-07 15:18:34 -04:00
2024-07-24 17:30:23 -04:00
2025-10-13 14:14:15 -04:00
2024-11-03 01:28:06 -05: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
2025-04-08 16:48:14 -04:00
2025-04-08 16:48:14 -04:00
2025-03-26 17:44:34 -04:00
2025-03-05 10:37:13 -05:00
2025-09-18 09:43:02 -04:00
2023-08-31 16:34:05 -04:00