On Mon, Jan 12, 2026 at 9:12 PM Harish Kasiviswanathan
<[email protected]> wrote:
>
> 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
>
> Signed-off-by: Harish Kasiviswanathan <[email protected]>

Reviewed-by: Alex Deucher <[email protected]>

Fixes: 079ae5118e1f ("drm/amdkfd: fix suspend/resume all calls in mes
based eviction path")
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/4765

> ---
>  .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c    | 12 +-----------
>  1 file changed, 1 insertion(+), 11 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 dc4b6d19dc10..28e8c4f46f69 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c
> @@ -1211,14 +1211,8 @@ static int evict_process_queues_cpsch(struct 
> device_queue_manager *dqm,
>         pr_debug_ratelimited("Evicting process pid %d queues\n",
>                             pdd->process->lead_thread->pid);
>
> -       if (dqm->dev->kfd->shared_resources.enable_mes) {
> +       if (dqm->dev->kfd->shared_resources.enable_mes)
>                 pdd->last_evict_timestamp = get_jiffies_64();
> -               retval = suspend_all_queues_mes(dqm);
> -               if (retval) {
> -                       dev_err(dev, "Suspending all queues failed");
> -                       goto out;
> -               }
> -       }
>
>         /* Mark all queues as evicted. Deactivate all active queues on
>          * the qpd.
> @@ -1248,10 +1242,6 @@ static int evict_process_queues_cpsch(struct 
> device_queue_manager *dqm,
>                                               
> KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES :
>                                               
> KFD_UNMAP_QUEUES_FILTER_DYNAMIC_QUEUES, 0,
>                                               USE_DEFAULT_GRACE_PERIOD);
> -       } else {
> -               retval = resume_all_queues_mes(dqm);
> -               if (retval)
> -                       dev_err(dev, "Resuming all queues failed");
>         }
>
>  out:
> --
> 2.43.0
>

Reply via email to