[PATCH 1/3] drm/xe: Remove extra dma_fence_put on xe_sync_entry_add_deps failure

Matthew Brost matthew.brost at intel.com
Tue Aug 20 16:02:58 UTC 2024


On Tue, Aug 20, 2024 at 02:32:28PM +0530, Himal Prasad Ghimiray wrote:
> drm_sched_job_add_dependency() drops references even in case of error,
> no need for caller to call dma_fence_put.
> 

Good catch.

Reviewed-by: Matthew Brost <matthew.brost at intel.com>

> Signed-off-by: Himal Prasad Ghimiray <himal.prasad.ghimiray at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_sync.c | 13 +++----------
>  1 file changed, 3 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_sync.c b/drivers/gpu/drm/xe/xe_sync.c
> index ca826aeb41ea..a0675f57a398 100644
> --- a/drivers/gpu/drm/xe/xe_sync.c
> +++ b/drivers/gpu/drm/xe/xe_sync.c
> @@ -206,16 +206,9 @@ int xe_sync_entry_parse(struct xe_device *xe, struct xe_file *xef,
>  
>  int xe_sync_entry_add_deps(struct xe_sync_entry *sync, struct xe_sched_job *job)
>  {
> -	int err;
> -
> -	if (sync->fence) {
> -		err = drm_sched_job_add_dependency(&job->drm,
> -						   dma_fence_get(sync->fence));
> -		if (err) {
> -			dma_fence_put(sync->fence);
> -			return err;
> -		}
> -	}
> +	if (sync->fence)
> +		return  drm_sched_job_add_dependency(&job->drm,
> +						     dma_fence_get(sync->fence));
>  
>  	return 0;
>  }
> -- 
> 2.34.1
> 


More information about the Intel-xe mailing list