public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Chris Wilson <chris@chris-wilson.co.uk>
To: intel-gfx <intel-gfx@lists.freedesktop.org>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Subject: Re: [PATCH] drm/i915: don't bail out of intel_wait_ring_buffer too early
Date: Tue, 18 Oct 2011 16:24:40 +0100	[thread overview]
Message-ID: <e39f63$2bjcla@fmsmga002.fm.intel.com> (raw)
In-Reply-To: <1318353957-2601-1-git-send-email-daniel.vetter@ffwll.ch>

On Tue, 11 Oct 2011 19:25:57 +0200, Daniel Vetter <daniel.vetter@ffwll.ch> wrote:
> In the pre-gem days with non-existing hangcheck and gpu reset code,
> this timeout of 3 seconds was pretty important to avoid stuck
> processes.
> 
> But now we have the hangcheck code in gem that goes to great length
> to ensure that the gpu is really dead before declaring it wedged.
> 
> So there's no need for this timeout anymore. Actually it's even harmful
> because we can bail out too early (e.g. with xscreensaver slip)
> when running giant batchbuffers. And our code isn't robust enough
> to properly unroll any state-changes, we pretty much rely on the gpu
> reset code cleaning up the mess (like cache tracking, fencing state,
> active list/request tracking, ...).
> 
> With this change intel_begin_ring can only fail when the gpu is
> wedged, and it will return -EAGAIN (like wait_request in case the
> gpu reset is still outstanding).
> 
> v2: Chris Wilson noted that on resume timers aren't running and hence
> we won't ever get kicked out of this loop by the hangcheck code. Use
> an insanely large timeout instead for the HAS_GEM case to prevent
> resume bugs from totally hanging the machine.
> 
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

Personally I would have done:
 end = jiffies;
 if (has_gem)
	end += infinity;
 else
        end += 3s;
but that is one nitpick too far ;-)
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre

  reply	other threads:[~2011-10-18 15:24 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-11 14:39 [PATCH 1/6] drm/i915: hangcheck robustification Daniel Vetter
2011-10-11 14:39 ` [PATCH 2/6] drm/i915: kicking rings stuck on semaphores considered harmful Daniel Vetter
2011-10-11 15:51   ` Chris Wilson
2011-10-11 20:48   ` Ben Widawsky
2011-10-11 14:39 ` [PATCH 3/6] drm/i915: don't bail out of intel_wait_ring_buffer too early Daniel Vetter
2011-10-11 15:53   ` Chris Wilson
2011-10-11 17:25     ` [PATCH] " Daniel Vetter
2011-10-18 15:24       ` Chris Wilson [this message]
2011-10-11 14:39 ` [PATCH 4/6] drm/i915: switch ring->id to be a real id Daniel Vetter
2011-10-11 15:55   ` Chris Wilson
2011-10-11 17:27     ` [PATCH] drm/i915: don't bail out of intel_wait_ring_buffer too early Daniel Vetter
2011-10-11 19:31       ` Daniel Vetter
2011-10-11 17:29     ` [PATCH] drm/i915: switch ring->id to be a real id Daniel Vetter
2011-10-18 15:27       ` Chris Wilson
2011-10-11 14:39 ` [PATCH 5/6] drm/i915: refactor ring error state capture to use arrays Daniel Vetter
2011-10-11 15:57   ` Chris Wilson
2011-10-11 14:39 ` [PATCH 6/6] drm/i915: collect more per ring error state Daniel Vetter
2011-10-11 16:01   ` Chris Wilson
2011-10-11 17:30     ` [PATCH] " Daniel Vetter
2011-10-11 19:23       ` Chris Wilson
2011-10-11 19:20         ` Daniel Vetter
2011-10-30 18:39           ` Chris Wilson
2011-10-30 18:46             ` Chris Wilson
2011-10-19 11:32 ` [PATCH 1/6] drm/i915: hangcheck robustification Chris Wilson
2011-10-19 15:02   ` Ben Widawsky
2011-10-19 15:48     ` Chris Wilson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='e39f63$2bjcla@fmsmga002.fm.intel.com' \
    --to=chris@chris-wilson.co.uk \
    --cc=daniel.vetter@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox