diff options
author | Yong Zhao <yong.zhao@amd.com> | 2018-01-02 13:10:50 -0500 |
---|---|---|
committer | Oded Gabbay <oded.gabbay@gmail.com> | 2018-01-02 13:10:50 -0500 |
commit | 40a526dc1edbe08000f49aeb6c7b01406d58a073 (patch) | |
tree | 734e2d6bf664424bbcd03d27e5857748923a86b3 /drivers | |
parent | 9e8272240bee42ebafa9d4994c1d65916a761f5d (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.c | 10 |
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 | ||