diff options
author | Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> | 2021-11-23 10:12:03 +0100 |
---|---|---|
committer | Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> | 2021-11-24 08:48:40 +0100 |
commit | a5ac2c3e67bc9a9c8d3f440a0324ee2c5d49eb49 (patch) | |
tree | 6f606e8086647889d9e16e758b7d17cc39902169 /tests/i915/api_intel_bb.c | |
parent | 99f085f3a48d4df6eb971b48fff3023d960eb47d (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.c | 5 |
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); |