public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
@ 2016-08-16  7:43 Chris Wilson
  2016-08-16  8:25 ` ✗ Ro.CI.BAT: warning for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Chris Wilson @ 2016-08-16  7:43 UTC (permalink / raw)
  To: intel-gfx; +Cc: Zanoni, Paulo R, drm-intel-fixes, Daniel Vetter

intel_fbc_pre_update() depends upon the new state being already pinned
in place in the Global GTT (primarily for both fencing which wants both
an offset and a fence register, if assigned). This requires the call to
intel_fbc_pre_update() be after intel_pin_and_fence_fb() - but commit
5a21b6650a23 ("drm/i915: Revert async unpin and nonblocking atomic
commit") seems to have returned the code to a different state.

Fixes 5a21b6650a23 ("drm/i915: Revert async unpin and nonblocking...")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: "Zanoni, Paulo R" <paulo.r.zanoni@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
Cc: drm-intel-fixes@lists.freedesktop.org
---
 drivers/gpu/drm/i915/intel_display.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 37d71d5d2369..916ce7b2d4d7 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -12061,9 +12061,6 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
 	crtc->primary->fb = fb;
 	update_state_fb(crtc->primary);
 
-	intel_fbc_pre_update(intel_crtc, intel_crtc->config,
-			     to_intel_plane_state(primary->state));
-
 	work->pending_flip_obj = i915_gem_object_get(obj);
 
 	ret = i915_mutex_lock_interruptible(dev);
@@ -12109,6 +12106,9 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
 	work->gtt_offset += intel_crtc->dspaddr_offset;
 	work->rotation = crtc->primary->state->rotation;
 
+	intel_fbc_pre_update(intel_crtc, intel_crtc->config,
+			     to_intel_plane_state(primary->state));
+
 	if (mmio_flip) {
 		INIT_WORK(&work->mmio_work, intel_mmio_flip_work_func);
 
-- 
2.8.1

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

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

* ✗ Ro.CI.BAT: warning for drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
  2016-08-16  7:43 [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip Chris Wilson
@ 2016-08-16  8:25 ` Patchwork
  2016-08-16 16:49 ` [PATCH] " Zanoni, Paulo R
  2016-08-18  6:49 ` ✗ Ro.CI.BAT: warning for drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip (rev2) Patchwork
  2 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2016-08-16  8:25 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
URL   : https://patchwork.freedesktop.org/series/11142/
State : warning

== Summary ==

Series 11142v1 drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
http://patchwork.freedesktop.org/api/1.0/series/11142/revisions/1/mbox

Test kms_cursor_legacy:
        Subgroup basic-flip-vs-cursor-varying-size:
                fail       -> PASS       (ro-byt-n2820)
Test kms_pipe_crc_basic:
        Subgroup suspend-read-crc-pipe-b:
                dmesg-warn -> PASS       (ro-bdw-i7-5600u)
        Subgroup suspend-read-crc-pipe-c:
                dmesg-warn -> PASS       (ro-bdw-i7-5600u)
                skip       -> DMESG-WARN (ro-bdw-i5-5250u)

fi-kbl-qkkr      total:244  pass:186  dwarn:27  dfail:1   fail:4   skip:26 
fi-skl-i7-6700k  total:244  pass:208  dwarn:4   dfail:2   fail:2   skip:28 
fi-snb-i7-2600   total:244  pass:202  dwarn:0   dfail:0   fail:0   skip:42 
ro-bdw-i5-5250u  total:240  pass:219  dwarn:2   dfail:0   fail:1   skip:18 
ro-bdw-i7-5600u  total:240  pass:207  dwarn:0   dfail:0   fail:1   skip:32 
ro-bsw-n3050     total:240  pass:195  dwarn:0   dfail:0   fail:3   skip:42 
ro-byt-n2820     total:240  pass:198  dwarn:0   dfail:0   fail:2   skip:40 
ro-hsw-i3-4010u  total:240  pass:214  dwarn:0   dfail:0   fail:0   skip:26 
ro-hsw-i7-4770r  total:240  pass:185  dwarn:0   dfail:0   fail:0   skip:55 
ro-ilk1-i5-650   total:235  pass:174  dwarn:0   dfail:0   fail:1   skip:60 
ro-ivb-i7-3770   total:240  pass:205  dwarn:0   dfail:0   fail:0   skip:35 
ro-ivb2-i7-3770  total:240  pass:209  dwarn:0   dfail:0   fail:0   skip:31 
ro-skl3-i5-6260u total:240  pass:222  dwarn:0   dfail:0   fail:4   skip:14 

