Эх сурвалжийг харах

drm/ttm: move unlocking out of ttm_bo_cleanup_memtype_use

Needed for the next patch and makes the code quite a bit easier to
understand.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-and-Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Christian König 7 жил өмнө
parent
commit
a376b0cedb

+ 2 - 2
drivers/gpu/drm/ttm/ttm_bo.c

@@ -390,8 +390,6 @@ static void ttm_bo_cleanup_memtype_use(struct ttm_buffer_object *bo)
 	ttm_tt_destroy(bo->ttm);
 	ttm_tt_destroy(bo->ttm);
 	bo->ttm = NULL;
 	bo->ttm = NULL;
 	ttm_bo_mem_put(bo, &bo->mem);
 	ttm_bo_mem_put(bo, &bo->mem);
-
-	ww_mutex_unlock (&bo->resv->lock);
 }
 }
 
 
 static int ttm_bo_individualize_resv(struct ttm_buffer_object *bo)
 static int ttm_bo_individualize_resv(struct ttm_buffer_object *bo)
@@ -457,6 +455,7 @@ static void ttm_bo_cleanup_refs_or_queue(struct ttm_buffer_object *bo)
 				reservation_object_unlock(&bo->ttm_resv);
 				reservation_object_unlock(&bo->ttm_resv);
 
 
 			ttm_bo_cleanup_memtype_use(bo);
 			ttm_bo_cleanup_memtype_use(bo);
+			reservation_object_unlock(bo->resv);
 			return;
 			return;
 		}
 		}
 
 
@@ -559,6 +558,7 @@ static int ttm_bo_cleanup_refs_and_unlock(struct ttm_buffer_object *bo,
 
 
 	spin_unlock(&glob->lru_lock);
 	spin_unlock(&glob->lru_lock);
 	ttm_bo_cleanup_memtype_use(bo);
 	ttm_bo_cleanup_memtype_use(bo);
+	reservation_object_unlock(bo->resv);
 
 
 	return 0;
 	return 0;
 }
 }