[PATCH] HACK: drm/i915: Hack for xrand --scale 1.2x1.2 issue

Jouni Högander jouni.hogander at intel.com
Fri Oct 14 13:18:53 UTC 2022


For some reason frontbuffer tracking doesn't work properly with
X when doing scaling.

Signed-off-by: Jouni Högander <jouni.hogander at intel.com>
---
 drivers/gpu/drm/i915/display/intel_frontbuffer.h | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_frontbuffer.h b/drivers/gpu/drm/i915/display/intel_frontbuffer.h
index 3c474ed937fb..b7338e272c30 100644
--- a/drivers/gpu/drm/i915/display/intel_frontbuffer.h
+++ b/drivers/gpu/drm/i915/display/intel_frontbuffer.h
@@ -157,8 +157,11 @@ static inline void intel_frontbuffer_flush(struct intel_frontbuffer *front,
 		return;
 
 	frontbuffer_bits = atomic_read(&front->bits);
-	if (!frontbuffer_bits)
-		return;
+	if (!frontbuffer_bits) {
+		if (origin != ORIGIN_DIRTYFB)
+			return;
+		frontbuffer_bits = 1;
+	}
 
 	__intel_fb_flush(front, origin, frontbuffer_bits);
 }
-- 
2.34.1



More information about the Intel-gfx-trybot mailing list