[Intel-gfx] [PATCH] drm/i915: Add a timeout to waiting for old reservation.

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Thu Jan 19 15:04:16 UTC 2017


Op 19-01-17 om 15:48 schreef Chris Wilson:
> On Thu, Jan 19, 2017 at 03:23:12PM +0100, Maarten Lankhorst wrote:
>> This prevents hangs in kms_flip. We should also either decrease
>> I915_FENCE_TIMEOUT to 5s, or increase the timeouts in
>> drm_atomic_helper.c to prevent errors like flip_done/hw_done timed out.
>>
>> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> This is a nak. This one *has* to wait until the previous i915 requests
> are complete, which is (supposed to be) guaranteed eventually. If later
> phases of a modeset are completing before any earlier phase, that sounds
> buggy.
drm_atomic_helper.c has some protection against buggy hardware in drm_atomic_helper_wait_for_dependencies,
where it waits for previous updates to complete. The problem is in kms_flip one of the tests does a dpms off with the gpu wedged,
which means it has to wait for the full gpu reset to kick in. This will definitely take longer than 10s, so it times out and continues.

Of course the test is buggy now. What it did won't work any more with atomic doing a full modeset during dpms, but there's a real issue there and I'm uncertain of the solution.

~Maarten


More information about the Intel-gfx mailing list