[PATCH v3 1/5] drm/ttm: add helper structures for bulk moves on lru list

Christian König christian.koenig at amd.com
Mon Aug 13 10:16:40 UTC 2018


Am 13.08.2018 um 11:58 schrieb Huang Rui:
> From: Christian König <christian.koenig at amd.com>
>
> Add bulk move pos to store the pointer of first and last buffer object.
> The list in between will be bulk moved on lru list.
>
> Signed-off-by: Christian König <christian.koenig at amd.com>
> Signed-off-by: Huang Rui <ray.huang at amd.com>
> Tested-by: Mike Lothian <mike at fireburn.co.uk>

If you ask me that looks like it should work now, but I'm prepossessed 
because I helped creating this.

Alex, David or Jerry can somebody else take a look as well?

Thanks,
Christian.

> ---
>   include/drm/ttm/ttm_bo_driver.h | 28 ++++++++++++++++++++++++++++
>   1 file changed, 28 insertions(+)
>
> diff --git a/include/drm/ttm/ttm_bo_driver.h b/include/drm/ttm/ttm_bo_driver.h
> index 3234cc3..e4fee8e 100644
> --- a/include/drm/ttm/ttm_bo_driver.h
> +++ b/include/drm/ttm/ttm_bo_driver.h
> @@ -491,6 +491,34 @@ struct ttm_bo_device {
>   };
>   
>   /**
> + * struct ttm_lru_bulk_move_pos
> + *
> + * @first: first BO in the bulk move range
> + * @last: last BO in the bulk move range
> + *
> + * Positions for a lru bulk move.
> + */
> +struct ttm_lru_bulk_move_pos {
> +	struct ttm_buffer_object *first;
> +	struct ttm_buffer_object *last;
> +};
> +
> +/**
> + * struct ttm_lru_bulk_move
> + *
> + * @tt: first/last lru entry for BOs in the TT domain
> + * @vram: first/last lru entry for BOs in the VRAM domain
> + * @swap: first/last lru entry for BOs on the swap list
> + *
> + * Helper structure for bulk moves on the LRU list.
> + */
> +struct ttm_lru_bulk_move {
> +	struct ttm_lru_bulk_move_pos tt[TTM_MAX_BO_PRIORITY];
> +	struct ttm_lru_bulk_move_pos vram[TTM_MAX_BO_PRIORITY];
> +	struct ttm_lru_bulk_move_pos swap[TTM_MAX_BO_PRIORITY];
> +};
> +
> +/**
>    * ttm_flag_masked
>    *
>    * @old: Pointer to the result and original value.



More information about the amd-gfx mailing list