gem_bad_reloc: Don't flip-flop between SKIP and PASS
authorDamien Lespiau <damien.lespiau@intel.com>
Thu, 4 Dec 2014 13:42:12 +0000 (13:42 +0000)
committerDamien Lespiau <damien.lespiau@intel.com>
Thu, 4 Dec 2014 16:48:06 +0000 (16:48 +0000)
Here is a cheap way for this test to give consistent results. This
doesn't change the usefulness of this test, hopefully.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85270
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
tests/gem_bad_reloc.c

index cf1f2fa..36d8c09 100644 (file)
@@ -90,7 +90,15 @@ static int negative_reloc(int fd, unsigned flags)
        gem_close(fd, gem_exec[1].handle);
 
        igt_info("Found offset %ld for 4k batch\n", (long)gem_exec[0].offset);
-       igt_require(gem_exec[0].offset < BIAS);
+       /*
+        * Ideally we'd like to be able to control where the kernel is going to
+        * place the buffer. We don't SKIP here because it causes the test
+        * to "randomly" flip-flop between the SKIP and PASS states.
+        */
+       if (gem_exec[0].offset < BIAS) {
+               igt_info("Offset is below BIAS, not testing anything\n");
+               return 0;
+       }
 
        memset(gem_reloc, 0, sizeof(gem_reloc));
        for (i = 0; i < sizeof(gem_reloc)/sizeof(gem_reloc[0]); i++) {