[PATCH v2 12/12] drm/amdgpu: Refine the error report when flush tlb.

Christian König ckoenig.leichtzumerken at gmail.com
Thu Apr 29 11:28:56 UTC 2021


Am 29.04.21 um 12:26 schrieb Peng Ju Zhou:
> there are 2 hubs to flush in the gmc, to make it easier
> to debug when hub flush failed, refine the logs.

NAK, we can have more than just the two hubs.

See gmc_v9_0_process_interrupt:

         if (entry->client_id == SOC15_IH_CLIENTID_VMC) {
                 hub_name = "mmhub0";
                 hub = &adev->vmhub[AMDGPU_MMHUB_0];
         } else if (entry->client_id == SOC15_IH_CLIENTID_VMC1) {
                 hub_name = "mmhub1";
                 hub = &adev->vmhub[AMDGPU_MMHUB_1];
         } else {
                 hub_name = "gfxhub0";
                 hub = &adev->vmhub[AMDGPU_GFXHUB_0];
         }

Maybe put the name into the hub structure as well.

Christian.


>
> Signed-off-by: Peng Ju Zhou <PengJu.Zhou at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
> index c25541112663..33cd487741f7 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
> @@ -297,7 +297,8 @@ static void gmc_v10_0_flush_vm_hub(struct amdgpu_device *adev, uint32_t vmid,
>   	if (i < adev->usec_timeout)
>   		return;
>   
> -	DRM_ERROR("Timeout waiting for VM flush ACK!\n");
> +	DRM_ERROR("Timeout waiting for VM flush hub: %s!\n",
> +		  vmhub == AMDGPU_GFXHUB_0 ? "gfxhub" : "mmhub");
>   }
>   
>   /**



More information about the amd-gfx mailing list