All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Thomas Hellström (VMware)" <thomas_os@shipmail.org>
To: dri-devel@lists.freedesktop.org
Subject: Re: [PATCH] drm/ttm: nuke invalidate_caches callback
Date: Fri, 10 Jan 2020 16:59:27 +0100	[thread overview]
Message-ID: <c5bc7924-e977-b308-4b4e-7113eb4c897a@shipmail.org> (raw)
In-Reply-To: <20200110150954.95958-1-christian.koenig@amd.com>


Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>

IIRC this was used by the old i915 implementation.

/Thomas

On 1/10/20 4:09 PM, Christian König wrote:
> Another completely unused feature.
>
> Signed-off-by: Christian König <christian.koenig@amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c    |  6 ------
>   drivers/gpu/drm/nouveau/nouveau_bo.c       |  8 --------
>   drivers/gpu/drm/qxl/qxl_ttm.c              |  6 ------
>   drivers/gpu/drm/radeon/radeon_ttm.c        |  6 ------
>   drivers/gpu/drm/ttm/ttm_bo.c               |  9 +--------
>   drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c |  6 ------
>   include/drm/ttm/ttm_bo_driver.h            | 15 ---------------
>   7 files changed, 1 insertion(+), 55 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> index 445de594c214..7c4b1cbd9a50 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
> @@ -68,11 +68,6 @@ static int amdgpu_map_buffer(struct ttm_buffer_object *bo,
>   static int amdgpu_ttm_debugfs_init(struct amdgpu_device *adev);
>   static void amdgpu_ttm_debugfs_fini(struct amdgpu_device *adev);
>   
> -static int amdgpu_invalidate_caches(struct ttm_bo_device *bdev, uint32_t flags)
> -{
> -	return 0;
> -}
> -
>   /**
>    * amdgpu_init_mem_type - Initialize a memory manager for a specific type of
>    * memory request.
> @@ -1637,7 +1632,6 @@ static struct ttm_bo_driver amdgpu_bo_driver = {
>   	.ttm_tt_create = &amdgpu_ttm_tt_create,
>   	.ttm_tt_populate = &amdgpu_ttm_tt_populate,
>   	.ttm_tt_unpopulate = &amdgpu_ttm_tt_unpopulate,
> -	.invalidate_caches = &amdgpu_invalidate_caches,
>   	.init_mem_type = &amdgpu_init_mem_type,
>   	.eviction_valuable = amdgpu_ttm_bo_eviction_valuable,
>   	.evict_flags = &amdgpu_evict_flags,
> diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c
> index f8015e0318d7..81668104595f 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_bo.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c
> @@ -646,13 +646,6 @@ nouveau_ttm_tt_create(struct ttm_buffer_object *bo, uint32_t page_flags)
>   	return nouveau_sgdma_create_ttm(bo, page_flags);
>   }
>   
> -static int
> -nouveau_bo_invalidate_caches(struct ttm_bo_device *bdev, uint32_t flags)
> -{
> -	/* We'll do this from user space. */
> -	return 0;
> -}
> -
>   static int
>   nouveau_bo_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>   			 struct ttm_mem_type_manager *man)
> @@ -1696,7 +1689,6 @@ struct ttm_bo_driver nouveau_bo_driver = {
>   	.ttm_tt_create = &nouveau_ttm_tt_create,
>   	.ttm_tt_populate = &nouveau_ttm_tt_populate,
>   	.ttm_tt_unpopulate = &nouveau_ttm_tt_unpopulate,
> -	.invalidate_caches = nouveau_bo_invalidate_caches,
>   	.init_mem_type = nouveau_bo_init_mem_type,
>   	.eviction_valuable = ttm_bo_eviction_valuable,
>   	.evict_flags = nouveau_bo_evict_flags,
> diff --git a/drivers/gpu/drm/qxl/qxl_ttm.c b/drivers/gpu/drm/qxl/qxl_ttm.c
> index 16a5e903533d..62a5e424971b 100644
> --- a/drivers/gpu/drm/qxl/qxl_ttm.c
> +++ b/drivers/gpu/drm/qxl/qxl_ttm.c
> @@ -48,11 +48,6 @@ static struct qxl_device *qxl_get_qdev(struct ttm_bo_device *bdev)
>   	return qdev;
>   }
>   
> -static int qxl_invalidate_caches(struct ttm_bo_device *bdev, uint32_t flags)
> -{
> -	return 0;
> -}
> -
>   static int qxl_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>   			     struct ttm_mem_type_manager *man)
>   {
> @@ -256,7 +251,6 @@ static void qxl_bo_move_notify(struct ttm_buffer_object *bo,
>   
>   static struct ttm_bo_driver qxl_bo_driver = {
>   	.ttm_tt_create = &qxl_ttm_tt_create,
> -	.invalidate_caches = &qxl_invalidate_caches,
>   	.init_mem_type = &qxl_init_mem_type,
>   	.eviction_valuable = ttm_bo_eviction_valuable,
>   	.evict_flags = &qxl_evict_flags,
> diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c
> index f4af67035673..40282bf0adbe 100644
> --- a/drivers/gpu/drm/radeon/radeon_ttm.c
> +++ b/drivers/gpu/drm/radeon/radeon_ttm.c
> @@ -66,11 +66,6 @@ static struct radeon_device *radeon_get_rdev(struct ttm_bo_device *bdev)
>   	return rdev;
>   }
>   
> -static int radeon_invalidate_caches(struct ttm_bo_device *bdev, uint32_t flags)
> -{
> -	return 0;
> -}
> -
>   static int radeon_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>   				struct ttm_mem_type_manager *man)
>   {
> @@ -774,7 +769,6 @@ static struct ttm_bo_driver radeon_bo_driver = {
>   	.ttm_tt_create = &radeon_ttm_tt_create,
>   	.ttm_tt_populate = &radeon_ttm_tt_populate,
>   	.ttm_tt_unpopulate = &radeon_ttm_tt_unpopulate,
> -	.invalidate_caches = &radeon_invalidate_caches,
>   	.init_mem_type = &radeon_init_mem_type,
>   	.eviction_valuable = ttm_bo_eviction_valuable,
>   	.evict_flags = &radeon_evict_flags,
> diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c
> index 5df596fb0280..06f6d650827f 100644
> --- a/drivers/gpu/drm/ttm/ttm_bo.c
> +++ b/drivers/gpu/drm/ttm/ttm_bo.c
> @@ -372,14 +372,7 @@ static int ttm_bo_handle_move_mem(struct ttm_buffer_object *bo,
>   	}
>   
>   moved:
> -	if (bo->evicted) {
> -		if (bdev->driver->invalidate_caches) {
> -			ret = bdev->driver->invalidate_caches(bdev, bo->mem.placement);
> -			if (ret)
> -				pr_err("Can not flush read caches\n");
> -		}
> -		bo->evicted = false;
> -	}
> +	bo->evicted = false;
>   
>   	if (bo->mem.mm_node)
>   		bo->offset = (bo->mem.start << PAGE_SHIFT) +
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
> index d8ea3dd10af0..3f3b2c7a208a 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
> @@ -736,11 +736,6 @@ static struct ttm_tt *vmw_ttm_tt_create(struct ttm_buffer_object *bo,
>   	return NULL;
>   }
>   
> -static int vmw_invalidate_caches(struct ttm_bo_device *bdev, uint32_t flags)
> -{
> -	return 0;
> -}
> -
>   static int vmw_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>   		      struct ttm_mem_type_manager *man)
>   {
> @@ -866,7 +861,6 @@ struct ttm_bo_driver vmw_bo_driver = {
>   	.ttm_tt_create = &vmw_ttm_tt_create,
>   	.ttm_tt_populate = &vmw_ttm_populate,
>   	.ttm_tt_unpopulate = &vmw_ttm_unpopulate,
> -	.invalidate_caches = vmw_invalidate_caches,
>   	.init_mem_type = vmw_init_mem_type,
>   	.eviction_valuable = ttm_bo_eviction_valuable,
>   	.evict_flags = vmw_evict_flags,
> diff --git a/include/drm/ttm/ttm_bo_driver.h b/include/drm/ttm/ttm_bo_driver.h
> index cac7a8a0825a..c9e0fd09f4b2 100644
> --- a/include/drm/ttm/ttm_bo_driver.h
> +++ b/include/drm/ttm/ttm_bo_driver.h
> @@ -210,8 +210,6 @@ struct ttm_mem_type_manager {
>    * struct ttm_bo_driver
>    *
>    * @create_ttm_backend_entry: Callback to create a struct ttm_backend.
> - * @invalidate_caches: Callback to invalidate read caches when a buffer object
> - * has been evicted.
>    * @init_mem_type: Callback to initialize a struct ttm_mem_type_manager
>    * structure.
>    * @evict_flags: Callback to obtain placement flags when a buffer is evicted.
> @@ -256,19 +254,6 @@ struct ttm_bo_driver {
>   	 */
>   	void (*ttm_tt_unpopulate)(struct ttm_tt *ttm);
>   
> -	/**
> -	 * struct ttm_bo_driver member invalidate_caches
> -	 *
> -	 * @bdev: the buffer object device.
> -	 * @flags: new placement of the rebound buffer object.
> -	 *
> -	 * A previosly evicted buffer has been rebound in a
> -	 * potentially new location. Tell the driver that it might
> -	 * consider invalidating read (texture) caches on the next command
> -	 * submission as a consequence.
> -	 */
> -
> -	int (*invalidate_caches)(struct ttm_bo_device *bdev, uint32_t flags);
>   	int (*init_mem_type)(struct ttm_bo_device *bdev, uint32_t type,
>   			     struct ttm_mem_type_manager *man);
>   


_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2020-01-10 15:59 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-10 15:09 [PATCH] drm/ttm: nuke invalidate_caches callback Christian König
2020-01-10 15:59 ` Thomas Hellström (VMware) [this message]
2020-01-13 14:45 ` Christian König
2020-01-13 15:45   ` Huang Rui

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c5bc7924-e977-b308-4b4e-7113eb4c897a@shipmail.org \
    --to=thomas_os@shipmail.org \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.