diff --git a/SOURCES/0001-llvmpipe-finish-rendering-before-flushing-frontbuffe.patch b/SOURCES/0001-llvmpipe-finish-rendering-before-flushing-frontbuffe.patch new file mode 100644 index 0000000..ed8508e --- /dev/null +++ b/SOURCES/0001-llvmpipe-finish-rendering-before-flushing-frontbuffe.patch @@ -0,0 +1,39 @@ +From 0db29ee48d4f4fd0858bcf7def39926e2ee19d63 Mon Sep 17 00:00:00 2001 +From: Dave Airlie +Date: Thu, 1 Sep 2022 11:37:27 +1000 +Subject: [PATCH] llvmpipe: finish rendering before flushing frontbuffer + resources. + +Fixes misrendering on front with mesa demos +--- + src/gallium/drivers/llvmpipe/lp_screen.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c +index 333d7695ee7..0fcbcccedd2 100644 +--- a/src/gallium/drivers/llvmpipe/lp_screen.c ++++ b/src/gallium/drivers/llvmpipe/lp_screen.c +@@ -51,6 +51,7 @@ + #include "lp_limits.h" + #include "lp_rast.h" + #include "lp_cs_tpool.h" ++#include "lp_flush.h" + + #include "frontend/sw_winsys.h" + +@@ -835,8 +836,11 @@ llvmpipe_flush_frontbuffer(struct pipe_screen *_screen, + struct llvmpipe_resource *texture = llvmpipe_resource(resource); + + assert(texture->dt); +- if (texture->dt) ++ ++ if (texture->dt) { ++ llvmpipe_flush_resource(_pipe, resource, 0, true, true, false, "frontbuffer"); + winsys->displaytarget_display(winsys, texture->dt, context_private, sub_box); ++ } + } + + static void +-- +2.31.1 + diff --git a/SPECS/mesa.spec b/SPECS/mesa.spec index 2d7d62a..ea9f06a 100644 --- a/SPECS/mesa.spec +++ b/SPECS/mesa.spec @@ -38,7 +38,7 @@ Name: mesa Summary: Mesa graphics libraries Version: 22.1.5 -Release: 1%{?rctag:.%{rctag}}%{?dist} +Release: 2%{?rctag:.%{rctag}}%{?dist} License: MIT URL: http://www.mesa3d.org @@ -56,6 +56,8 @@ Patch0: lavapipe-disable-env-var.patch Patch1: 0001-llvmpipe-make-last_fence-a-screen-rast-object-not-a-.patch Patch2: 0002-llvmpipe-keep-context-list-and-use-to-track-resource.patch +Patch3: 0001-llvmpipe-finish-rendering-before-flushing-frontbuffe.patch + BuildRequires: gcc BuildRequires: gcc-c++ @@ -546,6 +548,9 @@ done %endif %changelog +* Thu Sep 01 2022 Dave Airlie - 22.1.5-1 - Update to 22.1.5 - add some crocus and llvmpipe fixes