summaryrefslogtreecommitdiff
path: root/tests/i915/gem_exec_alignment.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2020-04-08 08:46:54 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2020-04-08 08:55:35 +0100
commit13cf98c409f05fe43de9e43cbb5b7fd2274667fd (patch)
treec792782ee2f54d18b4eb877379cea503edb9b0bb /tests/i915/gem_exec_alignment.c
parent609bba036e4d3419a6a96e395c38009d27bbe67c (diff)
i915/gem_exec_alignment: Tweak naughty client generation
The goal is to create just enough of a workload that will run long enough to delay others and be detectable. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Diffstat (limited to 'tests/i915/gem_exec_alignment.c')
-rw-r--r--tests/i915/gem_exec_alignment.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/tests/i915/gem_exec_alignment.c b/tests/i915/gem_exec_alignment.c
index 77d28297..b4ffab03 100644
--- a/tests/i915/gem_exec_alignment.c
+++ b/tests/i915/gem_exec_alignment.c
@@ -175,14 +175,14 @@ static void naughty_child(int i915, int link, uint32_t shared)
obj[i].alignment = 8192;
execbuf.buffer_count = 2;
- while (igt_seconds_elapsed(&tv) < 2) {
+ while (igt_seconds_elapsed(&tv) < 4) {
gem_execbuf(i915, &execbuf);
- if (execbuf.buffer_count >= count)
- break;
execbuf.buffer_count <<= 1;
+ if (execbuf.buffer_count > count) {
+ execbuf.buffer_count = count;
+ break;
+ }
}
- if (execbuf.buffer_count >= count)
- execbuf.buffer_count = count;
igt_debug("Using %u buffers to delay execbuf\n", execbuf.buffer_count);
for (unsigned long i = 0; i < count; i++)
@@ -196,7 +196,7 @@ static void naughty_child(int i915, int link, uint32_t shared)
err = __execbuf(i915, &execbuf); /* this should take over 2s */
igt_info("Naughty client took %'"PRIu64"ns, result %d\n",
igt_nsec_elapsed(&tv), err);
- igt_assert(igt_nsec_elapsed(&tv) > NSEC_PER_SEC);
+ igt_assert(igt_nsec_elapsed(&tv) > NSEC_PER_SEC / 2 || err == -EINTR);
gem_context_destroy(i915, execbuf.rsvd1);
for (unsigned long i = !!shared; i < count; i++)