OSDN Git Service

drm/amdgpu: Increase soft IH ring size
authorPhilip Yang <Philip.Yang@amd.com>
Fri, 7 Jul 2023 13:55:18 +0000 (09:55 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 12 Jul 2023 14:57:25 +0000 (10:57 -0400)
commitbf80d34b6c58ad1c4f76067ecd460a148eab9d39
tree1b2ad88c11b72c2fe583372f622640fbbc5d7783
parent95b88ea1af4b4c0de3f151347605dbc6734e6cb2
drm/amdgpu: Increase soft IH ring size

Retry faults are delegated to soft IH ring and then processed by
deferred worker. Current soft IH ring size PAGE_SIZE can store 128
entries, which may overflow and drop retry faults, causes HW stucks
because the retry fault is not recovered.

Increase soft IH ring size to 8KB, enough to store 256 CAM entries
because we clear the CAM entry after handling the retry fault from soft
ring.

Define macro IH_RING_SIZE and IH_SW_RING_SIZE to remove duplicate
constant.

Show warning message if soft IH ring overflows with CAM enabled because
this should not happen.

Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_ih.c
drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h
drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c
drivers/gpu/drm/amd/amdgpu/ih_v6_0.c
drivers/gpu/drm/amd/amdgpu/navi10_ih.c
drivers/gpu/drm/amd/amdgpu/vega10_ih.c
drivers/gpu/drm/amd/amdgpu/vega20_ih.c