Skip GFX11 retry-fault processing and VMHUB status MMIO when reset is in progress or hardware access has been disabled. Retain a rate-limited diagnostic containing the fault address and client.
Signed-off-by: Prike Liang <[email protected]> --- drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c index 3cdc7893587a..07b7ad753fe4 100644 --- a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c @@ -115,6 +115,13 @@ static int gmc_v11_0_process_interrupt(struct amdgpu_device *adev, addr = (u64)entry->src_data[0] << 12; addr |= ((u64)entry->src_data[1] & 0xf) << 44; + if (amdgpu_in_reset(adev) || adev->no_hw_access) { + dev_err_ratelimited(adev->dev, + "[inaccessible device] page fault address 0x%016llx from client %d\n", + addr, entry->client_id); + return 0; + } + if (retry_fault) { cam_index = entry->src_data[2] & 0x3ff; -- 2.34.1
