From 08dea7674533cfd49764bcd09ba84de7143361ab Mon Sep 17 00:00:00 2001 From: Matt Roper Date: Thu, 1 Jun 2023 14:52:27 -0700 Subject: drm/xe: Move migration from GT to tile Migration primarily focuses on the memory associated with a tile, so it makes more sense to track this at the tile level (especially since the driver was already skipping migration operations on media GTs). Note that the blitter engine used to perform the migration always lives in the tile's primary GT today. In theory that could change if media GTs ever start including blitter engines in the future, but we can extend the design if/when that happens in the future. v2: - Fix kunit test build - Kerneldoc parameter name update v3: - Removed leftover prototype for removed function. (Gustavo) - Remove unrelated / unwanted error handling change. (Gustavo) Cc: Gustavo Sousa Reviewed-by: Lucas De Marchi Acked-by: Gustavo Sousa Link: https://lore.kernel.org/r/20230601215244.678611-15-matthew.d.roper@intel.com Signed-off-by: Matt Roper Signed-off-by: Rodrigo Vivi --- drivers/gpu/drm/xe/xe_bo_evict.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'drivers/gpu/drm/xe/xe_bo_evict.c') diff --git a/drivers/gpu/drm/xe/xe_bo_evict.c b/drivers/gpu/drm/xe/xe_bo_evict.c index 9226195bd560..f559a7f3eb3e 100644 --- a/drivers/gpu/drm/xe/xe_bo_evict.c +++ b/drivers/gpu/drm/xe/xe_bo_evict.c @@ -8,7 +8,7 @@ #include "xe_bo.h" #include "xe_device.h" #include "xe_ggtt.h" -#include "xe_gt.h" +#include "xe_tile.h" /** * xe_bo_evict_all - evict all BOs from VRAM @@ -29,7 +29,7 @@ int xe_bo_evict_all(struct xe_device *xe) struct ttm_device *bdev = &xe->ttm; struct ww_acquire_ctx ww; struct xe_bo *bo; - struct xe_gt *gt; + struct xe_tile *tile; struct list_head still_in_list; u32 mem_type; u8 id; @@ -83,8 +83,8 @@ int xe_bo_evict_all(struct xe_device *xe) * Wait for all user BO to be evicted as those evictions depend on the * memory moved below. */ - for_each_gt(gt, xe, id) - xe_gt_migrate_wait(gt); + for_each_tile(tile, xe, id) + xe_tile_migrate_wait(tile); spin_lock(&xe->pinned.lock); for (;;) { @@ -186,7 +186,7 @@ int xe_bo_restore_user(struct xe_device *xe) { struct ww_acquire_ctx ww; struct xe_bo *bo; - struct xe_gt *gt; + struct xe_tile *tile; struct list_head still_in_list; u8 id; int ret; @@ -224,8 +224,8 @@ int xe_bo_restore_user(struct xe_device *xe) spin_unlock(&xe->pinned.lock); /* Wait for validate to complete */ - for_each_gt(gt, xe, id) - xe_gt_migrate_wait(gt); + for_each_tile(tile, xe, id) + xe_tile_migrate_wait(tile); return 0; } -- cgit