aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/3737-drm-ttm-drop-persistent_swap_storage-from-ttm_bo_ini.patch
diff options
context:
space:
mode:
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.patch259
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
+