On 11/13/25 17:05, Pierre-Eric Pelloux-Prayer wrote:
> This is the only use case for this function.
> 
> ---
> v2: amdgpu_ttm_clear_buffer instead of amdgpu_clear_buffer
> ---
> 
> Signed-off-by: Pierre-Eric Pelloux-Prayer <[email protected]>

Reviewed-by: Christian König <[email protected]>

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_object.c |  8 +++----
>  drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c    | 26 ++++++++++------------
>  drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h    | 15 ++++++-------
>  3 files changed, 23 insertions(+), 26 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
> index 4490b19752b8..4b9518097899 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
> @@ -725,8 +725,8 @@ int amdgpu_bo_create(struct amdgpu_device *adev,
>           bo->tbo.resource->mem_type == TTM_PL_VRAM) {
>               struct dma_fence *fence;
>  
> -             r = amdgpu_fill_buffer(NULL, bo, 0, NULL, &fence, NULL,
> -                                    true, 
> AMDGPU_KERNEL_JOB_ID_TTM_CLEAR_BUFFER);
> +             r = amdgpu_ttm_clear_buffer(NULL, bo, NULL, &fence, NULL,
> +                                         true, 
> AMDGPU_KERNEL_JOB_ID_TTM_CLEAR_BUFFER);
>               if (unlikely(r))
>                       goto fail_unreserve;
>  
> @@ -1324,8 +1324,8 @@ void amdgpu_bo_release_notify(struct ttm_buffer_object 
> *bo)
>       if (r)
>               goto out;
>  
> -     r = amdgpu_fill_buffer(NULL, abo, 0, &bo->base._resv, &fence, NULL,
> -                            false, AMDGPU_KERNEL_JOB_ID_CLEAR_ON_RELEASE);
> +     r = amdgpu_ttm_clear_buffer(NULL, abo, &bo->base._resv, &fence, NULL,
> +                                 false, 
> AMDGPU_KERNEL_JOB_ID_CLEAR_ON_RELEASE);
>       if (WARN_ON(r))
>               goto out;
>  
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> index df05768c3817..0a55bc4ea91f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> @@ -433,9 +433,9 @@ static int amdgpu_move_blit(struct ttm_buffer_object *bo,
>           (abo->flags & AMDGPU_GEM_CREATE_VRAM_WIPE_ON_RELEASE)) {
>               struct dma_fence *wipe_fence = NULL;
>  
> -             r = amdgpu_fill_buffer(entity,
> -                                    abo, 0, NULL, &wipe_fence, fence,
> -                                    false, AMDGPU_KERNEL_JOB_ID_MOVE_BLIT);
> +             r = amdgpu_ttm_clear_buffer(entity,
> +                                         abo, NULL, &wipe_fence, fence,
> +                                         false, 
> AMDGPU_KERNEL_JOB_ID_MOVE_BLIT);
>               if (r) {
>                       goto error;
>               } else if (wipe_fence) {
> @@ -2418,11 +2418,10 @@ static int amdgpu_ttm_fill_mem(struct amdgpu_ring 
> *ring,
>  }
>  
>  /**
> - * amdgpu_fill_buffer - fill a buffer with a given value
> + * amdgpu_ttm_clear_buffer - fill a buffer with 0
>   * @entity: optional entity to use. If NULL, the clearing entities will be
>   *          used to load-balance the partial clears
>   * @bo: the bo to fill
> - * @src_data: the value to set
>   * @resv: fences contained in this reservation will be used as dependencies.
>   * @out_fence: the fence from the last clear will be stored here. It might be
>   *             NULL if no job was run.
> @@ -2432,14 +2431,13 @@ static int amdgpu_ttm_fill_mem(struct amdgpu_ring 
> *ring,
>   * @k_job_id: trace id
>   *
>   */
> -int amdgpu_fill_buffer(struct amdgpu_ttm_buffer_entity *entity,
> -                    struct amdgpu_bo *bo,
> -                    uint32_t src_data,
> -                    struct dma_resv *resv,
> -                    struct dma_fence **out_fence,
> -                    struct dma_fence *dependency,
> -                    bool consider_clear_status,
> -                    u64 k_job_id)
> +int amdgpu_ttm_clear_buffer(struct amdgpu_ttm_buffer_entity *entity,
> +                         struct amdgpu_bo *bo,
> +                         struct dma_resv *resv,
> +                         struct dma_fence **out_fence,
> +                         struct dma_fence *dependency,
> +                         bool consider_clear_status,
> +                         u64 k_job_id)
>  {
>       struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev);
>       struct dma_fence *fence = NULL;
> @@ -2486,7 +2484,7 @@ int amdgpu_fill_buffer(struct amdgpu_ttm_buffer_entity 
> *entity,
>                       goto error;
>  
>               r = amdgpu_ttm_fill_mem(ring, &entity->base,
> -                                     src_data, to, cur_size, resv,
> +                                     0, to, cur_size, resv,
>                                       &next, true, k_job_id);
>               if (r)
>                       goto error;
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
> index e01c2173d79f..585aee9a173b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
> @@ -181,14 +181,13 @@ int amdgpu_copy_buffer(struct amdgpu_ring *ring,
>                      struct dma_resv *resv,
>                      struct dma_fence **fence,
>                      bool vm_needs_flush, uint32_t copy_flags);
> -int amdgpu_fill_buffer(struct amdgpu_ttm_buffer_entity *entity,
> -                    struct amdgpu_bo *bo,
> -                    uint32_t src_data,
> -                    struct dma_resv *resv,
> -                    struct dma_fence **out_fence,
> -                    struct dma_fence *dependency,
> -                    bool consider_clear_status,
> -                    u64 k_job_id);
> +int amdgpu_ttm_clear_buffer(struct amdgpu_ttm_buffer_entity *entity,
> +                         struct amdgpu_bo *bo,
> +                         struct dma_resv *resv,
> +                         struct dma_fence **out_fence,
> +                         struct dma_fence *dependency,
> +                         bool consider_clear_status,
> +                         u64 k_job_id);
>  
>  int amdgpu_ttm_alloc_gart(struct ttm_buffer_object *bo);
>  void amdgpu_ttm_recover_gart(struct ttm_buffer_object *tbo);

Reply via email to