[PATCH 2/2] drm/amdgpu: cleanup debugfs for amdgpu rings

Sharma, Shashank shashank.sharma at amd.com
Fri Sep 3 06:36:56 UTC 2021



On 9/2/2021 5:14 PM, Nirmoy Das wrote:
> Use debugfs_create_file_size API for creating ring debugfs
> file, also cleanup surrounding code.
> 
> Signed-off-by: Nirmoy Das <nirmoy.das at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c |  4 +---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c    | 16 +++++-----------
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h    |  8 +-------
>   3 files changed, 7 insertions(+), 21 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> index 077f9baf74fe..dee56ab19a8f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
> @@ -1734,9 +1734,7 @@ int amdgpu_debugfs_init(struct amdgpu_device *adev)
>   		if (!ring)
>   			continue;
>   
> -		if (amdgpu_debugfs_ring_init(adev, ring)) {
> -			DRM_ERROR("Failed to register debugfs file for rings !\n");
> -		}
> +		amdgpu_debugfs_ring_init(adev, ring);
>   	}
>   
>   	amdgpu_ras_debugfs_create_all(adev);
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> index f40753e1a60d..968521d80514 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> @@ -415,26 +415,20 @@ static const struct file_operations amdgpu_debugfs_ring_fops = {
>   
>   #endif
>   
> -int amdgpu_debugfs_ring_init(struct amdgpu_device *adev,
> +void amdgpu_debugfs_ring_init(struct amdgpu_device *adev,
>   			     struct amdgpu_ring *ring)
>   {
>   #if defined(CONFIG_DEBUG_FS)
>   	struct drm_minor *minor = adev_to_drm(adev)->primary;
> -	struct dentry *ent, *root = minor->debugfs_root;
> +	struct dentry *root = minor->debugfs_root;
>   	char name[32];
>   
>   	sprintf(name, "amdgpu_ring_%s", ring->name);
>   
> -	ent = debugfs_create_file(name,
> -				  S_IFREG | S_IRUGO, root,
> -				  ring, &amdgpu_debugfs_ring_fops);
> -	if (IS_ERR(ent))
> -		return -ENOMEM;

Why are we doing this ? Why to make it void from int ?

- Shashank


> -
> -	i_size_write(ent->d_inode, ring->ring_size + 12);
> -	ring->ent = ent;
> +	debugfs_create_file_size(name, S_IFREG | S_IRUGO, root, ring,
> +				 &amdgpu_debugfs_ring_fops,
> +				 ring->ring_size + 12);
>   #endif
> -	return 0;
>   }
>   
>   /**
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
> index 88d80eb3fea1..c29fbce0a5b4 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
> @@ -253,10 +253,6 @@ struct amdgpu_ring {
>   	bool			has_compute_vm_bug;
>   	bool			no_scheduler;
>   	int			hw_prio;
> -
> -#if defined(CONFIG_DEBUG_FS)
> -	struct dentry *ent;
> -#endif
>   };
>   
>   #define amdgpu_ring_parse_cs(r, p, ib) ((r)->funcs->parse_cs((p), (ib)))
> @@ -356,8 +352,6 @@ static inline void amdgpu_ring_write_multiple(struct amdgpu_ring *ring,
>   
>   int amdgpu_ring_test_helper(struct amdgpu_ring *ring);
>   
> -int amdgpu_debugfs_ring_init(struct amdgpu_device *adev,
> +void amdgpu_debugfs_ring_init(struct amdgpu_device *adev,
>   			     struct amdgpu_ring *ring);
> -void amdgpu_debugfs_ring_fini(struct amdgpu_ring *ring);
> -
>   #endif
> 


More information about the amd-gfx mailing list