[Intel-gfx] [PATCH 2/5] drm/i915: use wait_event_timeout when waiting for flip completions

Daniel Vetter daniel at ffwll.ch
Sat Sep 28 11:35:11 CEST 2013


On Fri, Sep 27, 2013 at 9:57 PM, Jesse Barnes <jbarnes at virtuousgeek.org> wrote:
> We're shutting the crtc off and don't want to hang forever.

Reading the source and the test-suite is advisable ;-)
- We actually don't hang here if the MI_DISPLAY_FLIP doesn't happen.
- We already recover the display state (not so relevant here where we
shut it off, but in the set_base path where we have the same problem
with waiting for flips).
- We have extensive test coverage for gpu hangs vs. flips in all kinds
of contrived situations in igt.

That leaves us with the flip not completing in the hw after the
MI_DISPLAY_FLIP has executed. Usually that just means we miss a
workaround or have a bug in our code, and again we have extensive
testcases for this.

Furthermore the hang recover code is ridiculously tricky - just for
3.12-fixes I've hunted down 3 deadlocks in there. By bailing out too
early you have a good chance to confuse the code and actually make
matters worse ;-)

Cheers, Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch



More information about the Intel-gfx mailing list