[PATCH 1/4] drm/amdgpu: cleanup struct amdgpu_ring

Christian König christian.koenig at amd.com
Mon Feb 1 16:13:39 UTC 2021


Am 01.02.21 um 16:51 schrieb Nirmoy Das:
> This patch consist of below related changes:
>
> 1 Rename ring->priority to ring->hw_prio.
> 2 Assign correct hardware ring priority.
> 3 Remove ring->priority_mutex as ring priority remains unchanged
>    after initialization.
> 4 Remove unused ring->num_jobs.
>
> v3: remove ring->num_jobs.
> v2: remove ring->priority_mutex.
>
> Fixes: 33abcb1f5a17 ("drm/amdgpu: set compute queue priority at mqd_init")
> Signed-off-by: Nirmoy Das <nirmoy.das at amd.com>

Reviewed-by: Christian König <christian.koenig at amd.com> for patch #1, #3 
and #4.

Maybe ping Alex for an rb on patch #2.

Christian.

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 8 ++------
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h | 6 +-----
>   2 files changed, 3 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> index 1a612f51ecd9..b644c78475fd 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> @@ -166,7 +166,7 @@ int amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring,
>   		     unsigned int max_dw, struct amdgpu_irq_src *irq_src,
>   		     unsigned int irq_type, unsigned int hw_prio)
>   {
> -	int r, i;
> +	int r;
>   	int sched_hw_submission = amdgpu_sched_hw_submission;
>   	u32 *num_sched;
>   	u32 hw_ip;
> @@ -258,8 +258,7 @@ int amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring,
>   	}
>   
>   	ring->max_dw = max_dw;
> -	ring->priority = DRM_SCHED_PRIORITY_NORMAL;
> -	mutex_init(&ring->priority_mutex);
> +	ring->hw_prio = hw_prio;
>   
>   	if (!ring->no_scheduler) {
>   		hw_ip = ring->funcs->type;
> @@ -268,9 +267,6 @@ int amdgpu_ring_init(struct amdgpu_device *adev, struct amdgpu_ring *ring,
>   			&ring->sched;
>   	}
>   
> -	for (i = DRM_SCHED_PRIORITY_MIN; i < DRM_SCHED_PRIORITY_COUNT; ++i)
> -		atomic_set(&ring->num_jobs[i], 0);
> -
>   	return 0;
>   }
>   
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
> index 7112137689db..2ada80ce42f5 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
> @@ -242,11 +242,7 @@ struct amdgpu_ring {
>   	struct dma_fence	*vmid_wait;
>   	bool			has_compute_vm_bug;
>   	bool			no_scheduler;
> -
> -	atomic_t		num_jobs[DRM_SCHED_PRIORITY_COUNT];
> -	struct mutex		priority_mutex;
> -	/* protected by priority_mutex */
> -	int			priority;
> +	int			hw_prio;
>   
>   #if defined(CONFIG_DEBUG_FS)
>   	struct dentry *ent;



More information about the amd-gfx mailing list