From: Pixel Ding Date: Wed, 8 Nov 2017 02:20:01 +0000 (+0800) Subject: drm/amdgpu: bypass lru touch for KIQ ring submission X-Git-Tag: v4.15-rc1~90^2~7^2~1 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=dce1e131dd4dc68099ff1b70aa03cd2d0acf8639;p=users%2Fjedix%2Flinux-maple.git drm/amdgpu: bypass lru touch for KIQ ring submission KIQ ring submission is used for register accessing on SRIOV VF that could happen both in irq enabled and irq disabled cases. Inversion lock could happen on adev->ring_lru_list_lock, while this operation is useless and just adds overhead in this use case. Signed-off-by: Pixel Ding Reviewed-by: Monk Liu Reviewed-by: Christian König Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c index e5ece1fae149..a98fbbb4739f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c @@ -136,7 +136,8 @@ void amdgpu_ring_commit(struct amdgpu_ring *ring) if (ring->funcs->end_use) ring->funcs->end_use(ring); - amdgpu_ring_lru_touch(ring->adev, ring); + if (ring->funcs->type != AMDGPU_RING_TYPE_KIQ) + amdgpu_ring_lru_touch(ring->adev, ring); } /**