From 915e2fe34b6156447490a6eee4e1b6a99872d0b6 Mon Sep 17 00:00:00 2001 From: travankor Date: Wed, 23 Feb 2022 19:48:17 -0700 Subject: [PATCH] mesa: update to 21.3.7. --- ...e701177cf01c5590f59071ac1256b396d1b0.patch | 74 ------------------- srcpkgs/mesa/template | 5 +- 2 files changed, 3 insertions(+), 76 deletions(-) delete mode 100644 srcpkgs/mesa/patches/cd51e701177cf01c5590f59071ac1256b396d1b0.patch diff --git a/srcpkgs/mesa/patches/cd51e701177cf01c5590f59071ac1256b396d1b0.patch b/srcpkgs/mesa/patches/cd51e701177cf01c5590f59071ac1256b396d1b0.patch deleted file mode 100644 index 04bf61237f4e..000000000000 --- a/srcpkgs/mesa/patches/cd51e701177cf01c5590f59071ac1256b396d1b0.patch +++ /dev/null @@ -1,74 +0,0 @@ -From cd51e701177cf01c5590f59071ac1256b396d1b0 Mon Sep 17 00:00:00 2001 -From: Paulo Zanoni -Date: Mon, 10 Jan 2022 17:18:05 -0800 -Subject: [PATCH] iris: implement inter-context busy-tracking - -Previously, no buffers were ever marked as EXEC_OBJECT_ASYNC so the -Kernel would ensure dependency tracking for us. After we implemented -explicit busy tracking in commit 89a34cb8450a, only the external -objects kept relying on the Kernel's implicit tracking and Iris did -inter-batch busy tracking, meaning we lost inter-screen and -inter-context synchronization. This seemed fine to me since, as far as -I understood, it is the duty of the application to synchronize itself -against multiple screens and contexts. - -The problem here is that applications were actually relying on the old -behavior where the Kernel guarantees synchronization, so 89a34cb8450a -can be seen as a regression. This commit addresses the inter-context -synchronization case. - -Cc: mesa-stable -Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5731 -Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5812 -Fixes: 89a34cb8450a ("iris: switch to explicit busy tracking") -Tested-by: Konstantin Kharlamov -Reviewed-by: Kenneth Graunke -Signed-off-by: Paulo Zanoni -Part-of: ---- - .pick_status.json | 2 +- - src/gallium/drivers/iris/iris_batch.c | 8 ++++++++ - 2 files changed, 9 insertions(+), 1 deletion(-) - -diff --git a/.pick_status.json b/.pick_status.json -index d325da5ae33..e831bd32b72 100644 ---- a/.pick_status.json -+++ b/.pick_status.json -@@ -742,7 +742,7 @@ - "description": "iris: implement inter-context busy-tracking", - "nominated": true, - "nomination_type": 1, -- "resolution": 0, -+ "resolution": 1, - "main_sha": null, - "because_sha": "89a34cb8450a6fdaceb0e537613871fa86d93132" - }, -diff --git a/src/gallium/drivers/iris/iris_batch.c b/src/gallium/drivers/iris/iris_batch.c -index ef0fa147d38..90103449bf1 100644 ---- a/src/gallium/drivers/iris/iris_batch.c -+++ b/src/gallium/drivers/iris/iris_batch.c -@@ -717,6 +717,12 @@ update_bo_syncobjs(struct iris_batch *batch, struct iris_bo *bo, bool write) - move_syncobj_to_batch(batch, &deps->write_syncobjs[other_batch_idx], - I915_EXEC_FENCE_WAIT); - -+ /* If it's being written by our screen, wait on it too. This is relevant -+ * when there are multiple contexts on the same screen. */ -+ if (deps->write_syncobjs[batch_idx]) -+ move_syncobj_to_batch(batch, &deps->write_syncobjs[batch_idx], -+ I915_EXEC_FENCE_WAIT); -+ - struct iris_syncobj *batch_syncobj = iris_batch_get_signal_syncobj(batch); - - if (write) { -@@ -729,6 +735,8 @@ update_bo_syncobjs(struct iris_batch *batch, struct iris_bo *bo, bool write) - - move_syncobj_to_batch(batch, &deps->read_syncobjs[other_batch_idx], - I915_EXEC_FENCE_WAIT); -+ move_syncobj_to_batch(batch, &deps->read_syncobjs[batch_idx], -+ I915_EXEC_FENCE_WAIT); - - } else { - /* If we're reading, replace the other read from our batch index. */ --- -GitLab - diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index eb81cbb345a5..c90500de7416 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.5 +version=21.3.7 revision=1 build_style=meson configure_args="-Dglvnd=true -Dshared-glapi=enabled -Dgbm=enabled -Degl=enabled @@ -22,7 +22,7 @@ license="MIT, LGPL-2.1-or-later" homepage="https://www.mesa3d.org/" changelog="https://docs.mesa3d.org/relnotes/${version}.html" distfiles="https://mesa.freedesktop.org/archive/mesa-${version}.tar.xz" -checksum=d93b2a9d2464ee856d7637a07dff6b7cd950f295ad58518bb959f76882cf4a4c +checksum=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -113,6 +113,7 @@ if [ "$_have_nv" ]; then fi if [ "$_have_arm" ]; then + _have_vulkan=yes _gallium_drivers+=",kmsro" _gallium_drivers+=",v3d,vc4,freedreno,etnaviv,lima,panfrost" _vulkan_drivers+=",broadcom"