mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	drm/amdgpu: free resources on fence usage query
Free the resources if the fence needs to be ignored during the ratio calculation Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: David M Nieto <david.nieto@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Link: https://patchwork.freedesktop.org/patch/msgid/20210513174539.27409-1-david.nieto@amd.com
This commit is contained in:
		
							parent
							
								
									0ff9bf9f3e
								
							
						
					
					
						commit
						a7f0849682
					
				
					 1 changed files with 6 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -669,11 +669,15 @@ void amdgpu_ctx_fence_time(struct amdgpu_ctx *ctx, struct amdgpu_ctx_entity *cen
 | 
			
		|||
		if (!fence)
 | 
			
		||||
			continue;
 | 
			
		||||
		s_fence = to_drm_sched_fence(fence);
 | 
			
		||||
		if (!dma_fence_is_signaled(&s_fence->scheduled))
 | 
			
		||||
		if (!dma_fence_is_signaled(&s_fence->scheduled)) {
 | 
			
		||||
			dma_fence_put(fence);
 | 
			
		||||
			continue;
 | 
			
		||||
		}
 | 
			
		||||
		t1 = s_fence->scheduled.timestamp;
 | 
			
		||||
		if (t1 >= now)
 | 
			
		||||
		if (!ktime_before(t1, now)) {
 | 
			
		||||
			dma_fence_put(fence);
 | 
			
		||||
			continue;
 | 
			
		||||
		}
 | 
			
		||||
		if (dma_fence_is_signaled(&s_fence->finished) &&
 | 
			
		||||
			s_fence->finished.timestamp < now)
 | 
			
		||||
			*total += ktime_sub(s_fence->finished.timestamp, t1);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue