summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2016-05-19 11:35:14 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2016-05-19 11:46:16 +0100
commita1b0ed1dc48ea209b2a3a07a2d24245ad2cd1948 (patch)
tree294bdb20e634c91acb475aacbebd0fbd93f0e04d /tests
parent4dc4ebf3ee5445e0888c6a793961b7840a6d5dd8 (diff)
igt/gem_exec_flush: Exclude -before- subtests from BAT
The *-before-* tests were designed to detect a potential issue with long speculative prefetches that would load the map[] before we have even called execbuf(). As CPUs get smarter and able to look ahead further we are starting to see failures and as we know the code is deliberately buggy exclude the tests from BAT. (I want to keep the tests in the full suite so that we can record which processors are affected, and look for related issues.) Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95378 References: https://bugs.freedesktop.org/show_bug.cgi?id=95488 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'tests')
-rw-r--r--tests/gem_exec_flush.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/tests/gem_exec_flush.c b/tests/gem_exec_flush.c
index 38ff5903..d08b843a 100644
--- a/tests/gem_exec_flush.c
+++ b/tests/gem_exec_flush.c
@@ -36,6 +36,7 @@ IGT_TEST_DESCRIPTION("Basic check of flushing after batches");
#define BEFORE 32
#define INTERRUPTIBLE 64
#define CMDPARSER 128
+#define BASIC 256
static void run(int fd, unsigned ring, int nchild, int timeout,
unsigned flags)
@@ -496,13 +497,13 @@ igt_main
const char *name;
unsigned flags;
} modes[] = {
- { "ro", 0 },
- { "rw", WRITE },
+ { "ro", BASIC },
+ { "rw", BASIC | WRITE },
{ "ro-before", BEFORE },
{ "rw-before", BEFORE | WRITE },
- { "pro", KERNEL },
- { "prw", KERNEL | WRITE },
- { "set", SET_DOMAIN | WRITE },
+ { "pro", BASIC | KERNEL },
+ { "prw", BASIC | KERNEL | WRITE },
+ { "set", BASIC | SET_DOMAIN | WRITE },
{ NULL }
};
int gen = -1;
@@ -551,7 +552,7 @@ igt_main
for (const struct mode *m = modes; m->name; m++) {
igt_subtest_f("%suc-%s-%s",
- e->exec_id == 0 ? "basic-" : "",
+ (m->flags & BASIC && e->exec_id == 0) ? "basic-" : "",
m->name,
e->name)
run(fd, ring, ncpus, timeout,