[igt-dev] [PATCH i-g-t] tests/api_intel_bb: Use alignment only when kernel support it
Zbigniew Kempczyński
zbigniew.kempczynski at intel.com
Tue Nov 23 09:12:03 UTC 2021
Test uses intel-bb api so we're responsible to pass valid alignment
or 0 when it is not supported by the kernel. Add appropriate check
to avoid failing on such kernels.
Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
Cc: Petri Latvala <petri.latvala at intel.com>
Cc: Ashutosh Dixit <ashutosh.dixit at intel.com>
---
tests/i915/api_intel_bb.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tests/i915/api_intel_bb.c b/tests/i915/api_intel_bb.c
index 82943a341..5c996f644 100644
--- a/tests/i915/api_intel_bb.c
+++ b/tests/i915/api_intel_bb.c
@@ -469,6 +469,7 @@ static void object_reloc(struct buf_ops *bops, enum obj_cache_ops cache_op)
uint64_t flags = 0;
uint64_t shift = cache_op == PURGE_CACHE ? 0x2000 : 0x0;
bool purge_cache = cache_op == PURGE_CACHE ? true : false;
+ uint64_t alignment = gem_allows_obj_alignment(i915) ? 0x2000 : 0x0;
ibb = intel_bb_create_with_relocs(i915, PAGE_SIZE);
if (debug_bb)
@@ -490,7 +491,7 @@ static void object_reloc(struct buf_ops *bops, enum obj_cache_ops cache_op)
igt_assert(poff_h2 == INTEL_BUF_INVALID_ADDRESS);
intel_bb_add_object(ibb, h1, PAGE_SIZE, poff_h1, 0, true);
- intel_bb_add_object(ibb, h2, PAGE_SIZE, poff_h2, 0x2000, true);
+ intel_bb_add_object(ibb, h2, PAGE_SIZE, poff_h2, alignment, true);
/*
* Objects were added to bb, we expect initial addresses are zeroed
@@ -516,7 +517,7 @@ static void object_reloc(struct buf_ops *bops, enum obj_cache_ops cache_op)
if (purge_cache) {
intel_bb_add_object(ibb, h1, PAGE_SIZE, poff2_h1, 0, true);
- intel_bb_add_object(ibb, h2, PAGE_SIZE, poff2_h2 + shift, 0x2000, true);
+ intel_bb_add_object(ibb, h2, PAGE_SIZE, poff2_h2 + shift, alignment, true);
}
poff_bb = intel_bb_get_object_offset(ibb, ibb->handle);
--
2.26.0
More information about the igt-dev
mailing list