[PATCH i-g-t v2 5/8] tests/intel: replace intel_buf_init_using_handle()
Matthew Auld
matthew.auld at intel.com
Tue Feb 13 10:01:22 UTC 2024
Require the original object size, if the caller created the object and
convert all existing users over.
v2:(Zbigniew)
- Remove old intel_buf_init_using_handle() prototype and assert size.
Signed-off-by: Matthew Auld <matthew.auld at intel.com>
Cc: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
---
lib/intel_bufops.c | 18 +++++++++++-------
lib/intel_bufops.h | 19 ++++++++-----------
tests/intel/gem_set_tiling_vs_blt.c | 7 ++++---
3 files changed, 23 insertions(+), 21 deletions(-)
diff --git a/lib/intel_bufops.c b/lib/intel_bufops.c
index fa7dc4de6..10e2d3dac 100644
--- a/lib/intel_bufops.c
+++ b/lib/intel_bufops.c
@@ -1011,7 +1011,7 @@ void intel_buf_close(struct buf_ops *bops, struct intel_buf *buf)
}
/**
- * intel_buf_init_using_handle
+ * intel_buf_init_using_handle_and_size
* @bops: pointer to buf_ops
* @handle: BO handle created by the caller
* @buf: pointer to intel_buf structure to be filled
@@ -1021,6 +1021,7 @@ void intel_buf_close(struct buf_ops *bops, struct intel_buf *buf)
* @alignment: alignment of the stride for linear surfaces
* @tiling: surface tiling
* @compression: surface compression type
+ * @size: real bo size
*
* Function configures BO handle within intel_buf structure passed by the caller
* (with all its metadata - width, height, ...). Useful if BO was created
@@ -1029,14 +1030,17 @@ void intel_buf_close(struct buf_ops *bops, struct intel_buf *buf)
* Note: intel_buf_close() can be used because intel_buf is aware it is not
* buffer owner so it won't close it underneath.
*/
-void intel_buf_init_using_handle(struct buf_ops *bops,
- uint32_t handle,
- struct intel_buf *buf,
- int width, int height, int bpp, int alignment,
- uint32_t req_tiling, uint32_t compression)
+void intel_buf_init_using_handle_and_size(struct buf_ops *bops,
+ uint32_t handle,
+ struct intel_buf *buf,
+ int width, int height, int bpp, int alignment,
+ uint32_t req_tiling, uint32_t compression,
+ uint64_t size)
{
+ igt_assert(handle);
+ igt_assert(size);
__intel_buf_init(bops, handle, buf, width, height, bpp, alignment,
- req_tiling, compression, 0, 0, -1, DEFAULT_PAT_INDEX);
+ req_tiling, compression, size, 0, -1, DEFAULT_PAT_INDEX);
}
/**
diff --git a/lib/intel_bufops.h b/lib/intel_bufops.h
index 54a143c5b..0b68482b2 100644
--- a/lib/intel_bufops.h
+++ b/lib/intel_bufops.h
@@ -150,11 +150,6 @@ void intel_buf_init_in_region(struct buf_ops *bops,
uint64_t region);
void intel_buf_close(struct buf_ops *bops, struct intel_buf *buf);
-void intel_buf_init_using_handle(struct buf_ops *bops,
- uint32_t handle,
- struct intel_buf *buf,
- int width, int height, int bpp, int alignment,
- uint32_t req_tiling, uint32_t compression);
void intel_buf_init_full(struct buf_ops *bops,
uint32_t handle,
struct intel_buf *buf,
@@ -172,12 +167,14 @@ struct intel_buf *intel_buf_create(struct buf_ops *bops,
int bpp, int alignment,
uint32_t req_tiling, uint32_t compression);
-struct intel_buf *intel_buf_create_using_handle(struct buf_ops *bops,
- uint32_t handle,
- int width, int height,
- int bpp, int alignment,
- uint32_t req_tiling,
- uint32_t compression);
+void intel_buf_init_using_handle_and_size(struct buf_ops *bops,
+ uint32_t handle,
+ struct intel_buf *buf,
+ int width, int height,
+ int bpp, int alignment,
+ uint32_t req_tiling,
+ uint32_t compression,
+ uint64_t size);
struct intel_buf *intel_buf_create_using_handle_and_size(struct buf_ops *bops,
uint32_t handle,
diff --git a/tests/intel/gem_set_tiling_vs_blt.c b/tests/intel/gem_set_tiling_vs_blt.c
index e9d5e3c63..9077e0f3f 100644
--- a/tests/intel/gem_set_tiling_vs_blt.c
+++ b/tests/intel/gem_set_tiling_vs_blt.c
@@ -138,9 +138,10 @@ static void do_test(struct buf_ops *bops, uint32_t tiling, unsigned stride,
gem_munmap(ptr, TEST_SIZE);
/* Reuse previously aligned in the gtt object */
- intel_buf_init_using_handle(bops, test_buf->handle, test_buf,
- TEST_WIDTH(stride), TEST_HEIGHT(stride), 32,
- 0, tiling, I915_COMPRESSION_NONE);
+ intel_buf_init_using_handle_and_size(bops, test_buf->handle, test_buf,
+ TEST_WIDTH(stride), TEST_HEIGHT(stride), 32,
+ 0, tiling, I915_COMPRESSION_NONE,
+ test_buf->bo_size);
igt_assert_eq_u32(intel_buf_size(test_buf), TEST_SIZE);
intel_buf_set_ownership(test_buf, true);
intel_bb_add_intel_buf(ibb, test_buf, false);
--
2.43.0
More information about the igt-dev
mailing list