RE: [PATCH 1/3] drm/amdkfd: Check int source id for utcl2 poison event

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

 



[AMD Official Use Only - AMD Internal Distribution Only]

> -----Original Message-----
> From: Hawking Zhang <Hawking.Zhang@xxxxxxx>
> Sent: Monday, August 19, 2024 11:15 PM
> To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx; Zhou1, Tao <Tao.Zhou1@xxxxxxx>; Yang,
> Stanley <Stanley.Yang@xxxxxxx>
> Cc: Zhang, Hawking <Hawking.Zhang@xxxxxxx>; Fan, Shikang
> <Shikang.Fan@xxxxxxx>
> Subject: [PATCH 1/3] drm/amdkfd: Check int source id for utcl2 poison event
>
> Traditional utcl2 fault_status polling does not work in SRIOV environment. The
> polling of fault status register from guest side will be dropped by hardware.
>
> Driver should switch to check utcl2 interrupt source id to identify utcl2 poison
> event. It is set to 1 when poisoned data interrupts are signaled.
>
> Signed-off-by: Hawking Zhang <Hawking.Zhang@xxxxxxx>
> ---
>  drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c | 3 +--
>  drivers/gpu/drm/amd/amdkfd/soc15_int.h          | 1 +
>  2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c
> b/drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c
> index a9c3580be8c9..1196dccbe6bc 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c
> @@ -448,8 +448,7 @@ static void event_interrupt_wq_v9(struct kfd_node *dev,
>               if (vmid_type && client_id == SOC15_IH_CLIENTID_VMC)
>                       hub_inst = node_id / 4;
>
> -             if (amdgpu_amdkfd_ras_query_utcl2_poison_status(dev->adev,
> -                                     hub_inst, vmid_type)) {

[Tao] the node_id, vmid_type and hub_inst can be also dropped.

> +             if (source_id == SOC15_INTSRC_VMC_UTCL2_POISON) {
>                       event_interrupt_poison_consumption_v9(dev, pasid,
> client_id);
>                       return;
>               }
> diff --git a/drivers/gpu/drm/amd/amdkfd/soc15_int.h
> b/drivers/gpu/drm/amd/amdkfd/soc15_int.h
> index 10138676f27f..e5c0205f2618 100644
> --- a/drivers/gpu/drm/amd/amdkfd/soc15_int.h
> +++ b/drivers/gpu/drm/amd/amdkfd/soc15_int.h
> @@ -29,6 +29,7 @@
>  #define SOC15_INTSRC_CP_BAD_OPCODE   183
>  #define SOC15_INTSRC_SQ_INTERRUPT_MSG        239
>  #define SOC15_INTSRC_VMC_FAULT               0
> +#define SOC15_INTSRC_VMC_UTCL2_POISON        1
>  #define SOC15_INTSRC_SDMA_TRAP               224
>  #define SOC15_INTSRC_SDMA_ECC                220
>  #define SOC21_INTSRC_SDMA_TRAP               49
> --
> 2.17.1





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux