On Thu, Feb 11, 2021 at 8:17 AM Christian König ckoenig.leichtzumerken@gmail.com wrote:
Instead of swapping bo->mem just give old and new as parameters.
Also drop unused parameters and code.
Signed-off-by: Christian König christian.koenig@amd.com
drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 3 ++- drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 9 +++++--- drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 26 +++++++--------------- 3 files changed, 16 insertions(+), 22 deletions(-)
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h index e65b00f8336d..21a72fa7b9fd 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h @@ -775,7 +775,8 @@ extern void vmw_resource_unreserve(struct vmw_resource *res, struct vmw_buffer_object *new_backup, unsigned long new_backup_offset); extern void vmw_query_move_notify(struct ttm_buffer_object *bo,
struct ttm_resource *mem);
struct ttm_resource *old_mem,
struct ttm_resource *new_mem);
extern int vmw_query_readback_all(struct vmw_buffer_object *dx_query_mob); extern void vmw_resource_evict_all(struct vmw_private *dev_priv); extern void vmw_resource_unbind_list(struct vmw_buffer_object *vbo); diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c index c3a724e37104..35f02958ee2c 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c @@ -847,13 +847,15 @@ int vmw_query_readback_all(struct vmw_buffer_object *dx_query_mob)
- vmw_query_move_notify - Read back cached query states
- @bo: The TTM buffer object about to move.
- @mem: The memory region @bo is moving to.
- @old_mem: The memory region @bo is moving from.
*/
- @new_mem: The memory region @bo is moving to.
- Called before the query MOB is swapped out to read back cached query
- states from the device.
void vmw_query_move_notify(struct ttm_buffer_object *bo,
struct ttm_resource *mem)
struct ttm_resource *old_mem,
struct ttm_resource *new_mem)
{ struct vmw_buffer_object *dx_query_mob; struct ttm_device *bdev = bo->bdev; @@ -871,7 +873,8 @@ void vmw_query_move_notify(struct ttm_buffer_object *bo, }
/* If BO is being moved from MOB to system memory */
if (mem->mem_type == TTM_PL_SYSTEM && bo->mem.mem_type == VMW_PL_MOB) {
if (new_mem->mem_type == TTM_PL_SYSTEM &&
old_mem->mem_type == VMW_PL_MOB) { struct vmw_fence_obj *fence; (void) vmw_query_readback_all(dx_query_mob);
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c index 63f10c865061..38801462134e 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c @@ -692,20 +692,19 @@ static int vmw_ttm_io_mem_reserve(struct ttm_device *bdev, struct ttm_resource *
- @bo: The TTM buffer object about to move.
- @evict: Unused
Evict is removed now. Can be dropped from the documentation.
Alex
- @mem: The struct ttm_resource indicating to what memory
- @old_mem: The old memory where we move from
*/
- @new_mem: The struct ttm_resource indicating to what memory
region the move is taking place.
- Calls move_notify for all subsystems needing it.
- (currently only resources).
static void vmw_move_notify(struct ttm_buffer_object *bo,
bool evict,
struct ttm_resource *mem)
struct ttm_resource *old_mem,
struct ttm_resource *new_mem)
{
if (!mem)
return;
vmw_bo_move_notify(bo, mem);
vmw_query_move_notify(bo, mem);
vmw_bo_move_notify(bo, new_mem);
vmw_query_move_notify(bo, old_mem, new_mem);
}
@@ -736,7 +735,7 @@ static int vmw_move(struct ttm_buffer_object *bo, return ret; }
vmw_move_notify(bo, evict, new_mem);
vmw_move_notify(bo, &bo->mem, new_mem); if (old_man->use_tt && new_man->use_tt) { if (bo->mem.mem_type == TTM_PL_SYSTEM) {
@@ -758,18 +757,10 @@ static int vmw_move(struct ttm_buffer_object *bo, } return 0; fail:
swap(*new_mem, bo->mem);
vmw_move_notify(bo, false, new_mem);
swap(*new_mem, bo->mem);
vmw_move_notify(bo, new_mem, &bo->mem); return ret;
}
-static void -vmw_delete_mem_notify(struct ttm_buffer_object *bo) -{
vmw_move_notify(bo, false, NULL);
-}
struct ttm_device_funcs vmw_bo_driver = { .ttm_tt_create = &vmw_ttm_tt_create, .ttm_tt_populate = &vmw_ttm_populate, @@ -779,7 +770,6 @@ struct ttm_device_funcs vmw_bo_driver = { .evict_flags = vmw_evict_flags, .move = vmw_move, .verify_access = vmw_verify_access,
.delete_mem_notify = vmw_delete_mem_notify, .swap_notify = vmw_swap_notify, .io_mem_reserve = &vmw_ttm_io_mem_reserve,
};
2.25.1
dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel