diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3737-drm-ttm-drop-persistent_swap_storage-from-ttm_bo_ini.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3737-drm-ttm-drop-persistent_swap_storage-from-ttm_bo_ini.patch | 259 |
1 files changed, 259 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3737-drm-ttm-drop-persistent_swap_storage-from-ttm_bo_ini.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3737-drm-ttm-drop-persistent_swap_storage-from-ttm_bo_ini.patch new file mode 100644 index 00000000..90668d6e --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3737-drm-ttm-drop-persistent_swap_storage-from-ttm_bo_ini.patch @@ -0,0 +1,259 @@ +From 0ac21942d750e939898230bdddffd8afeda268e8 Mon Sep 17 00:00:00 2001 +From: Christian Koenig <christian.koenig@amd.com> +Date: Thu, 22 Feb 2018 15:52:31 +0100 +Subject: [PATCH 3737/4131] drm/ttm: drop persistent_swap_storage from + ttm_bo_init and co +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Never used as parameter, the only driver actually using this is nouveau +and there it is initialized after the BO is initialized. + +Signed-off-by: Christian König <christian.koenig@amd.com> +Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/ast/ast_ttm.c | 2 +- + drivers/gpu/drm/bochs/bochs_mm.c | 2 +- + drivers/gpu/drm/cirrus/cirrus_ttm.c | 2 +- + drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c | 2 +- + drivers/gpu/drm/mgag200/mgag200_ttm.c | 2 +- + drivers/gpu/drm/nouveau/nouveau_bo.c | 2 +- + drivers/gpu/drm/qxl/qxl_object.c | 2 +- + drivers/gpu/drm/radeon/radeon_object.c | 4 ++-- + drivers/gpu/drm/ttm/ttm_bo.c | 9 ++------- + drivers/gpu/drm/virtio/virtgpu_object.c | 2 +- + drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c | 2 +- + drivers/gpu/drm/vmwgfx/vmwgfx_mob.c | 5 ++--- + drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 4 ++-- + 13 files changed, 17 insertions(+), 23 deletions(-) + +diff --git a/drivers/gpu/drm/ast/ast_ttm.c b/drivers/gpu/drm/ast/ast_ttm.c +index 9733f47..10c36c9 100644 +--- a/drivers/gpu/drm/ast/ast_ttm.c ++++ b/drivers/gpu/drm/ast/ast_ttm.c +@@ -335,7 +335,7 @@ int ast_bo_create(struct drm_device *dev, int size, int align, + + ret = ttm_bo_init(&ast->ttm.bdev, &astbo->bo, size, + ttm_bo_type_device, &astbo->placement, +- align >> PAGE_SHIFT, false, NULL, acc_size, ++ align >> PAGE_SHIFT, false, acc_size, + NULL, NULL, ast_bo_ttm_destroy); + if (ret) + goto error; +diff --git a/drivers/gpu/drm/bochs/bochs_mm.c b/drivers/gpu/drm/bochs/bochs_mm.c +index e934b58..99a8814 100644 +--- a/drivers/gpu/drm/bochs/bochs_mm.c ++++ b/drivers/gpu/drm/bochs/bochs_mm.c +@@ -370,7 +370,7 @@ static int bochs_bo_create(struct drm_device *dev, int size, int align, + + ret = ttm_bo_init(&bochs->ttm.bdev, &bochsbo->bo, size, + ttm_bo_type_device, &bochsbo->placement, +- align >> PAGE_SHIFT, false, NULL, acc_size, ++ align >> PAGE_SHIFT, false, acc_size, + NULL, NULL, bochs_bo_ttm_destroy); + if (ret) + return ret; +diff --git a/drivers/gpu/drm/cirrus/cirrus_ttm.c b/drivers/gpu/drm/cirrus/cirrus_ttm.c +index d732086..b40e294 100644 +--- a/drivers/gpu/drm/cirrus/cirrus_ttm.c ++++ b/drivers/gpu/drm/cirrus/cirrus_ttm.c +@@ -342,7 +342,7 @@ int cirrus_bo_create(struct drm_device *dev, int size, int align, + + ret = ttm_bo_init(&cirrus->ttm.bdev, &cirrusbo->bo, size, + ttm_bo_type_device, &cirrusbo->placement, +- align >> PAGE_SHIFT, false, NULL, acc_size, ++ align >> PAGE_SHIFT, false, acc_size, + NULL, NULL, cirrus_bo_ttm_destroy); + if (ret) + return ret; +diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c +index f024349..a029b5d9 100644 +--- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c ++++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c +@@ -329,7 +329,7 @@ int hibmc_bo_create(struct drm_device *dev, int size, int align, + + ret = ttm_bo_init(&hibmc->bdev, &hibmcbo->bo, size, + ttm_bo_type_device, &hibmcbo->placement, +- align >> PAGE_SHIFT, false, NULL, acc_size, ++ align >> PAGE_SHIFT, false, acc_size, + NULL, NULL, hibmc_bo_ttm_destroy); + if (ret) { + hibmc_bo_unref(&hibmcbo); +diff --git a/drivers/gpu/drm/mgag200/mgag200_ttm.c b/drivers/gpu/drm/mgag200/mgag200_ttm.c +index 229366b..85e39c3 100644 +--- a/drivers/gpu/drm/mgag200/mgag200_ttm.c ++++ b/drivers/gpu/drm/mgag200/mgag200_ttm.c +@@ -338,7 +338,7 @@ int mgag200_bo_create(struct drm_device *dev, int size, int align, + + ret = ttm_bo_init(&mdev->ttm.bdev, &mgabo->bo, size, + ttm_bo_type_device, &mgabo->placement, +- align >> PAGE_SHIFT, false, NULL, acc_size, ++ align >> PAGE_SHIFT, false, acc_size, + NULL, NULL, mgag200_bo_ttm_destroy); + if (ret) + return ret; +diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c +index 05f1218..d25ccd4 100644 +--- a/drivers/gpu/drm/nouveau/nouveau_bo.c ++++ b/drivers/gpu/drm/nouveau/nouveau_bo.c +@@ -230,7 +230,7 @@ nouveau_bo_new(struct nouveau_cli *cli, u64 size, int align, + + ret = ttm_bo_init(&drm->ttm.bdev, &nvbo->bo, size, + type, &nvbo->placement, +- align >> PAGE_SHIFT, false, NULL, acc_size, sg, ++ align >> PAGE_SHIFT, false, acc_size, sg, + robj, nouveau_bo_del_ttm); + if (ret) { + /* ttm will call nouveau_bo_del_ttm if it fails.. */ +diff --git a/drivers/gpu/drm/qxl/qxl_object.c b/drivers/gpu/drm/qxl/qxl_object.c +index f6b80fe..af62824 100644 +--- a/drivers/gpu/drm/qxl/qxl_object.c ++++ b/drivers/gpu/drm/qxl/qxl_object.c +@@ -109,7 +109,7 @@ int qxl_bo_create(struct qxl_device *qdev, + qxl_ttm_placement_from_domain(bo, domain, pinned); + + r = ttm_bo_init(&qdev->mman.bdev, &bo->tbo, size, type, +- &bo->placement, 0, !kernel, NULL, size, ++ &bo->placement, 0, !kernel, size, + NULL, NULL, &qxl_ttm_bo_destroy); + if (unlikely(r != 0)) { + if (r != -ERESTARTSYS) +diff --git a/drivers/gpu/drm/radeon/radeon_object.c b/drivers/gpu/drm/radeon/radeon_object.c +index 5b6aecc..f4bbee0 100644 +--- a/drivers/gpu/drm/radeon/radeon_object.c ++++ b/drivers/gpu/drm/radeon/radeon_object.c +@@ -261,8 +261,8 @@ int radeon_bo_create(struct radeon_device *rdev, + /* Kernel allocation are uninterruptible */ + down_read(&rdev->pm.mclk_lock); + r = ttm_bo_init(&rdev->mman.bdev, &bo->tbo, size, type, +- &bo->placement, page_align, !kernel, NULL, +- acc_size, sg, resv, &radeon_ttm_bo_destroy); ++ &bo->placement, page_align, !kernel, acc_size, ++ sg, resv, &radeon_ttm_bo_destroy); + up_read(&rdev->pm.mclk_lock); + if (unlikely(r != 0)) { + return r; +diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c +index 6c1ef7a..cf3aef0 100644 +--- a/drivers/gpu/drm/ttm/ttm_bo.c ++++ b/drivers/gpu/drm/ttm/ttm_bo.c +@@ -1164,7 +1164,6 @@ int ttm_bo_init_reserved(struct ttm_bo_device *bdev, + struct ttm_placement *placement, + uint32_t page_alignment, + struct ttm_operation_ctx *ctx, +- struct file *persistent_swap_storage, + size_t acc_size, + struct sg_table *sg, + struct reservation_object *resv, +@@ -1218,7 +1217,6 @@ int ttm_bo_init_reserved(struct ttm_bo_device *bdev, + bo->mem.bus.io_reserved_count = 0; + bo->moving = NULL; + bo->mem.placement = (TTM_PL_FLAG_SYSTEM | TTM_PL_FLAG_CACHED); +- bo->persistent_swap_storage = persistent_swap_storage; + bo->acc_size = acc_size; + bo->sg = sg; + if (resv) { +@@ -1280,7 +1278,6 @@ int ttm_bo_init(struct ttm_bo_device *bdev, + struct ttm_placement *placement, + uint32_t page_alignment, + bool interruptible, +- struct file *persistent_swap_storage, + size_t acc_size, + struct sg_table *sg, + struct reservation_object *resv, +@@ -1290,8 +1287,7 @@ int ttm_bo_init(struct ttm_bo_device *bdev, + int ret; + + ret = ttm_bo_init_reserved(bdev, bo, size, type, placement, +- page_alignment, &ctx, +- persistent_swap_storage, acc_size, ++ page_alignment, &ctx, acc_size, + sg, resv, destroy); + if (ret) + return ret; +@@ -1337,7 +1333,6 @@ int ttm_bo_create(struct ttm_bo_device *bdev, + struct ttm_placement *placement, + uint32_t page_alignment, + bool interruptible, +- struct file *persistent_swap_storage, + struct ttm_buffer_object **p_bo) + { + struct ttm_buffer_object *bo; +@@ -1350,7 +1345,7 @@ int ttm_bo_create(struct ttm_bo_device *bdev, + + acc_size = ttm_bo_acc_size(bdev, size, sizeof(struct ttm_buffer_object)); + ret = ttm_bo_init(bdev, bo, size, type, placement, page_alignment, +- interruptible, persistent_swap_storage, acc_size, ++ interruptible, acc_size, + NULL, NULL, NULL); + if (likely(ret == 0)) + *p_bo = bo; +diff --git a/drivers/gpu/drm/virtio/virtgpu_object.c b/drivers/gpu/drm/virtio/virtgpu_object.c +index 0b90cdb..9f2f470 100644 +--- a/drivers/gpu/drm/virtio/virtgpu_object.c ++++ b/drivers/gpu/drm/virtio/virtgpu_object.c +@@ -89,7 +89,7 @@ int virtio_gpu_object_create(struct virtio_gpu_device *vgdev, + virtio_gpu_init_ttm_placement(bo, pinned); + + ret = ttm_bo_init(&vgdev->mman.bdev, &bo->tbo, size, type, +- &bo->placement, 0, !kernel, NULL, acc_size, ++ &bo->placement, 0, !kernel, acc_size, + NULL, NULL, &virtio_gpu_ttm_bo_destroy); + /* ttm_bo_init failure will call the destroy */ + if (ret != 0) +diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c b/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c +index c706ad3..f283324 100644 +--- a/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c ++++ b/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c +@@ -1245,7 +1245,7 @@ int vmw_cmdbuf_set_pool_size(struct vmw_cmdbuf_man *man, + return -ENOMEM; + + ret = ttm_bo_create(&dev_priv->bdev, size, ttm_bo_type_device, +- &vmw_mob_ne_placement, 0, false, NULL, ++ &vmw_mob_ne_placement, 0, false, + &man->cmd_space); + if (ret) + return ret; +diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c b/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c +index 736ca47..d07c585 100644 +--- a/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c ++++ b/drivers/gpu/drm/vmwgfx/vmwgfx_mob.c +@@ -260,8 +260,7 @@ static int vmw_otable_batch_setup(struct vmw_private *dev_priv, + ret = ttm_bo_create(&dev_priv->bdev, bo_size, + ttm_bo_type_device, + &vmw_sys_ne_placement, +- 0, false, NULL, +- &batch->otable_bo); ++ 0, false, &batch->otable_bo); + + if (unlikely(ret != 0)) + goto out_no_bo; +@@ -444,7 +443,7 @@ static int vmw_mob_pt_populate(struct vmw_private *dev_priv, + ret = ttm_bo_create(&dev_priv->bdev, mob->num_pages * PAGE_SIZE, + ttm_bo_type_device, + &vmw_sys_ne_placement, +- 0, false, NULL, &mob->pt_bo); ++ 0, false, &mob->pt_bo); + if (unlikely(ret != 0)) + return ret; + +diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c +index 200904f..9e10145 100644 +--- a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c ++++ b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c +@@ -384,8 +384,8 @@ int vmw_dmabuf_init(struct vmw_private *dev_priv, + + ret = ttm_bo_init(bdev, &vmw_bo->base, size, + ttm_bo_type_device, placement, +- 0, interruptible, +- NULL, acc_size, NULL, NULL, bo_free); ++ 0, interruptible, acc_size, ++ NULL, NULL, bo_free); + return ret; + } + +-- +2.7.4 + |