Blob Blame History Raw
From: Roger He <Hongbo.He@amd.com>
Date: Fri, 17 Nov 2017 12:45:18 +0800
Subject: drm/amd/amdgpu: fix over-bound accessing in amdgpu_cs_wait_any_fence
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Git-commit: eb174c77e258f93b0f1046afd23a0aede68be3f2
Patch-mainline: v4.15-rc1
References: FATE#326289 FATE#326079 FATE#326049 FATE#322398 FATE#326166

Fixes an oops in amdgpu_cs_wait_any_fence.

Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Chunming Zhou <david1.zhou@amd.com>
Signed-off-by: Roger He <Hongbo.He@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Acked-by: Petr Tesarik <ptesarik@suse.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
@@ -1496,7 +1496,7 @@ out:
 	wait->out.status = (r > 0);
 	wait->out.first_signaled = first;
 
-	if (array[first])
+	if (first < fence_count && array[first])
 		r = array[first]->error;
 	else
 		r = 0;