summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormonk.liu <monk.liu@amd.com>2015-04-27 10:25:54 +0800
committerAlex Deucher <alexander.deucher@amd.com>2015-07-30 00:11:09 -0400
commit234922f8cdd910470acc523d9b06af8d2ca1f671 (patch)
tree2e2d2cf566f6ac1c5797881581f78f39b7a1c458
parent7a2f355b33a4414d1655f2c0504154ebe6757c36 (diff)
amdgpu: fix an error of bo_list handler
original method is just totally wrong, it loses the bo_list handler at all after command stream accomplished Signed-off-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>
-rw-r--r--amdgpu/amdgpu_cs.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/amdgpu/amdgpu_cs.c b/amdgpu/amdgpu_cs.c
index 614904da..72a2465c 100644
--- a/amdgpu/amdgpu_cs.c
+++ b/amdgpu/amdgpu_cs.c
@@ -707,6 +707,7 @@ static int amdgpu_cs_submit_one(amdgpu_device_handle dev,
uint64_t *chunk_array;
struct drm_amdgpu_cs_chunk *chunks;
struct drm_amdgpu_cs_chunk_data *chunk_data;
+ uint32_t bo_list_handle;
if (ibs_request->ip_type >= AMDGPU_HW_IP_NUM)
return -EINVAL;
@@ -754,10 +755,11 @@ static int amdgpu_cs_submit_one(amdgpu_device_handle dev,
}
r = amdgpu_cs_create_bo_list(dev, context, ibs_request, NULL,
- &cs.in.bo_list_handle);
+ &bo_list_handle);
if (r)
goto error_unlock;
+ cs.in.bo_list_handle = bo_list_handle;
pthread_mutex_lock(&context->sequence_mutex);
if (ibs_request->ip_type != AMDGPU_HW_IP_UVD &&
@@ -805,7 +807,7 @@ static int amdgpu_cs_submit_one(amdgpu_device_handle dev,
pthread_mutex_unlock(&context->sequence_mutex);
- r = amdgpu_cs_free_bo_list(dev, cs.in.bo_list_handle);
+ r = amdgpu_cs_free_bo_list(dev, bo_list_handle);
if (r)
goto error_free;