summaryrefslogtreecommitdiff
path: root/tests/i915/gem_caching.c
diff options
context:
space:
mode:
authorZbigniew Kempczyński <zbigniew.kempczynski@intel.com>2020-10-23 09:30:23 +0200
committerZbigniew Kempczyński <zbigniew.kempczynski@intel.com>2021-04-13 15:44:38 +0200
commitd059fd6a609bec4dd090b9b82c1aa470b35475ac (patch)
tree82098bb2a71a078b6635d797a425ebcab8cd8b4e /tests/i915/gem_caching.c
parent4552dc3fc3459c49ed0f398094cdf509852b1c42 (diff)
tests/gem|kms: Remove intel_bb from fixture
As intel_bb "opens" connection to allocator when test completes it can leave allocator in unknown state (mostly in failed tests). As igt_core was armed in resetting allocator infrastructure connection to it inside intel_bb is not valid anymore. Trying to use it leads to catastrofic errors. Migrate intel_bb out of fixture and create it inside tests individually. Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Dominik Grzegorzek <dominik.grzegorzek@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Petri Latvala <petri.latvala@intel.com>
Diffstat (limited to 'tests/i915/gem_caching.c')
-rw-r--r--tests/i915/gem_caching.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/tests/i915/gem_caching.c b/tests/i915/gem_caching.c
index bdaff68a..4e844952 100644
--- a/tests/i915/gem_caching.c
+++ b/tests/i915/gem_caching.c
@@ -158,7 +158,6 @@ igt_main
flags = 0;
}
data.bops = buf_ops_create(data.fd);
- ibb = intel_bb_create(data.fd, PAGE_SIZE);
scratch_buf = intel_buf_create(data.bops, BO_SIZE/4, 1,
32, 0, I915_TILING_NONE, 0);
@@ -174,6 +173,8 @@ igt_main
igt_info("checking partial reads\n");
+ ibb = intel_bb_create(data.fd, PAGE_SIZE);
+
for (i = 0; i < ROUNDS; i++) {
uint8_t val0 = i;
int start, len;
@@ -195,11 +196,15 @@ igt_main
igt_progress("partial reads test: ", i, ROUNDS);
}
+
+ intel_bb_destroy(ibb);
}
igt_subtest("writes") {
igt_require(flags & TEST_WRITE);
+ ibb = intel_bb_create(data.fd, PAGE_SIZE);
+
igt_info("checking partial writes\n");
for (i = 0; i < ROUNDS; i++) {
@@ -240,11 +245,15 @@ igt_main
igt_progress("partial writes test: ", i, ROUNDS);
}
+
+ intel_bb_destroy(ibb);
}
igt_subtest("read-writes") {
igt_require((flags & TEST_BOTH) == TEST_BOTH);
+ ibb = intel_bb_create(data.fd, PAGE_SIZE);
+
igt_info("checking partial writes after partial reads\n");
for (i = 0; i < ROUNDS; i++) {
@@ -307,10 +316,11 @@ igt_main
igt_progress("partial read/writes test: ", i, ROUNDS);
}
+
+ intel_bb_destroy(ibb);
}
igt_fixture {
- intel_bb_destroy(ibb);
intel_buf_destroy(scratch_buf);
intel_buf_destroy(staging_buf);
buf_ops_destroy(data.bops);