RE: [PATCH 3/3] drm/amdkfd: Skip update vmid in while update queue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[AMD Official Use Only - AMD Internal Distribution Only]

Ping......

Emily Deng
Best Wishes



>-----Original Message-----
>From: Emily Deng <Emily.Deng@xxxxxxx>
>Sent: Thursday, February 20, 2025 2:25 PM
>To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx
>Cc: Deng, Emily <Emily.Deng@xxxxxxx>
>Subject: [PATCH 3/3] drm/amdkfd: Skip update vmid in while update queue
>
>Avoid updating the vmid to 0 during the queue update process, as this may trigger a
>wptr poll address page fault when a ring doorbell is activated  in doorbell_mode=1.
>
>Signed-off-by: Emily Deng <Emily.Deng@xxxxxxx>
>---
> drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 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 6b38967d5631..3028c16264b2 100644
>--- a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
>+++ b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
>@@ -219,6 +219,8 @@ static void init_mqd(struct mqd_manager *mm, void **mqd,
>               m->cp_hqd_wg_state_offset = q->ctl_stack_size;
>       }
>
>+      m->cp_hqd_vmid = q->vmid;
>+
>       *mqd = m;
>       if (gart_addr)
>               *gart_addr = addr;
>@@ -288,8 +290,6 @@ static void update_mqd(struct mqd_manager *mm, void
>*mqd,
>
>       m->cp_hqd_iq_timer = 0;
>
>-      m->cp_hqd_vmid = q->vmid;
>-
>       if (q->format == KFD_QUEUE_FORMAT_AQL) {
>               m->cp_hqd_pq_control |=
>CP_HQD_PQ_CONTROL__NO_UPDATE_RPTR_MASK |
>                               2 <<
>CP_HQD_PQ_CONTROL__SLOT_BASED_WPTR__SHIFT |
>--
>2.36.1





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux