All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Wilson <chris@chris-wilson.co.uk>
To: Eugeni Dodonov <eugeni@dodonov.net>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] drm/i915: Record the tail at each request and use it to estimate the head
Date: Wed, 08 Feb 2012 19:21:33 +0000	[thread overview]
Message-ID: <f80fcd$3e6ip1@fmsmga001.fm.intel.com> (raw)
In-Reply-To: <CAC7LmnuEpAYt=V_fCqw9tT88ghW5huB97x-DuFZ5FhvxP9KqaQ@mail.gmail.com>

On Wed, 8 Feb 2012 16:56:30 -0200, Eugeni Dodonov <eugeni@dodonov.net> wrote:
> On Wed, Feb 8, 2012 at 16:06, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> > +       /* Record the position of the start of the request so that
> > +        * should we detect the updated seqno part-way through the
> > +        * GPU processing the request, we never over-estimate the
> > +        * position of the head.
> > +        */
> > +       request_ring_position = intel_ring_get_tail(ring);
> >
> Perhaps a stupid question within the bikeshedding spirit, but why do we
> need intel_ring_get_tail()? Wouldn't just:
> 
> request_ring_position = ring->tail;
> 
> be self-explainable? Or some additional logic could be involved there at
> some point?

It is to try and preserve the illusion of a ringbuffer abstraction; the
position of the request within the ring should be an internal detail of
the ring but we are leaking it for our purposes. The use of a function there
serves as a reminder of that leak (and easier to find than ring->tail) in
the hope that someone will clean up the entire ringbuffer API and make the
issue moot.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre

  reply	other threads:[~2012-02-08 19:21 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-08 13:34 [PATCH 1/2] drm/i915: Remove use of the autoreported ringbuffer HEAD position Chris Wilson
2012-02-08 13:34 ` [PATCH 2/2] drm/i915: Record the tail at each request and use it to estimate the head Chris Wilson
2012-02-08 14:51   ` Daniel Vetter
2012-02-08 18:06     ` [PATCH] " Chris Wilson
2012-02-08 18:28       ` Daniel Vetter
2012-02-08 18:56       ` Eugeni Dodonov
2012-02-08 19:21         ` Chris Wilson [this message]
2012-02-08 14:54 ` [PATCH 1/2] drm/i915: Remove use of the autoreported ringbuffer HEAD position Daniel Vetter
2012-02-08 17:36   ` Keith Packard
2012-02-08 18:02     ` Daniel Vetter
2012-02-08 18:17       ` Chris Wilson
2012-02-08 18:24         ` Daniel Vetter
2012-02-08 19:13       ` Keith Packard
2012-02-08 20:09   ` [PATCH 1/2] drm/i915: Record the in-flight requests at the time of a hang Chris Wilson
2012-02-08 20:09     ` [PATCH 2/2] drm/i915: Record the position of the request upon error Chris Wilson
2012-02-08 22:34       ` Daniel Vetter
2012-02-10 14:51       ` Eugeni Dodonov
2012-02-08 22:33     ` [PATCH 1/2] drm/i915: Record the in-flight requests at the time of a hang Daniel Vetter
2012-02-21 19:23 ` [PATCH 1/2] drm/i915: Remove use of the autoreported ringbuffer HEAD position Eric Anholt
2012-02-27 16:53 ` Jesse Barnes

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='f80fcd$3e6ip1@fmsmga001.fm.intel.com' \
    --to=chris@chris-wilson.co.uk \
    --cc=eugeni@dodonov.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.