On Fri, Jul 10, 2015 at 02:06:06PM +0100, [email protected] wrote:
> From: Tim Gore <[email protected]>
> 
> In function igt_set_stop_rings, the test
>   igt_assert_f(flags == 0 || current == 0, ..
> 
> will fail if we are trying to force a hang but the
> STOP_RINGS_ALLOW_BAN or STOP_RINGS_ALLOW_ERROR bit is set.
> With the introduction of per ring resets in the driver
> (in android) these bits do not get cleared to zero when
> an individual ring is reset. This causes subsequent
> attempt to cause a ring hang via this function to fail,
> leading to several igt tests failing (ie gem_reset_stats
> subtest ban-xxx etc).

Fix tdr to reset these instead?
-Daniel

> So, modify this test to look only at the bits that are
> used to hang the gpu rings.
> 
> Signed-off-by: Tim Gore <[email protected]>
> ---
>  lib/igt_gt.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/igt_gt.c b/lib/igt_gt.c
> index 8e5e076..12c56fa 100644
> --- a/lib/igt_gt.c
> +++ b/lib/igt_gt.c
> @@ -345,8 +345,8 @@ void igt_set_stop_rings(enum stop_ring_flags flags)
>                             STOP_RING_ALLOW_ERRORS)) == 0);
>  
>       current = igt_get_stop_rings();
> -     igt_assert_f(flags == 0 || current == 0,
> -                  "previous i915_ring_stop is still 0x%x\n", current);
> +     igt_assert_f( (flags & STOP_RING_ALL) == 0 || (current & STOP_RING_ALL) 
> == 0,
> +                          "previous i915_ring_stop is still 0x%x\n", 
> current);
>  
>       stop_rings_write(flags);
>       current = igt_get_stop_rings();
> -- 
> 1.9.1
> 
> _______________________________________________
> Intel-gfx mailing list
> [email protected]
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to