For 1,2,3,4 Reviewed-by: Dave Airlie <airlied@xxxxxxxxxx> should land those quicker, I'll dig a bit more into the others. Dave. On Mon, 26 Oct 2020 at 01:41, Christian König <ckoenig.leichtzumerken@xxxxxxxxx> wrote: > > Neither page allocation backend nor the driver should mess with that. > > Signed-off-by: Christian König <christian.koenig@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 2 -- > drivers/gpu/drm/nouveau/nouveau_bo.c | 1 - > drivers/gpu/drm/radeon/radeon_ttm.c | 2 -- > drivers/gpu/drm/ttm/ttm_page_alloc.c | 2 -- > drivers/gpu/drm/ttm/ttm_page_alloc_dma.c | 2 -- > drivers/gpu/drm/ttm/ttm_tt.c | 11 +++++++---- > include/drm/ttm/ttm_tt.h | 10 ---------- > 7 files changed, 7 insertions(+), 23 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > index 62f9194b1dd1..169468572930 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c > @@ -1363,7 +1363,6 @@ static int amdgpu_ttm_tt_populate(struct ttm_bo_device *bdev, > return -ENOMEM; > > ttm->page_flags |= TTM_PAGE_FLAG_SG; > - ttm_tt_set_populated(ttm); > return 0; > } > > @@ -1383,7 +1382,6 @@ static int amdgpu_ttm_tt_populate(struct ttm_bo_device *bdev, > drm_prime_sg_to_page_addr_arrays(ttm->sg, ttm->pages, > gtt->ttm.dma_address, > ttm->num_pages); > - ttm_tt_set_populated(ttm); > return 0; > } > > diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c > index acff82afe260..06a1f4c4e96e 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_bo.c > +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c > @@ -1321,7 +1321,6 @@ nouveau_ttm_tt_populate(struct ttm_bo_device *bdev, > /* make userspace faulting work */ > drm_prime_sg_to_page_addr_arrays(ttm->sg, ttm->pages, > ttm_dma->dma_address, ttm->num_pages); > - ttm_tt_set_populated(ttm); > return 0; > } > > diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c > index 321c09d20c6c..75fa2f55186b 100644 > --- a/drivers/gpu/drm/radeon/radeon_ttm.c > +++ b/drivers/gpu/drm/radeon/radeon_ttm.c > @@ -670,14 +670,12 @@ static int radeon_ttm_tt_populate(struct ttm_bo_device *bdev, > return -ENOMEM; > > ttm->page_flags |= TTM_PAGE_FLAG_SG; > - ttm_tt_set_populated(ttm); > return 0; > } > > if (slave && ttm->sg) { > drm_prime_sg_to_page_addr_arrays(ttm->sg, ttm->pages, > gtt->ttm.dma_address, ttm->num_pages); > - ttm_tt_set_populated(ttm); > return 0; > } > > diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc.c b/drivers/gpu/drm/ttm/ttm_page_alloc.c > index c8f6790962b9..04099dddce16 100644 > --- a/drivers/gpu/drm/ttm/ttm_page_alloc.c > +++ b/drivers/gpu/drm/ttm/ttm_page_alloc.c > @@ -1041,7 +1041,6 @@ ttm_pool_unpopulate_helper(struct ttm_tt *ttm, unsigned mem_count_update) > put_pages: > ttm_put_pages(ttm->pages, ttm->num_pages, ttm->page_flags, > ttm->caching); > - ttm_tt_set_unpopulated(ttm); > } > > int ttm_pool_populate(struct ttm_tt *ttm, struct ttm_operation_ctx *ctx) > @@ -1080,7 +1079,6 @@ int ttm_pool_populate(struct ttm_tt *ttm, struct ttm_operation_ctx *ctx) > } > } > > - ttm_tt_set_populated(ttm); > return 0; > } > EXPORT_SYMBOL(ttm_pool_populate); > diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c > index 6625b43f6256..85dad69419f6 100644 > --- a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c > +++ b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c > @@ -983,7 +983,6 @@ int ttm_dma_populate(struct ttm_dma_tt *ttm_dma, struct device *dev, > } > } > > - ttm_tt_set_populated(ttm); > return 0; > } > EXPORT_SYMBOL_GPL(ttm_dma_populate); > @@ -1077,7 +1076,6 @@ void ttm_dma_unpopulate(struct ttm_dma_tt *ttm_dma, struct device *dev) > /* shrink pool if necessary (only on !is_cached pools)*/ > if (npages) > ttm_dma_page_pool_free(pool, npages, false); > - ttm_tt_set_unpopulated(ttm); > } > EXPORT_SYMBOL_GPL(ttm_dma_unpopulate); > > diff --git a/drivers/gpu/drm/ttm/ttm_tt.c b/drivers/gpu/drm/ttm/ttm_tt.c > index 3e5dd6271d4c..beb1e878fed9 100644 > --- a/drivers/gpu/drm/ttm/ttm_tt.c > +++ b/drivers/gpu/drm/ttm/ttm_tt.c > @@ -138,7 +138,6 @@ static void ttm_tt_init_fields(struct ttm_tt *ttm, > ttm->num_pages = bo->num_pages; > ttm->caching = ttm_cached; > ttm->page_flags = page_flags; > - ttm_tt_set_unpopulated(ttm); > ttm->swap_storage = NULL; > ttm->sg = bo->sg; > ttm->caching = caching; > @@ -334,9 +333,12 @@ int ttm_tt_populate(struct ttm_bo_device *bdev, > ret = bdev->driver->ttm_tt_populate(bdev, ttm, ctx); > else > ret = ttm_pool_populate(ttm, ctx); > - if (!ret) > - ttm_tt_add_mapping(bdev, ttm); > - return ret; > + if (ret) > + return ret; > + > + ttm_tt_add_mapping(bdev, ttm); > + ttm->page_flags |= TTM_PAGE_FLAG_PRIV_POPULATED; > + return 0; > } > EXPORT_SYMBOL(ttm_tt_populate); > > @@ -365,4 +367,5 @@ void ttm_tt_unpopulate(struct ttm_bo_device *bdev, > bdev->driver->ttm_tt_unpopulate(bdev, ttm); > else > ttm_pool_unpopulate(ttm); > + ttm->page_flags &= ~TTM_PAGE_FLAG_PRIV_POPULATED; > } > diff --git a/include/drm/ttm/ttm_tt.h b/include/drm/ttm/ttm_tt.h > index e042dec5e6c1..e3e60c1da754 100644 > --- a/include/drm/ttm/ttm_tt.h > +++ b/include/drm/ttm/ttm_tt.h > @@ -72,16 +72,6 @@ static inline bool ttm_tt_is_populated(struct ttm_tt *tt) > return tt->page_flags & TTM_PAGE_FLAG_PRIV_POPULATED; > } > > -static inline void ttm_tt_set_unpopulated(struct ttm_tt *tt) > -{ > - tt->page_flags &= ~TTM_PAGE_FLAG_PRIV_POPULATED; > -} > - > -static inline void ttm_tt_set_populated(struct ttm_tt *tt) > -{ > - tt->page_flags |= TTM_PAGE_FLAG_PRIV_POPULATED; > -} > - > /** > * struct ttm_dma_tt > * > -- > 2.17.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel