[PATCH] drm/amdgpu: use ARRAY_SIZE() to add amdgpu debugfs files

Yuan, Xiaojie Xiaojie.Yuan at amd.com
Mon Jul 13 13:34:46 UTC 2020


[AMD Official Use Only - Internal Distribution Only]

Hi Chris,

This was observed when I was trying to add a new debugfs file. Some similar
occurrences using ARRAY_SIZE() are:

- amdgpu_kms.c :: amdgpu_firmware_info_list
- amdgpu_pm.c :: amdgpu_debugfs_pm_info
- amdgpu_ttm.c :: amdgpu_ttm_debugfs_list
- amdgpu_dm_debugfs.c :: amdgpu_dm_debugfs_list

This patch simply unified the usage of amdgpu_debugfs_add_files().

BTW, do you intended to use:
debugfs_create_file() - need to call debugfs_remove() explicitly
or the drm helper
drm_debugfs_create_files() - debugfs files will be removed automatically

If so, we need a separate patch to cleanup them in a batch.

BR,
Xiaojie

________________________________________
From: Christian König <ckoenig.leichtzumerken at gmail.com>
Sent: Monday, July 13, 2020 4:38 PM
To: Yuan, Xiaojie; amd-gfx at lists.freedesktop.org
Subject: Re: [PATCH] drm/amdgpu: use ARRAY_SIZE() to add amdgpu debugfs files

Am 13.07.20 um 07:59 schrieb Xiaojie Yuan:
> to easily add new debugfs file w/o changing the hardcoded list count.

In general a good idea, but I would rather like to see
amdgpu_debugfs_add_files() completely removed and debugfs_create_file()
used directly instead.

Christian.

>
> Signed-off-by: Xiaojie Yuan <xiaojie.yuan at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 6 ++++--
>   drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c   | 3 ++-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c    | 3 ++-
>   3 files changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> index b8ce43c28116..58d4c219178a 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> @@ -781,8 +781,10 @@ int amdgpu_debugfs_fence_init(struct amdgpu_device *adev)
>   {
>   #if defined(CONFIG_DEBUG_FS)
>       if (amdgpu_sriov_vf(adev))
> -             return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_fence_list_sriov, 1);
> -     return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_fence_list, 2);
> +             return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_fence_list_sriov,
> +                                             ARRAY_SIZE(amdgpu_debugfs_fence_list_sriov));
> +     return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_fence_list,
> +                                     ARRAY_SIZE(amdgpu_debugfs_fence_list));
>   #else
>       return 0;
>   #endif
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> index 77d988a0033f..8c64d8d6cb82 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
> @@ -928,7 +928,8 @@ static const struct drm_info_list amdgpu_debugfs_gem_list[] = {
>   int amdgpu_debugfs_gem_init(struct amdgpu_device *adev)
>   {
>   #if defined(CONFIG_DEBUG_FS)
> -     return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_gem_list, 1);
> +     return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_gem_list,
> +                                     ARRAY_SIZE(amdgpu_debugfs_gem_list));
>   #endif
>       return 0;
>   }
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
> index 4ffc32b78745..dcd492170598 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
> @@ -468,7 +468,8 @@ static const struct drm_info_list amdgpu_debugfs_sa_list[] = {
>   int amdgpu_debugfs_sa_init(struct amdgpu_device *adev)
>   {
>   #if defined(CONFIG_DEBUG_FS)
> -     return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_sa_list, 1);
> +     return amdgpu_debugfs_add_files(adev, amdgpu_debugfs_sa_list,
> +                                     ARRAY_SIZE(amdgpu_debugfs_sa_list));
>   #else
>       return 0;
>   #endif



More information about the amd-gfx mailing list