summaryrefslogtreecommitdiff
path: root/tests/i915/gem_exec_balancer.c
diff options
context:
space:
mode:
authorAntonio Argenziano <antonio.argenziano@intel.com>2020-02-10 13:00:16 -0800
committerAntonio Argenziano <antonio.argenziano@intel.com>2020-02-12 10:54:23 -0800
commitae42fedfd0c536c560e8e17b06d9c7b94a4e8f0c (patch)
treeaa07768d804009dea79e4ab2daab57bc4ca83062 /tests/i915/gem_exec_balancer.c
parent00a64098aaae2ac3154841d76c7b034165380282 (diff)
tests/i915/gem_exec_balancer: Skip the test if no perf engines are available
Require that the test can access perf engines files. This patch also fixes the error check for perf_i915_open(). v2: - Skip based on valid perf type ID. (Chris) Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'tests/i915/gem_exec_balancer.c')
-rw-r--r--tests/i915/gem_exec_balancer.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/tests/i915/gem_exec_balancer.c b/tests/i915/gem_exec_balancer.c
index 150eba0d..f51be339 100644
--- a/tests/i915/gem_exec_balancer.c
+++ b/tests/i915/gem_exec_balancer.c
@@ -61,7 +61,7 @@ static bool has_class_instance(int i915, uint16_t class, uint16_t instance)
int fd;
fd = perf_i915_open(i915, I915_PMU_ENGINE_BUSY(class, instance));
- if (fd != -1) {
+ if (fd >= 0) {
close(fd);
return true;
}
@@ -113,6 +113,11 @@ list_engines(int i915, uint32_t class_mask, unsigned int *out)
return engines;
}
+static bool has_perf_engines(int i915)
+{
+ return i915_perf_type_id(i915);
+}
+
static int __set_engines(int i915, uint32_t ctx,
const struct i915_engine_class_instance *ci,
unsigned int count)
@@ -1818,6 +1823,7 @@ igt_main
gem_require_contexts(i915);
igt_require(has_context_engines(i915));
igt_require(has_load_balancer(i915));
+ igt_require(has_perf_engines(i915));
igt_fork_hang_detector(i915);
}