drm/i915: Remove redudant wait for each engine to idle from seqno wrap
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 30 Mar 2017 14:50:40 +0000 (15:50 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 31 Mar 2017 11:09:46 +0000 (12:09 +0100)
Having added the wait upon each engine to idle into the central
i915_gem_wait_for_idle(), we can remove the now redundant wait from
reset_all_global_seqno(). This has the advantage of removing the late
detection of an error (an engine still busy) which left the seqno reset
only partially complete (though it should be safe enough!).

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: http://patchwork.freedesktop.org/patch/msgid/20170330145041.9005-5-chris@chris-wilson.co.uk
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
drivers/gpu/drm/i915/i915_gem_request.c

index f16900848650e2524f6b82221f524bcb0718c9c7..1bfc3e664470507f4c9fc52d5b23c3ff8a01aec2 100644 (file)
@@ -207,9 +207,6 @@ static int reset_all_global_seqno(struct drm_i915_private *i915, u32 seqno)
        for_each_engine(engine, i915, id) {
                struct intel_timeline *tl = &timeline->engine[id];
 
-               if (wait_for(intel_engine_is_idle(engine), 50))
-                       return -EBUSY;
-
                if (!i915_seqno_passed(seqno, tl->seqno)) {
                        /* spin until threads are complete */
                        while (intel_breadcrumbs_busy(engine))