Hi Nirmoy, On Tue, Jan 24, 2023 at 03:22:12PM +0100, Nirmoy Das wrote: > From: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx> > > We want to idle all tiles when exiting selftests. > > Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx> > Signed-off-by: Nirmoy Das <nirmoy.das@xxxxxxxxx> Reviewed-by: Andi Shyti <andi.shyti@xxxxxxxxxxxxxxx> ... > --- > .../gpu/drm/i915/selftests/igt_flush_test.c | 28 +++++++++++-------- > 1 file changed, 17 insertions(+), 11 deletions(-) > > diff --git a/drivers/gpu/drm/i915/selftests/igt_flush_test.c b/drivers/gpu/drm/i915/selftests/igt_flush_test.c > index b484e12df417..29110abb4fe0 100644 > --- a/drivers/gpu/drm/i915/selftests/igt_flush_test.c > +++ b/drivers/gpu/drm/i915/selftests/igt_flush_test.c > @@ -14,21 +14,27 @@ > > int igt_flush_test(struct drm_i915_private *i915) > { > - struct intel_gt *gt = to_gt(i915); > - int ret = intel_gt_is_wedged(gt) ? -EIO : 0; > + struct intel_gt *gt; > + unsigned int i; > + int ret = 0; > > - cond_resched(); > + for_each_gt(gt, i915, i) { > + if (intel_gt_is_wedged(gt)) > + ret = -EIO; I'm just wondering if it makes sense to check if the gt is wedged. Andi > - if (intel_gt_wait_for_idle(gt, HZ * 3) == -ETIME) { > - pr_err("%pS timed out, cancelling all further testing.\n", > - __builtin_return_address(0)); > + cond_resched(); > > - GEM_TRACE("%pS timed out.\n", > - __builtin_return_address(0)); > - GEM_TRACE_DUMP(); > + if (intel_gt_wait_for_idle(gt, HZ * 3) == -ETIME) { > + pr_err("%pS timed out, cancelling all further testing.\n", > + __builtin_return_address(0)); > > - intel_gt_set_wedged(gt); > - ret = -EIO; > + GEM_TRACE("%pS timed out.\n", > + __builtin_return_address(0)); > + GEM_TRACE_DUMP(); > + > + intel_gt_set_wedged(gt); > + ret = -EIO; > + } > } > > return ret; > -- > 2.39.0