igt/gem_exec_whisper: Prevent MI_STORE_DWORD on gen6/bsd again

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
Chris Wilson 2016-03-21 11:00:52 +00:00
parent c19b049d9c
commit 3b22b89dd8

View File

@ -94,12 +94,17 @@ static int __gem_context_create(int fd, uint32_t *ctx_id)
return ret; return ret;
} }
static bool can_mi_store_dword(int gen, unsigned engine)
{
return !(gen == 6 && (engine & ~(3<<13)) == I915_EXEC_BSD);
}
static bool ignore_engine(int gen, unsigned engine) static bool ignore_engine(int gen, unsigned engine)
{ {
if (engine == 0) if (engine == 0)
return true; return true;
if (gen == 6 && (engine & ~(3<<13)) == I915_EXEC_BSD) if (!can_mi_store_dword(gen, engine))
return true; return true;
return false; return false;
@ -135,6 +140,7 @@ static void whisper(int fd, unsigned engine, unsigned flags)
} }
} else { } else {
igt_require(gem_has_ring(fd, engine)); igt_require(gem_has_ring(fd, engine));
igt_require(can_mi_store_dword(fd, engine));
engines[nengine++] = engine; engines[nengine++] = engine;
} }
igt_require(nengine); igt_require(nengine);