summaryrefslogtreecommitdiff
path: root/tests/perf_pmu.c
diff options
context:
space:
mode:
authorTvrtko Ursulin <tvrtko.ursulin@intel.com>2018-03-29 10:11:28 +0100
committerTvrtko Ursulin <tvrtko.ursulin@intel.com>2018-03-29 17:03:14 +0100
commitd3cec95b5ef68728e3b993b3560288cf1a2c14a0 (patch)
tree4cb3126c1e23b0201d20e7e2c018b78090a49253 /tests/perf_pmu.c
parent2cbd4ddf11b3eaf01f33d8bc2ad46411ec6c299a (diff)
tests/perf_pmu: Fix usage of for_each_engine_class_instance
Wrong file descriptor was passed to the iterator. This had currently no effect, since it wasn't used in the macro, but needs to be fixed. At the same time make the macro consistent by checking for engine presence like the other iterators do. Added __for_each_engine_class_instance which does not check for engine presence and so is useful for enumerating all possible engines - like for instance for subtest enumeration. And another 'wrong fd used' fixlet in the render node subtests. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reported-by: Michel Thierry <michel.thierry@intel.com> Cc: Michel Thierry <michel.thierry@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Michel Thierry <michel.thierry@intel.com>
Diffstat (limited to 'tests/perf_pmu.c')
-rw-r--r--tests/perf_pmu.c30
1 files changed, 10 insertions, 20 deletions
diff --git a/tests/perf_pmu.c b/tests/perf_pmu.c
index b59af818..2273ddb9 100644
--- a/tests/perf_pmu.c
+++ b/tests/perf_pmu.c
@@ -434,10 +434,8 @@ busy_check_all(int gem_fd, const struct intel_execution_engine2 *e,
i = 0;
fd[0] = -1;
- for_each_engine_class_instance(fd, e_) {
- if (!gem_has_engine(gem_fd, e_->class, e_->instance))
- continue;
- else if (e == e_)
+ for_each_engine_class_instance(gem_fd, e_) {
+ if (e == e_)
busy_idx = i;
fd[i++] = open_group(I915_PMU_ENGINE_BUSY(e_->class,
@@ -499,10 +497,7 @@ most_busy_check_all(int gem_fd, const struct intel_execution_engine2 *e,
unsigned int idle_idx, i;
i = 0;
- for_each_engine_class_instance(fd, e_) {
- if (!gem_has_engine(gem_fd, e_->class, e_->instance))
- continue;
-
+ for_each_engine_class_instance(gem_fd, e_) {
if (e == e_)
idle_idx = i;
else if (spin)
@@ -559,10 +554,7 @@ all_busy_check_all(int gem_fd, const unsigned int num_engines,
unsigned int i;
i = 0;
- for_each_engine_class_instance(fd, e) {
- if (!gem_has_engine(gem_fd, e->class, e->instance))
- continue;
-
+ for_each_engine_class_instance(gem_fd, e) {
if (spin)
__submit_spin_batch(gem_fd, spin, e, 64);
else
@@ -1677,10 +1669,8 @@ igt_main
igt_require_gem(fd);
igt_require(i915_type_id() > 0);
- for_each_engine_class_instance(fd, e) {
- if (gem_has_engine(fd, e->class, e->instance))
- num_engines++;
- }
+ for_each_engine_class_instance(fd, e)
+ num_engines++;
}
/**
@@ -1689,7 +1679,7 @@ igt_main
igt_subtest("invalid-init")
invalid_init();
- for_each_engine_class_instance(fd, e) {
+ __for_each_engine_class_instance(fd, e) {
const unsigned int pct[] = { 2, 50, 98 };
/**
@@ -1888,7 +1878,7 @@ igt_main
gem_quiescent_gpu(fd);
}
- for_each_engine_class_instance(fd, e) {
+ __for_each_engine_class_instance(render_fd, e) {
igt_subtest_group {
igt_fixture {
gem_require_engine(render_fd,
@@ -1897,10 +1887,10 @@ igt_main
}
igt_subtest_f("render-node-busy-%s", e->name)
- single(fd, e, TEST_BUSY);
+ single(render_fd, e, TEST_BUSY);
igt_subtest_f("render-node-busy-idle-%s",
e->name)
- single(fd, e,
+ single(render_fd, e,
TEST_BUSY | TEST_TRAILING_IDLE);
}
}