summaryrefslogtreecommitdiff
path: root/tests/i915/gem_exec_reloc.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2020-01-29 22:22:49 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2020-01-29 22:32:22 +0000
commit153d26aeceea32c357eac080dfecc0320951562e (patch)
treed34f405b2d36f888738411d049451ffe82faf944 /tests/i915/gem_exec_reloc.c
parentadd505d102f5d27e38cb4d926524664e161c2a1a (diff)
i915/gem_exec_reloc: Add SIGINT injection
Do a pass over gem_exec_reloc where we inject lots of SIGINTs. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Antonio Argenziano <antonio.argenziano@intel.com> Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
Diffstat (limited to 'tests/i915/gem_exec_reloc.c')
-rw-r--r--tests/i915/gem_exec_reloc.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/tests/i915/gem_exec_reloc.c b/tests/i915/gem_exec_reloc.c
index bc904a0a..1aa03fba 100644
--- a/tests/i915/gem_exec_reloc.c
+++ b/tests/i915/gem_exec_reloc.c
@@ -379,7 +379,8 @@ static bool has_64b_reloc(int fd)
#define NORELOC 1
#define ACTIVE 2
-#define HANG 4
+#define INTERRUPTIBLE 4
+#define HANG 8
static void basic_reloc(int fd, unsigned before, unsigned after, unsigned flags)
{
#define OBJSZ 8192
@@ -735,6 +736,7 @@ igt_main
{ "", 0 , true},
{ "-noreloc", NORELOC, true },
{ "-active", ACTIVE, true },
+ { "-interruptible", ACTIVE | INTERRUPTIBLE },
{ "-hang", ACTIVE | HANG },
{ },
}, *f;
@@ -762,14 +764,17 @@ igt_main
f->name) {
if ((m->before | m->after) & I915_GEM_DOMAIN_WC)
igt_require(gem_mmap__has_wc(fd));
- basic_reloc(fd, m->before, m->after, f->flags);
+ igt_while_interruptible(f->flags & INTERRUPTIBLE)
+ basic_reloc(fd, m->before, m->after, f->flags);
}
}
if (!(f->flags & NORELOC)) {
igt_subtest_f("%srange%s",
- f->basic ? "basic-" : "", f->name)
- basic_range(fd, f->flags);
+ f->basic ? "basic-" : "", f->name) {
+ igt_while_interruptible(f->flags & INTERRUPTIBLE)
+ basic_range(fd, f->flags);
+ }
}
igt_fixture {