drm/amdkfd: Update event_interrupt_isr_v11 return
authorGraham Sider <Graham.Sider@amd.com>
Thu, 5 May 2022 19:07:36 +0000 (15:07 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 10 May 2022 21:53:11 +0000 (17:53 -0400)
Add amdgpu_no_queue_eviction_on_vm_fault condition to
event_interrupt_isr_v11 return. If no queue eviction on vm fault
specified, function should return false for client/source ids specifying
vm fault.

Signed-off-by: Graham Sider <Graham.Sider@amd.com>
Reviewed-by: Mukul Joshi <mukul.joshi@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdkfd/kfd_int_process_v11.c

index 1431f0961769651cb2c3b4e615543f72bf5cb09f..a6fcbeeb7428597c19bc88740daf4a30e7fbad7d 100644 (file)
@@ -267,10 +267,11 @@ static bool event_interrupt_isr_v11(struct kfd_dev *dev,
                source_id == SOC15_INTSRC_SQ_INTERRUPT_MSG ||
                source_id == SOC15_INTSRC_CP_BAD_OPCODE ||
                source_id == SOC21_INTSRC_SDMA_TRAP ||
-               client_id == SOC21_IH_CLIENTID_VMC ||
-               ((client_id == SOC21_IH_CLIENTID_GFX) &&
-                (source_id == UTCL2_1_0__SRCID__FAULT)) /*||
-                  KFD_IRQ_IS_FENCE(client_id, source_id)*/;
+               /* KFD_IRQ_IS_FENCE(client_id, source_id) || */
+               (((client_id == SOC21_IH_CLIENTID_VMC) ||
+                ((client_id == SOC21_IH_CLIENTID_GFX) &&
+                 (source_id == UTCL2_1_0__SRCID__FAULT))) &&
+                 !amdgpu_no_queue_eviction_on_vm_fault);
 }
 
 static void event_interrupt_wq_v11(struct kfd_dev *dev,