[Intel-gfx] [PATCH v2 18/20] drm/i915: Only commit planes on crtc's that have changed planes.

Daniel Vetter daniel at ffwll.ch
Tue Jul 7 02:33:56 PDT 2015


On Tue, Jul 07, 2015 at 09:08:29AM +0200, Maarten Lankhorst wrote:
> No point in applying vblank evasion if there's nothing to evade.
> 
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> ---
>  drivers/gpu/drm/i915/intel_display.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 71fc35d814d1..2eaccdc59a9a 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -13288,7 +13288,10 @@ static int intel_atomic_commit(struct drm_device *dev,
>  		if (!modeset)
>  			intel_pre_plane_update(intel_crtc);
>  
> -		drm_atomic_helper_commit_planes_on_crtc(crtc_state);
> +		if (crtc->state->planes_changed ||
> +		    to_intel_crtc_state(crtc->state)->update_pipe)
> +			drm_atomic_helper_commit_planes_on_crtc(crtc_state);

What if we change some crtc property which is updated under vblank
evasion, but no plane state? e.g. background color. Imo trying to optimize
this doesn't speed up any common case, but makes things more fragile.
-Daniel

> +
>  		intel_post_plane_update(intel_crtc);
>  	}
>  
> -- 
> 2.1.0
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the Intel-gfx mailing list