[PATCH 02/45] drm/ttm: handle the SYSTEM->TT path in same place as others.
Christian König
christian.koenig at amd.com
Thu Sep 24 10:24:22 UTC 2020
Am 24.09.20 um 07:18 schrieb Dave Airlie:
> From: Dave Airlie <airlied at redhat.com>
>
> This just consolidates the code making the flow easier to understand
> and also helps when moving move to the driver side.
>
> Signed-off-by: Dave Airlie <airlied at redhat.com>
> ---
> drivers/gpu/drm/ttm/ttm_bo.c | 17 +++++++----------
> 1 file changed, 7 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c
> index c342bfc2b4c1..6d1520255fc1 100644
> --- a/drivers/gpu/drm/ttm/ttm_bo.c
> +++ b/drivers/gpu/drm/ttm/ttm_bo.c
> @@ -265,20 +265,18 @@ static int ttm_bo_handle_move_mem(struct ttm_buffer_object *bo,
> if (ret)
> goto out_err;
> }
> -
> - if (bo->mem.mem_type == TTM_PL_SYSTEM) {
> - if (bdev->driver->move_notify)
> - bdev->driver->move_notify(bo, evict, mem);
> - bo->mem = *mem;
> - goto moved;
> - }
> }
>
> if (bdev->driver->move_notify)
> bdev->driver->move_notify(bo, evict, mem);
>
> - if (old_man->use_tt && new_man->use_tt)
> - ret = ttm_bo_move_ttm(bo, ctx, mem);
> + if (old_man->use_tt && new_man->use_tt) {
> + if (bo->mem.mem_type == TTM_PL_SYSTEM) {
> + ttm_bo_assign_mem(bo, mem);
> + ret = 0;
> + } else
> + ret = ttm_bo_move_ttm(bo, ctx, mem);
> + }
> else if (bdev->driver->move)
This should then use "} else if (...) {", apart from that the patch is
Reviewed-by: Christian König <christian.koenig at amd.com>.
Christian.
> ret = bdev->driver->move(bo, evict, ctx, mem);
> else
> @@ -294,7 +292,6 @@ static int ttm_bo_handle_move_mem(struct ttm_buffer_object *bo,
> goto out_err;
> }
>
> -moved:
> ctx->bytes_moved += bo->num_pages << PAGE_SHIFT;
> return 0;
>
More information about the dri-devel
mailing list