tests/gem_ctx_exec.c: only hang the ring we are testing

In the reset-pin-leak test we were calling
igt_set_stop_rings(STOP_RING_DEFAULTS) which sets the
stop_rings bits for all gpu engines. But we only submit
work to the render engine. When TDR is enabled (as it is
in Android currently) only the render engine gets reset,
which clears the stop_rings bit for the render engine but
not for the other engines. This causes the test to fail on
the second iteration because stop_rings is not clear.

So just set the stop_rings bit for the engine we are going
to hang, namely the render engine.

Signed-off-by: Tim Gore <tim.gore@intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
This commit is contained in:
Tim Gore 2015-08-19 12:10:16 +01:00 committed by Thomas Wood
parent 71b85f9713
commit d3d56bf2af

View File

@ -204,7 +204,7 @@ igt_main
* the last context is leaked at every reset.
*/
for (i = 0; i < 20; i++) {
igt_set_stop_rings(STOP_RING_DEFAULTS);
igt_set_stop_rings(igt_to_stop_ring_flag(I915_EXEC_RENDER));
igt_assert(exec(fd, handle, I915_EXEC_RENDER, 0) == 0);
igt_assert(exec(fd, handle, I915_EXEC_RENDER, ctx_id) == 0);
gem_sync(fd, handle);