Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d6edb6e3 authored by Chris Wilson's avatar Chris Wilson Committed by Daniel Vetter
Browse files

drm/i915: Check the execlist queue for pending requests before declaring idle



Including a check against the execlist queue before calling the engine
idle and passing hangcheck.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: default avatarMika Kuoppala <mika.kuoppala@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20170721123238.16428-6-chris@chris-wilson.co.uk


Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent 5cce5e31
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -1283,6 +1283,10 @@ bool intel_engine_is_idle(struct intel_engine_cs *engine)
	if (port_request(&engine->execlist_port[0]))
		return false;

	/* ELSP is empty, but there are ready requests? */
	if (READ_ONCE(engine->execlist_first))
		return false;

	/* Ring stopped? */
	if (!ring_is_idle(engine))
		return false;