On Wed, Oct 25, 2017 at 04:13:58PM +0100, Chris Wilson wrote: > If the system has bsd2, we do not know which ring the kernel will alias > I915_EXEC_BSD onto and so we do not what the matching string should be. > Skip the unknown. > > v2: Deny the aliased I915_EXEC_BSD exists at all; be specific! > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103324 > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > CC: Michał Winiarski <michal.winiarski@xxxxxxxxx> Reviewed-by: Michał Winiarski <michal.winiarski@xxxxxxxxx> -Michał > --- > tests/drv_hangman.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/tests/drv_hangman.c b/tests/drv_hangman.c > index 0551ec16..40c82257 100644 > --- a/tests/drv_hangman.c > +++ b/tests/drv_hangman.c > @@ -184,6 +184,7 @@ static void test_error_state_capture(unsigned ring_id, > uint64_t offset; > > igt_require(gem_has_ring(device, ring_id)); > + > clear_error_state(); > > hang = igt_hang_ctx(device, 0, ring_id, HANG_ALLOW_CAPTURE, &offset); > @@ -254,6 +255,20 @@ igt_main > if (e->exec_id == 0) > continue; > > + /* > + * If the device has 2 BSD rings then due to obtuse aliasing > + * in the API, we can not determine which ring I915_EXEC_BSD > + * will map to, and so must skip the test; as the matching name > + * may be either bsd or bsd2 depending on the kernel/test > + * ordering. > + * > + * Here we are not checking that executing on every ABI engine > + * results in a detectable hang, but that a hang generated > + * from a specific HW engine gives an indentifiable result. > + */ > + if (e->exec_id == I915_EXEC_BSD && e->flags == 0) > + continue; > + > igt_subtest_f("error-state-capture-%s", e->name) > test_error_state_capture(e->exec_id | e->flags, > e->full_name); > -- > 2.15.0.rc2 > _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx