Skip to content

Commit 18dbcfb

Browse files
hkasivisalexdeucher
authored andcommitted
drm/amdkfd: No need to suspend whole MES to evict process
Each queue of the process is individually removed and there is not need to suspend whole mes. Suspending mes stops kernel mode queues also causing unnecessary timeouts when running mixed work loads Fixes: 079ae51 ("drm/amdkfd: fix suspend/resume all calls in mes based eviction path") Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/4765 Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit 3fd2058)
1 parent 808c205 commit 18dbcfb

1 file changed

Lines changed: 1 addition & 11 deletions

File tree

drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1209,14 +1209,8 @@ static int evict_process_queues_cpsch(struct device_queue_manager *dqm,
12091209
pr_debug_ratelimited("Evicting process pid %d queues\n",
12101210
pdd->process->lead_thread->pid);
12111211

1212-
if (dqm->dev->kfd->shared_resources.enable_mes) {
1212+
if (dqm->dev->kfd->shared_resources.enable_mes)
12131213
pdd->last_evict_timestamp = get_jiffies_64();
1214-
retval = suspend_all_queues_mes(dqm);
1215-
if (retval) {
1216-
dev_err(dev, "Suspending all queues failed");
1217-
goto out;
1218-
}
1219-
}
12201214

12211215
/* Mark all queues as evicted. Deactivate all active queues on
12221216
* the qpd.
@@ -1246,10 +1240,6 @@ static int evict_process_queues_cpsch(struct device_queue_manager *dqm,
12461240
KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES :
12471241
KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
12481242
USE_DEFAULT_GRACE_PERIOD);
1249-
} else {
1250-
retval = resume_all_queues_mes(dqm);
1251-
if (retval)
1252-
dev_err(dev, "Resuming all queues failed");
12531243
}
12541244

12551245
out:

0 commit comments

Comments
 (0)