diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index 7b5ce00f0602..7af3041ccd0e 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c @@ -1220,10 +1220,13 @@ static int amdgpu_cs_sync_rings(struct amdgpu_cs_parser *p)  		 * next job actually sees the results from the previous one  		 * before we start executing on the same scheduler ring.  		 */ -		if (!s_fence || s_fence->sched != sched) +		if (!s_fence || s_fence->sched != sched) { +			dma_fence_put(fence);  			continue; +		}  		r = amdgpu_sync_fence(&p->gang_leader->explicit_sync, fence); +		dma_fence_put(fence);  		if (r)  			return r;  	}  | 
