diff options
author | Pixel Ding <Pixel.Ding@amd.com> | 2017-11-08 10:20:01 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-11-08 17:55:14 -0500 |
commit | dce1e131dd4dc68099ff1b70aa03cd2d0acf8639 (patch) | |
tree | bf4a0efb026336ea7e4fa40c96829d75839bf12b /drivers | |
parent | 78aa02c713fcf19e9bc8511ab61a5fd6c877cc01 (diff) | |
download | linux-stable-dce1e131dd4dc68099ff1b70aa03cd2d0acf8639.tar.gz linux-stable-dce1e131dd4dc68099ff1b70aa03cd2d0acf8639.tar.bz2 linux-stable-dce1e131dd4dc68099ff1b70aa03cd2d0acf8639.zip |
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 <Pixel.Ding@amd.com>
Reviewed-by: Monk Liu <Monk.Liu@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 3 |
1 files changed, 2 insertions, 1 deletions
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); } /** |