public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Do not check or a stalled pageflip prior to it being queued
@ 2015-08-12 12:08 Chris Wilson
  2015-08-12 13:54 ` Ville Syrjälä
  2015-08-15  8:45 ` shuang.he
  0 siblings, 2 replies; 4+ messages in thread
From: Chris Wilson @ 2015-08-12 12:08 UTC (permalink / raw)
  To: intel-gfx

When we queue the command or operation to change the scanout address, we
mark the flip as in progress. We can use this flag to prevent us from
checking for a stalled flip prior to its existence!

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/intel_display.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index aab8dfd1f8a5..edc7d4a7c9de 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -11248,6 +11248,9 @@ static bool __intel_pageflip_stall_check(struct drm_device *dev,
 	if (atomic_read(&work->pending) >= INTEL_FLIP_COMPLETE)
 		return true;
 
+	if (atomic_read(&work->pending) < INTEL_FLIP_PENDING)
+		return false;
+
 	if (!work->enable_stall_check)
 		return false;
 
-- 
2.5.0

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

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] drm/i915: Do not check or a stalled pageflip prior to it being queued
  2015-08-12 12:08 [PATCH] drm/i915: Do not check or a stalled pageflip prior to it being queued Chris Wilson
@ 2015-08-12 13:54 ` Ville Syrjälä
  2015-08-12 14:39   ` Daniel Vetter
  2015-08-15  8:45 ` shuang.he
  1 sibling, 1 reply; 4+ messages in thread
From: Ville Syrjälä @ 2015-08-12 13:54 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

On Wed, Aug 12, 2015 at 01:08:22PM +0100, Chris Wilson wrote:
> When we queue the command or operation to change the scanout address, we
> mark the flip as in progress. We can use this flag to prevent us from
> checking for a stalled flip prior to its existence!
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
>  drivers/gpu/drm/i915/intel_display.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index aab8dfd1f8a5..edc7d4a7c9de 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -11248,6 +11248,9 @@ static bool __intel_pageflip_stall_check(struct drm_device *dev,
>  	if (atomic_read(&work->pending) >= INTEL_FLIP_COMPLETE)
>  		return true;
>  
> +	if (atomic_read(&work->pending) < INTEL_FLIP_PENDING)
> +		return false;
> +

unpin_work is assigned and the lock dropped before the flip is marked as
INTEL_FLIP_PENDING. Makes sense.

Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

>  	if (!work->enable_stall_check)
>  		return false;
>  
> -- 
> 2.5.0
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] drm/i915: Do not check or a stalled pageflip prior to it being queued
  2015-08-12 13:54 ` Ville Syrjälä
@ 2015-08-12 14:39   ` Daniel Vetter
  0 siblings, 0 replies; 4+ messages in thread
From: Daniel Vetter @ 2015-08-12 14:39 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: intel-gfx

On Wed, Aug 12, 2015 at 04:54:09PM +0300, Ville Syrjälä wrote:
> On Wed, Aug 12, 2015 at 01:08:22PM +0100, Chris Wilson wrote:
> > When we queue the command or operation to change the scanout address, we
> > mark the flip as in progress. We can use this flag to prevent us from
> > checking for a stalled flip prior to its existence!
> > 
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > ---
> >  drivers/gpu/drm/i915/intel_display.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> > index aab8dfd1f8a5..edc7d4a7c9de 100644
> > --- a/drivers/gpu/drm/i915/intel_display.c
> > +++ b/drivers/gpu/drm/i915/intel_display.c
> > @@ -11248,6 +11248,9 @@ static bool __intel_pageflip_stall_check(struct drm_device *dev,
> >  	if (atomic_read(&work->pending) >= INTEL_FLIP_COMPLETE)
> >  		return true;
> >  
> > +	if (atomic_read(&work->pending) < INTEL_FLIP_PENDING)
> > +		return false;
> > +
> 
> unpin_work is assigned and the lock dropped before the flip is marked as
> INTEL_FLIP_PENDING. Makes sense.
> 
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Queued for -next, thanks for the patch.
-Daniel

> 
> >  	if (!work->enable_stall_check)
> >  		return false;
> >  
> > -- 
> > 2.5.0
> > 
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> 
> -- 
> Ville Syrjälä
> Intel OTC
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] drm/i915: Do not check or a stalled pageflip prior to it being queued
  2015-08-12 12:08 [PATCH] drm/i915: Do not check or a stalled pageflip prior to it being queued Chris Wilson
  2015-08-12 13:54 ` Ville Syrjälä
@ 2015-08-15  8:45 ` shuang.he
  1 sibling, 0 replies; 4+ messages in thread
From: shuang.he @ 2015-08-15  8:45 UTC (permalink / raw)
  To: shuang.he, julianx.dumez, christophe.sureau, lei.a.liu, intel-gfx,
	chris

Tested-By: Intel Graphics QA PRTS (Patch Regression Test System Contact: shuang.he@intel.com)
Task id: 7156
-------------------------------------Summary-------------------------------------
Platform          Delta          drm-intel-nightly          Series Applied
ILK                 -1              302/302              301/302
SNB                                  315/315              315/315
IVB                                  336/336              336/336
BYT                 -2              283/283              281/283
HSW                                  378/378              378/378
-------------------------------------Detailed-------------------------------------
Platform  Test                                drm-intel-nightly          Series Applied
*ILK  igt@kms_flip@wf_vblank-vs-modeset-interruptible      PASS(1)      DMESG_WARN(1)
*BYT  igt@gem_partial_pwrite_pread@reads-uncached      PASS(1)      FAIL(1)
*BYT  igt@gem_tiled_partial_pwrite_pread@reads      PASS(1)      FAIL(1)
Note: You need to pay more attention to line start with '*'
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-08-15  8:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-12 12:08 [PATCH] drm/i915: Do not check or a stalled pageflip prior to it being queued Chris Wilson
2015-08-12 13:54 ` Ville Syrjälä
2015-08-12 14:39   ` Daniel Vetter
2015-08-15  8:45 ` shuang.he

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox