[AMD Official Use Only - AMD Internal Distribution Only] Ping......
>-----Original Message----- >From: amd-gfx <amd-gfx-boun...@lists.freedesktop.org> On Behalf Of Deng, Emily >Sent: Monday, February 24, 2025 9:53 AM >To: Kuehling, Felix <felix.kuehl...@amd.com> >Cc: amd-gfx@lists.freedesktop.org >Subject: RE: [PATCH 3/3] drm/amdkfd: Skip update vmid in while update queue > >[AMD Official Use Only - AMD Internal Distribution Only] > >[AMD Official Use Only - AMD Internal Distribution Only] > >Hi Felix, > Could you help review this? Thanks. > >Emily Deng >Best Wishes > > > >>-----Original Message----- >>From: Deng, Emily <emily.d...@amd.com> >>Sent: Friday, February 21, 2025 9:44 AM >>To: Deng, Emily <emily.d...@amd.com>; amd-gfx@lists.freedesktop.org >>Subject: RE: [PATCH 3/3] drm/amdkfd: Skip update vmid in while update >>queue >> >>[AMD Official Use Only - AMD Internal Distribution Only] >> >>Ping...... >> >>Emily Deng >>Best Wishes >> >> >> >>>-----Original Message----- >>>From: Emily Deng <emily.d...@amd.com> >>>Sent: Thursday, February 20, 2025 2:25 PM >>>To: amd-gfx@lists.freedesktop.org >>>Cc: Deng, Emily <emily.d...@amd.com> >>>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.d...@amd.com> >>>--- >>> 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 >>