On Mon, Jul 23, 2018 at 03:53:35PM +0100, Chris Wilson wrote: > If we already wedged, i915_gem_set_wedged() becomes a complicated no-op. > > References: https://bugs.freedesktop.org/show_bug.cgi?id=107343 > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_gem.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c > index 8b52cb768a67..a4031fab57b0 100644 > --- a/drivers/gpu/drm/i915/i915_gem.c > +++ b/drivers/gpu/drm/i915/i915_gem.c > @@ -3312,8 +3312,8 @@ void i915_gem_set_wedged(struct drm_i915_private *i915) > intel_engine_dump(engine, &p, "%s\n", engine->name); > } > > - set_bit(I915_WEDGED, &i915->gpu_error.flags); > - smp_mb__after_atomic(); > + if (test_and_set_bit(I915_WEDGED, &i915->gpu_error.flags)) > + goto out; > > /* > * First, stop submission to hw, but do not yet complete requests by > @@ -3372,6 +3372,7 @@ void i915_gem_set_wedged(struct drm_i915_private *i915) > i915_gem_reset_finish_engine(engine); > } > > +out: > GEM_TRACE("end\n"); > > wake_up_all(&i915->gpu_error.reset_queue); > -- > 2.18.0 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx