summaryrefslogtreecommitdiff
path: root/tests/i915/api_intel_bb.c
diff options
context:
space:
mode:
authorZbigniew Kempczyński <zbigniew.kempczynski@intel.com>2021-11-23 10:12:03 +0100
committerZbigniew Kempczyński <zbigniew.kempczynski@intel.com>2021-11-24 08:48:40 +0100
commita5ac2c3e67bc9a9c8d3f440a0324ee2c5d49eb49 (patch)
tree6f606e8086647889d9e16e758b7d17cc39902169 /tests/i915/api_intel_bb.c
parent99f085f3a48d4df6eb971b48fff3023d960eb47d (diff)
tests/api_intel_bb: Use alignment only when kernel support it
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@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Ashutosh Dixit <ashutosh.dixit@intel.com> Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
Diffstat (limited to 'tests/i915/api_intel_bb.c')
-rw-r--r--tests/i915/api_intel_bb.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/tests/i915/api_intel_bb.c b/tests/i915/api_intel_bb.c
index 82943a34..5c996f64 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);