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

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

 



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