From: Mika Kuoppala <mika.kuoppala@linux.intel.com>
To: Ben Widawsky <ben@bwidawsk.net>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 03/13] drm/i915: pass seqno to i915_hangcheck_ring_idle
Date: Fri, 01 Mar 2013 15:49:48 +0200 [thread overview]
Message-ID: <87vc9bnsar.fsf@gaia.fi.intel.com> (raw)
In-Reply-To: <20130226224119.GB3759@bwidawsk.net>
Ben Widawsky <ben@bwidawsk.net> writes:
> On Tue, Feb 26, 2013 at 01:05:06PM +0200, Mika Kuoppala wrote:
>> In preparation for next commit, pass seqno as a parameter
>> to i915_hangcheck_ring_idle as it will be used inside
>> i915_hangcheck_elapsed.
>>
>> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
>> ---
>> drivers/gpu/drm/i915/i915_irq.c | 11 +++++++----
>> 1 file changed, 7 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
>> index 29037e0..4f60c87 100644
>> --- a/drivers/gpu/drm/i915/i915_irq.c
>> +++ b/drivers/gpu/drm/i915/i915_irq.c
>> @@ -1740,11 +1740,11 @@ ring_last_seqno(struct intel_ring_buffer *ring)
>> struct drm_i915_gem_request, list)->seqno;
>> }
>>
>> -static bool i915_hangcheck_ring_idle(struct intel_ring_buffer *ring, bool *err)
>> +static bool i915_hangcheck_ring_idle(struct intel_ring_buffer *ring,
>> + u32 ring_seqno, bool *err)
>> {
>> if (list_empty(&ring->request_list) ||
>> - i915_seqno_passed(ring->get_seqno(ring, false),
>> - ring_last_seqno(ring))) {
>> + i915_seqno_passed(ring_seqno, ring_last_seqno(ring))) {
>> /* Issue a wake-up to catch stuck h/w. */
>> if (waitqueue_active(&ring->irq_queue)) {
>> DRM_ERROR("Hangcheck timer elapsed... %s idle\n",
>
> I think just return err. Don't bother with a bool and *err return.
They have different meaning in here. Or do you suggest that
i return int with error and encode waiting/non waiting in return value?
-Mika
>> @@ -1821,7 +1821,10 @@ void i915_hangcheck_elapsed(unsigned long data)
>> memset(acthd, 0, sizeof(acthd));
>> idle = true;
>> for_each_ring(ring, dev_priv, i) {
>> - idle &= i915_hangcheck_ring_idle(ring, &err);
>> + u32 seqno;
>> +
>> + seqno = ring->get_seqno(ring, false);
>> + idle &= i915_hangcheck_ring_idle(ring, seqno, &err);
>> acthd[i] = intel_ring_get_active_head(ring);
>> }
>>
> --
> Ben Widawsky, Intel Open Source Technology Center
next prev parent reply other threads:[~2013-03-01 13:49 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-26 11:05 [PATCH 00/13] arb robustness enablers Mika Kuoppala
2013-02-26 11:05 ` [PATCH 01/13] drm/i915: add context parameter to i915_switch_context() Mika Kuoppala
2013-02-26 18:31 ` Ben Widawsky
2013-02-26 11:05 ` [PATCH 02/13] drm/i915: reference count for i915_hw_contexts Mika Kuoppala
2013-02-26 21:45 ` Ben Widawsky
2013-02-26 11:05 ` [PATCH 03/13] drm/i915: pass seqno to i915_hangcheck_ring_idle Mika Kuoppala
2013-02-26 22:41 ` Ben Widawsky
2013-03-01 13:49 ` Mika Kuoppala [this message]
2013-02-26 11:05 ` [PATCH 04/13] drm/i915: track ring progression using seqnos Mika Kuoppala
2013-02-26 14:12 ` Chris Wilson
2013-02-26 15:09 ` Mika Kuoppala
2013-02-26 15:31 ` Chris Wilson
2013-02-26 11:05 ` [PATCH 05/13] drm/i915: introduce i915_hangcheck_ring_hung Mika Kuoppala
2013-02-26 23:03 ` Ben Widawsky
2013-02-26 11:05 ` [PATCH 06/13] drm/i915: detect hang using per ring hangcheck_score Mika Kuoppala
2013-02-26 14:16 ` Chris Wilson
2013-02-26 11:05 ` [PATCH 07/13] drm/i915: remove i915_hangcheck_hung Mika Kuoppala
2013-02-26 11:05 ` [PATCH 08/13] drm/i915: add struct ctx_reset_state Mika Kuoppala
2013-02-26 11:05 ` [PATCH 09/13] drm/i915: add reset_state for hw_contexts Mika Kuoppala
2013-02-27 1:47 ` Ian Romanick
2013-02-27 1:50 ` Ian Romanick
2013-02-27 9:13 ` Chris Wilson
2013-02-28 1:15 ` Ian Romanick
2013-02-28 11:14 ` Chris Wilson
2013-02-28 20:31 ` Ian Romanick
2013-02-27 10:11 ` Mika Kuoppala
2013-02-27 17:20 ` Jesse Barnes
2013-02-26 11:05 ` [PATCH 10/13] drm/i915: mark rings which were waiting when hang happened Mika Kuoppala
2013-02-26 11:05 ` [PATCH 11/13] drm/i915: add batch object and context to i915_add_request() Mika Kuoppala
2013-02-26 14:22 ` Chris Wilson
2013-02-26 11:05 ` [PATCH 12/13] drm/i915: find guilty batch buffer on ring resets Mika Kuoppala
2013-02-26 11:05 ` [PATCH 13/13] drm/i915: refuse to submit more batchbuffers from guilty context Mika Kuoppala
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=87vc9bnsar.fsf@gaia.fi.intel.com \
--to=mika.kuoppala@linux.intel.com \
--cc=ben@bwidawsk.net \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.