[AMD Official Use Only - AMD Internal Distribution Only] Ping...... >-----Original Message----- >From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Deng, Emily >Sent: Monday, February 24, 2025 9:53 AM >To: Kuehling, Felix <Felix.Kuehling@xxxxxxx> >Cc: amd-gfx@xxxxxxxxxxxxxxxxxxxxx >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.Deng@xxxxxxx> >>Sent: Friday, February 21, 2025 9:44 AM >>To: Deng, Emily <Emily.Deng@xxxxxxx>; amd-gfx@xxxxxxxxxxxxxxxxxxxxx >>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.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 >>