[PATCH 1/7] drm/amdgpu/benchmark: use dev_info rather than DRM macros for logging

Christian König ckoenig.leichtzumerken at gmail.com
Mon Feb 21 10:59:39 UTC 2022


Am 18.02.22 um 23:25 schrieb Alex Deucher:
> So we can tell which output goes to which device when multiple GPUs
> are present.  Also while we are here, convert DRM_ERROR to dev_info.
> The error cases are not critical.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>

Reviewed-by: Christian König <christian.koenig at amd.com> for the entire 
series.

As a follow up we should probably replace the create, reserve, pin, 
alloc_gart dance in amdgpu_benchmark_move() with a call to 
amdgpu_bo_create_kernel() and amdgpu_bo_free_kernel().

And using ktime() instead of jiffies would protect us against wrap 
arounds in amdgpu_benchmark_do_move().

Regards,
Christian.

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c | 12 +++++++-----
>   1 file changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c
> index 313517f7cf10..b38783278a99 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c
> @@ -56,13 +56,15 @@ static int amdgpu_benchmark_do_move(struct amdgpu_device *adev, unsigned size,
>   }
>   
>   
> -static void amdgpu_benchmark_log_results(int n, unsigned size,
> +static void amdgpu_benchmark_log_results(struct amdgpu_device *adev,
> +					 int n, unsigned size,
>   					 unsigned int time,
>   					 unsigned sdomain, unsigned ddomain,
>   					 char *kind)
>   {
>   	unsigned int throughput = (n * (size >> 10)) / time;
> -	DRM_INFO("amdgpu: %s %u bo moves of %u kB from"
> +
> +	dev_info(adev->dev, "amdgpu: %s %u bo moves of %u kB from"
>   		 " %d to %d in %u ms, throughput: %u Mb/s or %u MB/s\n",
>   		 kind, n, size >> 10, sdomain, ddomain, time,
>   		 throughput * 8, throughput);
> @@ -131,14 +133,14 @@ static void amdgpu_benchmark_move(struct amdgpu_device *adev, unsigned size,
>   		if (time < 0)
>   			goto out_cleanup;
>   		if (time > 0)
> -			amdgpu_benchmark_log_results(n, size, time,
> +			amdgpu_benchmark_log_results(adev, n, size, time,
>   						     sdomain, ddomain, "dma");
>   	}
>   
>   out_cleanup:
>   	/* Check error value now. The value can be overwritten when clean up.*/
>   	if (r) {
> -		DRM_ERROR("Error while benchmarking BO move.\n");
> +		dev_info(adev->dev, "Error while benchmarking BO move.\n");
>   	}
>   
>   	if (sobj) {
> @@ -239,6 +241,6 @@ void amdgpu_benchmark(struct amdgpu_device *adev, int test_number)
>   		break;
>   
>   	default:
> -		DRM_ERROR("Unknown benchmark\n");
> +		dev_info(adev->dev, "Unknown benchmark\n");
>   	}
>   }



More information about the amd-gfx mailing list