public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
To: Chris Wilson <chris@chris-wilson.co.uk>,
	intel-gfx@lists.freedesktop.org, shuang.he@linux.intel.com,
	daniel@ffwll.ch, ville.syrjala@intel.com
Subject: Re: [PATCH] drm/i915: Make mmio flip wait for seqno in the work function
Date: Wed, 05 Nov 2014 14:23:07 +0200	[thread overview]
Message-ID: <545A16AB.7010003@intel.com> (raw)
In-Reply-To: <20141105112354.GW13658@nuc-i3427.alporthouse.com>

On 11/05/2014 01:23 PM, Chris Wilson wrote:
> On Wed, Nov 05, 2014 at 01:03:00PM +0200, Ander Conselvan de Oliveira wrote:
>> This simplifies the code quite a bit compared to iterating over all
>> rings during the ring interrupt.
>>
>> Also, it allows us to drop the mmio_flip spinlock, since the mmio_flip
>> struct is only accessed in two places. The first is when the flip is
>> queued and the other when the mmio writes are done. Since a flip cannot
>> be queued while there is a pending flip, the two paths shouldn't ever
>> run in parallel. We might need to revisit that if support for replacing
>> flips is implemented though.
>>
>> Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
>> ---
>>
>> I'm not sure if locking dev->struct_mutex in the work function might
>> have any ill effects, so I'd appreciate if someone could enlighten me.
>
> Good news is you can wait on the seqno without holding any locks. You
> need to use the lower level entry point __wait_seqno() though.

I considered the fact that __wait_seqno() is static as a warning that I 
shouldn't use it directly. Should I just change that so I can use it 
intel_display.c?

The other reason I avoided it is because I didn't really understand how 
the barrier for reading the reset_counter should work. Is it sufficient 
that I do

   atomic_read(&dev_priv->gpu_error.reset_counter))

before calling __wait_seqno() or is there something more to it?

Thanks,
ander


---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2014-11-05 12:23 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-28 13:10 [PATCH 1/3] drm/i915: Add kerneldoc for intel_pipe_update_{start, end} Ander Conselvan de Oliveira
2014-10-28 13:10 ` [PATCH 2/3] drm/i915: Remove modeset lock check from intel_pipe_update_start() Ander Conselvan de Oliveira
2014-10-28 13:10 ` [PATCH 3/3] drm/i915: Use vblank evade mechanism in mmio_flip Ander Conselvan de Oliveira
2014-10-28 14:18   ` Damien Lespiau
2014-11-03 18:37   ` Paulo Zanoni
2014-11-03 18:53     ` Daniel Vetter
2014-11-03 19:13       ` Paulo Zanoni
2014-11-03 19:24         ` Daniel Vetter
2014-11-04  8:48     ` Ander Conselvan de Oliveira
2014-11-04 11:04   ` Daniel Vetter
2014-11-04 11:10     ` Chris Wilson
2014-11-05 11:03       ` [PATCH] drm/i915: Make mmio flip wait for seqno in the work function Ander Conselvan de Oliveira
2014-11-05 11:23         ` Chris Wilson
2014-11-05 12:23           ` Ander Conselvan de Oliveira [this message]
2014-11-05 12:29             ` Chris Wilson
2014-11-06  7:26               ` [PATCH 1/2] drm/i915: Make __wait_seqno non-static and rename to __i915_wait_seqno Ander Conselvan de Oliveira
2014-11-06  7:26                 ` [PATCH 2/2] drm/i915: Make mmio flip wait for seqno in the work function Ander Conselvan de Oliveira
2014-11-06  7:47                   ` Chris Wilson
2014-11-06  9:03                     ` [PATCH] " Ander Conselvan de Oliveira
2014-11-06  9:25                       ` Chris Wilson
2014-11-06 13:53                         ` Daniel Vetter
2014-11-06 14:33                           ` Chris Wilson
2014-11-03 12:33 ` [PATCH 1/3] drm/i915: Add kerneldoc for intel_pipe_update_{start, end} Daniel Vetter
2014-11-03 12:41   ` Ander Conselvan de Oliveira
2014-11-03 17:26   ` Paulo Zanoni
2014-11-03 18:19     ` Daniel Vetter

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=545A16AB.7010003@intel.com \
    --to=ander.conselvan.de.oliveira@intel.com \
    --cc=chris@chris-wilson.co.uk \
    --cc=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=shuang.he@linux.intel.com \
    --cc=ville.syrjala@intel.com \
    /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