[PATCH] drm/i915: Disable frontbuffer tracking

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Tue Sep 8 15:02:22 UTC 2020


Op 08-09-2020 om 07:24 schreef Animesh Manna:
> From: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
>
> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_frontbuffer.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_frontbuffer.c b/drivers/gpu/drm/i915/display/intel_frontbuffer.c
> index d898b370d7a4..0f1d7a34dcf7 100644
> --- a/drivers/gpu/drm/i915/display/intel_frontbuffer.c
> +++ b/drivers/gpu/drm/i915/display/intel_frontbuffer.c
> @@ -166,6 +166,9 @@ void __intel_fb_invalidate(struct intel_frontbuffer *front,
>  {
>  	struct drm_i915_private *i915 = to_i915(front->obj->base.dev);
>  
> +	if (origin != ORIGIN_FLIP)
> +		return;
> +
>  	if (origin == ORIGIN_CS) {
>  		spin_lock(&i915->fb_tracking.lock);
>  		i915->fb_tracking.busy_bits |= frontbuffer_bits;
> @@ -185,6 +188,9 @@ void __intel_fb_flush(struct intel_frontbuffer *front,
>  {
>  	struct drm_i915_private *i915 = to_i915(front->obj->base.dev);
>  
> +	if (origin != ORIGIN_FLIP)
> +		return;
> +
>  	if (origin == ORIGIN_CS) {
>  		spin_lock(&i915->fb_tracking.lock);
>  		/* Filter out new bits since rendering started. */

This was originally a patch I wrote as a hack, it's fine to put it in as a hack at first, if we explain why it's needed.

And an audit of userspace that it's ok.



More information about the Intel-gfx-trybot mailing list