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.