Results at /archive/results/CI_IGT_test/RO_Patchwork_1883/

e4ec788 drm-intel-nightly: 2016y-08m-16d-07h-06m-09s UTC integration manifest
c8c3a5a drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip

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

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

* Re: [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
  2016-08-16  7:43 [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip Chris Wilson
  2016-08-16  8:25 ` ✗ Ro.CI.BAT: warning for " Patchwork
@ 2016-08-16 16:49 ` Zanoni, Paulo R
  2016-08-16 17:04   ` chris
  2016-08-18  6:49 ` ✗ Ro.CI.BAT: warning for drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip (rev2) Patchwork
  2 siblings, 1 reply; 9+ messages in thread
From: Zanoni, Paulo R @ 2016-08-16 16:49 UTC (permalink / raw)
  To: intel-gfx@lists.freedesktop.org, chris@chris-wilson.co.uk
  Cc: Vetter, Daniel, drm-intel-fixes@lists.freedesktop.org

Em Ter, 2016-08-16 às 08:43 +0100, Chris Wilson escreveu:
> intel_fbc_pre_update() depends upon the new state being already
> pinned
> in place in the Global GTT (primarily for both fencing which wants
> both
> an offset and a fence register, if assigned). This requires the call
> to
> intel_fbc_pre_update() be after intel_pin_and_fence_fb() - but commit
> 5a21b6650a23 ("drm/i915: Revert async unpin and nonblocking atomic
> commit") seems to have returned the code to a different state.
> 
> Fixes 5a21b6650a23 ("drm/i915: Revert async unpin and
> nonblocking...")

I think it actually fixes e8216e502acaad129210c3c8b30cb4ab41e70239
("drm/i915/fbc: call intel_fbc_pre_update earlier during page flips").

> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Daniel Vetter <daniel.vetter@intel.com>
> Cc: "Zanoni, Paulo R" <paulo.r.zanoni@intel.com>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
> Cc: drm-intel-fixes@lists.freedesktop.org
> ---
>  drivers/gpu/drm/i915/intel_display.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c
> b/drivers/gpu/drm/i915/intel_display.c
> index 37d71d5d2369..916ce7b2d4d7 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -12061,9 +12061,6 @@ static int intel_crtc_page_flip(struct
> drm_crtc *crtc,
>  	crtc->primary->fb = fb;
>  	update_state_fb(crtc->primary);
>  
> -	intel_fbc_pre_update(intel_crtc, intel_crtc->config,
> -			     to_intel_plane_state(primary->state));
> -
>  	work->pending_flip_obj = i915_gem_object_get(obj);
>  
>  	ret = i915_mutex_lock_interruptible(dev);
> @@ -12109,6 +12106,9 @@ static int intel_crtc_page_flip(struct
> drm_crtc *crtc,
>  	work->gtt_offset += intel_crtc->dspaddr_offset;
>  	work->rotation = crtc->primary->state->rotation;
>  
> +	intel_fbc_pre_update(intel_crtc, intel_crtc->config,
> +			     to_intel_plane_state(primary->state));
> +

After you reported the problem yesterday I wrote almost the exact same
patch and just didn't submit it because I didn't have time to test it.
I also added a little comment on top of the call to try to prevent us
from further regressions:

/* There's the potential that the next frame will not be compatible
with FBC, so we want to call pre_update() before the actual page flip.
The problem is that pre_update() caches some information about the fb
object, so we want to do this only after the object is pinned. Let's be
on the safe side and do this immediately before scheduling the
flip. */

With or without this or some other comment:
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>

>  	if (mmio_flip) {
>  		INIT_WORK(&work->mmio_work,
> intel_mmio_flip_work_func);
>  
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
  2016-08-16 16:49 ` [PATCH] " Zanoni, Paulo R
@ 2016-08-16 17:04   ` chris
  2016-08-17 19:41     ` Paulo Zanoni
  0 siblings, 1 reply; 9+ messages in thread
From: chris @ 2016-08-16 17:04 UTC (permalink / raw)
  To: Zanoni, Paulo R
  Cc: intel-gfx@lists.freedesktop.org,
	drm-intel-fixes@lists.freedesktop.org, Vetter, Daniel

On Tue, Aug 16, 2016 at 04:49:26PM +0000, Zanoni, Paulo R wrote:
> Em Ter, 2016-08-16 às 08:43 +0100, Chris Wilson escreveu:
> > intel_fbc_pre_update() depends upon the new state being already
> > pinned
> > in place in the Global GTT (primarily for both fencing which wants
> > both
> > an offset and a fence register, if assigned). This requires the call
> > to
> > intel_fbc_pre_update() be after intel_pin_and_fence_fb() - but commit
> > 5a21b6650a23 ("drm/i915: Revert async unpin and nonblocking atomic
> > commit") seems to have returned the code to a different state.
> > 
> > Fixes 5a21b6650a23 ("drm/i915: Revert async unpin and
> > nonblocking...")
> 
> I think it actually fixes e8216e502acaad129210c3c8b30cb4ab41e70239
> ("drm/i915/fbc: call intel_fbc_pre_update earlier during page flips").

Hmm, I was pretty sure that the before the revert it was in the right
place, but I could well be mistaken. Certainly that commit sounds more
than a likely suspect.

> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Daniel Vetter <daniel.vetter@intel.com>
> > Cc: "Zanoni, Paulo R" <paulo.r.zanoni@intel.com>
> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> > Cc: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
> > Cc: drm-intel-fixes@lists.freedesktop.org
> > ---
> >  drivers/gpu/drm/i915/intel_display.c | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_display.c
> > b/drivers/gpu/drm/i915/intel_display.c
> > index 37d71d5d2369..916ce7b2d4d7 100644
> > --- a/drivers/gpu/drm/i915/intel_display.c
> > +++ b/drivers/gpu/drm/i915/intel_display.c
> > @@ -12061,9 +12061,6 @@ static int intel_crtc_page_flip(struct
> > drm_crtc *crtc,
> >  	crtc->primary->fb = fb;
> >  	update_state_fb(crtc->primary);
> >  
> > -	intel_fbc_pre_update(intel_crtc, intel_crtc->config,
> > -			     to_intel_plane_state(primary->state));
> > -
> >  	work->pending_flip_obj = i915_gem_object_get(obj);
> >  
> >  	ret = i915_mutex_lock_interruptible(dev);
> > @@ -12109,6 +12106,9 @@ static int intel_crtc_page_flip(struct
> > drm_crtc *crtc,
> >  	work->gtt_offset += intel_crtc->dspaddr_offset;
> >  	work->rotation = crtc->primary->state->rotation;
> >  
> > +	intel_fbc_pre_update(intel_crtc, intel_crtc->config,
> > +			     to_intel_plane_state(primary->state));
> > +
> 
> After you reported the problem yesterday I wrote almost the exact same
> patch and just didn't submit it because I didn't have time to test it.
> I also added a little comment on top of the call to try to prevent us
> from further regressions:
> 
> /* There's the potential that the next frame will not be compatible
> with FBC, so we want to call pre_update() before the actual page flip.
> The problem is that pre_update() caches some information about the fb
> object, so we want to do this only after the object is pinned. Let's be
> on the safe side and do this immediately before scheduling the
> flip. */
> 
> With or without this or some other comment:
> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>

Submit yours, and I'll look it over ;)
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
  2016-08-16 17:04   ` chris
@ 2016-08-17 19:41     ` Paulo Zanoni
  2016-08-17 19:49       ` Chris Wilson
  0 siblings, 1 reply; 9+ messages in thread
From: Paulo Zanoni @ 2016-08-17 19:41 UTC (permalink / raw)
  To: intel-gfx; +Cc: Paulo Zanoni, drm-intel-fixes, Daniel Vetter

From: Chris Wilson <chris@chris-wilson.co.uk>

intel_fbc_pre_update() depends upon the new state being already pinned
in place in the Global GTT (primarily for both fencing which wants both
an offset and a fence register, if assigned). This requires the call to
intel_fbc_pre_update() be after intel_pin_and_fence_fb() - but commit
e8216e502aca ("drm/i915/fbc: call intel_fbc_pre_update earlier during
page flips") moved the code way too much up in its attempt to call it
before the page flip.

v2 (from Paulo):
 - Point the original bad commit.
 - Add a comment to maybe prevent further regressions.

Fixes: e8216e502aca ("drm/i915/fbc: call intel_fbc_pre_update earlier...")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
Cc: drm-intel-fixes@lists.freedesktop.org
---
 drivers/gpu/drm/i915/intel_display.c | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 8a203b5..7057bd9 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -12109,9 +12109,6 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
 	crtc->primary->fb = fb;
 	update_state_fb(crtc->primary);
 
-	intel_fbc_pre_update(intel_crtc, intel_crtc->config,
-			     to_intel_plane_state(primary->state));
-
 	work->pending_flip_obj = i915_gem_object_get(obj);
 
 	ret = i915_mutex_lock_interruptible(dev);
@@ -12157,6 +12154,17 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
 	work->gtt_offset += intel_crtc->dspaddr_offset;
 	work->rotation = crtc->primary->state->rotation;
 
+	/*
+	 * There's the potential that the next frame will not be compatible with
+	 * FBC, so we want to call pre_update() before the actual page flip.
+	 * The problem is that pre_update() caches some information about the fb
+	 * object, so we want to do this only after the object is pinned. Let's
+	 * be on the safe side and do this immediately before scheduling the
+	 * flip.
+	 */
+	intel_fbc_pre_update(intel_crtc, intel_crtc->config,
+			     to_intel_plane_state(primary->state));
+
 	if (mmio_flip) {
 		INIT_WORK(&work->mmio_work, intel_mmio_flip_work_func);
 
-- 
2.7.4

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

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

* Re: [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
  2016-08-17 19:41     ` Paulo Zanoni
@ 2016-08-17 19:49       ` Chris Wilson
  2016-08-17 20:00         ` Zanoni, Paulo R
  0 siblings, 1 reply; 9+ messages in thread
From: Chris Wilson @ 2016-08-17 19:49 UTC (permalink / raw)
  To: Paulo Zanoni; +Cc: intel-gfx, drm-intel-fixes, Daniel Vetter

On Wed, Aug 17, 2016 at 04:41:44PM -0300, Paulo Zanoni wrote:
> From: Chris Wilson <chris@chris-wilson.co.uk>
> 
> intel_fbc_pre_update() depends upon the new state being already pinned
> in place in the Global GTT (primarily for both fencing which wants both
> an offset and a fence register, if assigned). This requires the call to
> intel_fbc_pre_update() be after intel_pin_and_fence_fb() - but commit
> e8216e502aca ("drm/i915/fbc: call intel_fbc_pre_update earlier during
> page flips") moved the code way too much up in its attempt to call it
> before the page flip.
> 
> v2 (from Paulo):
>  - Point the original bad commit.
>  - Add a comment to maybe prevent further regressions.
> 
> Fixes: e8216e502aca ("drm/i915/fbc: call intel_fbc_pre_update earlier...")
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
> Cc: Daniel Vetter <daniel.vetter@intel.com>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
> Cc: drm-intel-fixes@lists.freedesktop.org

If you had just claimed this as your own, I could have reviewed it ;)
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
  2016-08-17 19:49       ` Chris Wilson
@ 2016-08-17 20:00         ` Zanoni, Paulo R
  2016-08-22 10:29           ` chris
  0 siblings, 1 reply; 9+ messages in thread
From: Zanoni, Paulo R @ 2016-08-17 20:00 UTC (permalink / raw)
  To: chris@chris-wilson.co.uk
  Cc: intel-gfx@lists.freedesktop.org,
	drm-intel-fixes@lists.freedesktop.org, Vetter, Daniel

Em Qua, 2016-08-17 às 20:49 +0100, Chris Wilson escreveu:
> On Wed, Aug 17, 2016 at 04:41:44PM -0300, Paulo Zanoni wrote:
> > 
> > From: Chris Wilson <chris@chris-wilson.co.uk>
> > 
> > intel_fbc_pre_update() depends upon the new state being already
> > pinned
> > in place in the Global GTT (primarily for both fencing which wants
> > both
> > an offset and a fence register, if assigned). This requires the
> > call to
> > intel_fbc_pre_update() be after intel_pin_and_fence_fb() - but
> > commit
> > e8216e502aca ("drm/i915/fbc: call intel_fbc_pre_update earlier
> > during
> > page flips") moved the code way too much up in its attempt to call
> > it
> > before the page flip.
> > 
> > v2 (from Paulo):
> >  - Point the original bad commit.
> >  - Add a comment to maybe prevent further regressions.
> > 
> > Fixes: e8216e502aca ("drm/i915/fbc: call intel_fbc_pre_update
> > earlier...")
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
> > Cc: Daniel Vetter <daniel.vetter@intel.com>
> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> > Cc: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
> > Cc: drm-intel-fixes@lists.freedesktop.org
> 
> If you had just claimed this as your own, I could have reviewed it ;)

I don't want to steal your patch, you submitted it first, so you should
get the credit.

I thought about adding my R-B, but then I remembered reading somewhere
that having my Signed-off-by was enough and implicitly meant a R-B.
Anyway, feel free to add:
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com> (v1)

I suppose it would also make sense for you to add R-B: Chris (v2) since
I modified the original.

Also, feel free to merge this.

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

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

* ✗ Ro.CI.BAT: warning for drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip (rev2)
  2016-08-16  7:43 [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip Chris Wilson
  2016-08-16  8:25 ` ✗ Ro.CI.BAT: warning for " Patchwork
  2016-08-16 16:49 ` [PATCH] " Zanoni, Paulo R
@ 2016-08-18  6:49 ` Patchwork
  2 siblings, 0 replies; 9+ messages in thread
From: Patchwork @ 2016-08-18  6:49 UTC (permalink / raw)
  To: Paulo Zanoni; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip (rev2)
URL   : https://patchwork.freedesktop.org/series/11142/
State : warning

== Summary ==

Series 11142v2 drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
http://patchwork.freedesktop.org/api/1.0/series/11142/revisions/2/mbox

Test kms_cursor_legacy:
        Subgroup basic-flip-vs-cursor-legacy:
                fail       -> PASS       (ro-bdw-i5-5250u)
Test kms_pipe_crc_basic:
        Subgroup suspend-read-crc-pipe-a:
                skip       -> DMESG-WARN (ro-bdw-i7-5557U)
        Subgroup suspend-read-crc-pipe-b:
                dmesg-warn -> SKIP       (ro-bdw-i7-5557U)
                skip       -> DMESG-WARN (ro-bdw-i5-5250u)
        Subgroup suspend-read-crc-pipe-c:
                pass       -> DMESG-WARN (ro-bdw-i7-5600u)
                skip       -> DMESG-WARN (ro-bdw-i5-5250u)

fi-kbl-qkkr      total:244  pass:185  dwarn:30  dfail:0   fail:2   skip:27 
fi-skl-i7-6700k  total:244  pass:208  dwarn:4   dfail:2   fail:2   skip:28 
fi-snb-i7-2600   total:244  pass:202  dwarn:0   dfail:0   fail:0   skip:42 
ro-bdw-i5-5250u  total:240  pass:220  dwarn:3   dfail:0   fail:0   skip:17 
ro-bdw-i7-5557U  total:240  pass:220  dwarn:2   dfail:0   fail:0   skip:18 
ro-bdw-i7-5600u  total:240  pass:206  dwarn:1   dfail:0   fail:1   skip:32 
ro-bsw-n3050     total:240  pass:195  dwarn:0   dfail:0   fail:2   skip:43 
ro-hsw-i3-4010u  total:240  pass:214  dwarn:0   dfail:0   fail:0   skip:26 
ro-hsw-i7-4770r  total:240  pass:185  dwarn:0   dfail:0   fail:0   skip:55 
ro-ilk1-i5-650   total:235  pass:174  dwarn:0   dfail:0   fail:1   skip:60 
ro-ivb-i7-3770   total:240  pass:205  dwarn:0   dfail:0   fail:0   skip:35 
ro-ivb2-i7-3770  total:240  pass:209  dwarn:0   dfail:0   fail:0   skip:31 
ro-skl3-i5-6260u total:240  pass:223  dwarn:0   dfail:0   fail:3   skip:14 
ro-byt-n2820 failed to connect after reboot

Results at /archive/results/CI_IGT_test/RO_Patchwork_1912/

e45fdef drm-intel-nightly: 2016y-08m-17d-13h-26m-04s UTC integration manifest
2829408 drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip

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

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

* Re: [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip
  2016-08-17 20:00         ` Zanoni, Paulo R
@ 2016-08-22 10:29           ` chris
  0 siblings, 0 replies; 9+ messages in thread
From: chris @ 2016-08-22 10:29 UTC (permalink / raw)
  To: Zanoni, Paulo R
  Cc: intel-gfx@lists.freedesktop.org,
	drm-intel-fixes@lists.freedesktop.org, Vetter, Daniel

On Wed, Aug 17, 2016 at 08:00:09PM +0000, Zanoni, Paulo R wrote:
> Em Qua, 2016-08-17 às 20:49 +0100, Chris Wilson escreveu:
> > On Wed, Aug 17, 2016 at 04:41:44PM -0300, Paulo Zanoni wrote:
> > > 
> > > From: Chris Wilson <chris@chris-wilson.co.uk>
> > > 
> > > intel_fbc_pre_update() depends upon the new state being already
> > > pinned
> > > in place in the Global GTT (primarily for both fencing which wants
> > > both
> > > an offset and a fence register, if assigned). This requires the
> > > call to
> > > intel_fbc_pre_update() be after intel_pin_and_fence_fb() - but
> > > commit
> > > e8216e502aca ("drm/i915/fbc: call intel_fbc_pre_update earlier
> > > during
> > > page flips") moved the code way too much up in its attempt to call
> > > it
> > > before the page flip.
> > > 
> > > v2 (from Paulo):
> > >  - Point the original bad commit.
> > >  - Add a comment to maybe prevent further regressions.
> > > 
> > > Fixes: e8216e502aca ("drm/i915/fbc: call intel_fbc_pre_update
> > > earlier...")
> > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > > Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
> > > Cc: Daniel Vetter <daniel.vetter@intel.com>
> > > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> > > Cc: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
> > > Cc: drm-intel-fixes@lists.freedesktop.org
> > 
> > If you had just claimed this as your own, I could have reviewed it ;)
> 
> I don't want to steal your patch, you submitted it first, so you should
> get the credit.

Pushed in your name since you did most of the work!
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2016-08-22 10:29 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-16  7:43 [PATCH] drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip Chris Wilson
2016-08-16  8:25 ` ✗ Ro.CI.BAT: warning for " Patchwork
2016-08-16 16:49 ` [PATCH] " Zanoni, Paulo R
2016-08-16 17:04   ` chris
2016-08-17 19:41     ` Paulo Zanoni
2016-08-17 19:49       ` Chris Wilson
2016-08-17 20:00         ` Zanoni, Paulo R
2016-08-22 10:29           ` chris
2016-08-18  6:49 ` ✗ Ro.CI.BAT: warning for drm/i915: Call intel_fbc_pre_update() after pinning the new pageflip (rev2) Patchwork

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