* [PATCH] drm/ttm: nuke invalidate_caches callback
@ 2020-01-10 15:09 Christian König
2020-01-10 15:59 ` Thomas Hellström (VMware)
2020-01-13 14:45 ` Christian König
0 siblings, 2 replies; 4+ messages in thread
From: Christian König @ 2020-01-10 15:09 UTC (permalink / raw)
To: dri-devel
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);
--
2.17.1
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/ttm: nuke invalidate_caches callback
2020-01-10 15:09 [PATCH] drm/ttm: nuke invalidate_caches callback Christian König
@ 2020-01-10 15:59 ` Thomas Hellström (VMware)
2020-01-13 14:45 ` Christian König
1 sibling, 0 replies; 4+ messages in thread
From: Thomas Hellström (VMware) @ 2020-01-10 15:59 UTC (permalink / raw)
To: dri-devel
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
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/ttm: nuke invalidate_caches callback
2020-01-10 15:09 [PATCH] drm/ttm: nuke invalidate_caches callback Christian König
2020-01-10 15:59 ` Thomas Hellström (VMware)
@ 2020-01-13 14:45 ` Christian König
2020-01-13 15:45 ` Huang Rui
1 sibling, 1 reply; 4+ messages in thread
From: Christian König @ 2020-01-13 14:45 UTC (permalink / raw)
To: dri-devel; +Cc: Huang Rui
Ping? Just a trivial cleanup.
Am 10.01.20 um 16:09 schrieb Christian König:
> 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
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/ttm: nuke invalidate_caches callback
2020-01-13 14:45 ` Christian König
@ 2020-01-13 15:45 ` Huang Rui
0 siblings, 0 replies; 4+ messages in thread
From: Huang Rui @ 2020-01-13 15:45 UTC (permalink / raw)
To: Christian König; +Cc: dri-devel
On Mon, Jan 13, 2020 at 10:45:25PM +0800, Christian König wrote:
> Ping? Just a trivial cleanup.
>
> Am 10.01.20 um 16:09 schrieb Christian König:
> > Another completely unused feature.
> >
> > Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Huang Rui <ray.huang@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
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-01-13 15:46 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-10 15:09 [PATCH] drm/ttm: nuke invalidate_caches callback Christian König
2020-01-10 15:59 ` Thomas Hellström (VMware)
2020-01-13 14:45 ` Christian König
2020-01-13 15:45 ` Huang Rui
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.