diff options
author | Christian König <christian.koenig@amd.com> | 2020-10-19 18:56:45 +0200 |
---|---|---|
committer | Christian König <christian.koenig@amd.com> | 2020-10-26 14:45:20 +0100 |
commit | 05f8d25097050241d55c19a67c2a7bc7bbc428a9 (patch) | |
tree | 84ec84f1987bf22b1e81850453caeebe7f5f8dd1 /drivers/gpu | |
parent | d1cb1f254a5b1c07788eecb84b443d59ccdfb9e0 (diff) | |
download | linux-05f8d25097050241d55c19a67c2a7bc7bbc428a9.tar.gz linux-05f8d25097050241d55c19a67c2a7bc7bbc428a9.tar.bz2 linux-05f8d25097050241d55c19a67c2a7bc7bbc428a9.zip |
drm/ttm: move swapin out of page alloc backend
This is not related to allocating the backing store in any way.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Link: https://patchwork.freedesktop.org/patch/396947/
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/ttm/ttm_page_alloc.c | 8 | ||||
-rw-r--r-- | drivers/gpu/drm/ttm/ttm_page_alloc_dma.c | 8 | ||||
-rw-r--r-- | drivers/gpu/drm/ttm/ttm_tt.c | 8 |
3 files changed, 8 insertions, 16 deletions
diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc.c b/drivers/gpu/drm/ttm/ttm_page_alloc.c index 04099dddce16..661b75d19cad 100644 --- a/drivers/gpu/drm/ttm/ttm_page_alloc.c +++ b/drivers/gpu/drm/ttm/ttm_page_alloc.c @@ -1071,14 +1071,6 @@ int ttm_pool_populate(struct ttm_tt *ttm, struct ttm_operation_ctx *ctx) } } - if (unlikely(ttm->page_flags & TTM_PAGE_FLAG_SWAPPED)) { - ret = ttm_tt_swapin(ttm); - if (unlikely(ret != 0)) { - ttm_pool_unpopulate(ttm); - return ret; - } - } - 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 85dad69419f6..a9aaed7e618a 100644 --- a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c +++ b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c @@ -975,14 +975,6 @@ skip_huge: --num_pages; } - if (unlikely(ttm->page_flags & TTM_PAGE_FLAG_SWAPPED)) { - ret = ttm_tt_swapin(ttm); - if (unlikely(ret != 0)) { - ttm_dma_unpopulate(ttm_dma, dev); - return ret; - } - } - return 0; } EXPORT_SYMBOL_GPL(ttm_dma_populate); diff --git a/drivers/gpu/drm/ttm/ttm_tt.c b/drivers/gpu/drm/ttm/ttm_tt.c index beb1e878fed9..dc1dad982f28 100644 --- a/drivers/gpu/drm/ttm/ttm_tt.c +++ b/drivers/gpu/drm/ttm/ttm_tt.c @@ -338,6 +338,14 @@ int ttm_tt_populate(struct ttm_bo_device *bdev, ttm_tt_add_mapping(bdev, ttm); ttm->page_flags |= TTM_PAGE_FLAG_PRIV_POPULATED; + if (unlikely(ttm->page_flags & TTM_PAGE_FLAG_SWAPPED)) { + ret = ttm_tt_swapin(ttm); + if (unlikely(ret != 0)) { + ttm_tt_unpopulate(bdev, ttm); + return ret; + } + } + return 0; } EXPORT_SYMBOL(ttm_tt_populate); |