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