aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorYong Zhao <yong.zhao@amd.com>2018-01-02 13:10:50 -0500
committerOded Gabbay <oded.gabbay@gmail.com>2018-01-02 13:10:50 -0500
commit40a526dc1edbe08000f49aeb6c7b01406d58a073 (patch)
tree734e2d6bf664424bbcd03d27e5857748923a86b3 /drivers
parent9e8272240bee42ebafa9d4994c1d65916a761f5d (diff)
drm/amdkfd: don't always call execute_queues_cpsch()
When destroying an inactive queue, we don't need to call execute_queues_cpsch. Signed-off-by: Yong Zhao <yong.zhao@amd.com> Reviewed-by: Oak Zeng <oak.zeng@amd.com> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
index acfb12100e17..b21285afa4ea 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
@@ -1013,13 +1013,13 @@ static int destroy_queue_cpsch(struct device_queue_manager *dqm,
1013 1013
1014 list_del(&q->list); 1014 list_del(&q->list);
1015 qpd->queue_count--; 1015 qpd->queue_count--;
1016 if (q->properties.is_active) 1016 if (q->properties.is_active) {
1017 dqm->queue_count--; 1017 dqm->queue_count--;
1018 1018 retval = execute_queues_cpsch(dqm,
1019 retval = execute_queues_cpsch(dqm,
1020 KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0); 1019 KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0);
1021 if (retval == -ETIME) 1020 if (retval == -ETIME)
1022 qpd->reset_wavefronts = true; 1021 qpd->reset_wavefronts = true;
1022 }
1023 1023
1024 mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj); 1024 mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj);
1025 1025