diff options
| author | Mukul Joshi <mukul.joshi@amd.com> | 2026-09-01 15:00:17 -0400 |
|---|---|---|
| committer | Alex Deucher <alexander.deucher@amd.com> | 2026-09-10 12:08:40 -0400 |
| commit | e6b969fe8d282fc2717bed06afe4cc58945ef102 (patch) | |
| tree | 14a58d62e3abbe760487959b4dc6c4aee57c0f66 | |
| parent | e3b207b98d81b4493af26a93923a80597fa7022a (diff) | |
| download | linux-next-e6b969fe8d282fc2717bed06afe4cc58945ef102.tar.gz linux-next-e6b969fe8d282fc2717bed06afe4cc58945ef102.zip | |
drm/amdgpu: Reset UALink connection on failed TLB-shootdown send
If sending TLB shootdown to a remote GPU fails, reset the connection and
mark the connection as NOT_READY.
Signed-off-by: Mukul Joshi <mukul.joshi@amd.com>
Reviewed-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c index b09fa56c6f98..ab564202f550 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ualink.c @@ -2680,10 +2680,19 @@ static void amdgpu_ualink_send_tlb_shootdown(struct amdgpu_device *adev, r = amdgpu_ualink_remote_shootdown(adev, remote_acc_id, npa_addr, size, AMDGPU_UALINK_HEAVYWEIGHT_TLB_SHOOTDOWN); - if (r) + if (r) { dev_err(adev->dev, "EXP-CLEANUP: TLB shootdown send failed to remote:%u\n", remote_acc_id); + + /* Send failed: mark the connection NOT_READY so the + * rest of this cleanup (and other cleanups) skip the + * unreachable peer via amdgpu_ualink_check_conn_ready(). + */ + amdgpu_ualink_handle_connection_reset(adev, remote_acc_id, + AMDGPU_UALINK_CONN_NOT_READY, + imp_entry->generation_count); + } } } |
