summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdkfd
diff options
context:
space:
mode:
authorYong Zhao <Yong.Zhao@amd.com>2019-11-08 23:03:29 -0500
committerAlex Deucher <alexander.deucher@amd.com>2019-11-13 15:29:45 -0500
commitbc05b0ec150983ba3b3c1a1c6b5eeb6c2918c94a (patch)
tree24825d24c3be195bff89df0f285df679773d078a /drivers/gpu/drm/amd/amdkfd
parent681a9167ddb2d5f5fd9821f5e484e51b31a073bb (diff)
downloadlinux-stable-bc05b0ec150983ba3b3c1a1c6b5eeb6c2918c94a.tar.gz
linux-stable-bc05b0ec150983ba3b3c1a1c6b5eeb6c2918c94a.tar.bz2
linux-stable-bc05b0ec150983ba3b3c1a1c6b5eeb6c2918c94a.zip
drm/amdkfd: Fix a bug when calculating save_area_used_size
workgroup context data writes from m->cp_hqd_cntl_stack_size, so we should deduct it when calculating the used size. Signed-off-by: Yong Zhao <Yong.Zhao@amd.com> Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdkfd')
-rw-r--r--drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
index d3380c5bdbde..be27ff01cdb8 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
@@ -302,7 +302,8 @@ static int get_wave_state(struct mqd_manager *mm, void *mqd,
*ctl_stack_used_size = m->cp_hqd_cntl_stack_size -
m->cp_hqd_cntl_stack_offset;
- *save_area_used_size = m->cp_hqd_wg_state_offset;
+ *save_area_used_size = m->cp_hqd_wg_state_offset -
+ m->cp_hqd_cntl_stack_size;
if (copy_to_user(ctl_stack, mqd_ctl_stack, m->cp_hqd_cntl_stack_size))
return -EFAULT;