From 2af65384fa8bf89f6dc94ca21640617aad9ffa7c Mon Sep 17 00:00:00 2001 From: zlice Date: Tue, 4 Oct 2022 15:47:21 -0400 Subject: [PATCH] mesa: update to 22.2.0. --- ...ch64-force-persistent-buffers-to-GTT.patch | 39 ------------------- ...se-elf-tls.patch => add-elf-use-tls.patch} | 28 ++++++------- .../mesa/patches/megadriver-symlinks.patch | 25 ------------ srcpkgs/mesa/patches/musl-stacksize.patch | 13 ++++--- srcpkgs/mesa/template | 4 +- 5 files changed, 22 insertions(+), 87 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch rename srcpkgs/mesa/patches/{add-use-elf-tls.patch => add-elf-use-tls.patch} (57%) delete mode 100644 srcpkgs/mesa/patches/megadriver-symlinks.patch diff --git a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch b/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch deleted file mode 100644 index 725a306ec30b..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,39 +0,0 @@ -https://gist.github.com/jnettlet/4dd6e43bcd5a551df29b12d3212e6edd - -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton -Date: Fri, 14 Aug 2020 13:36:08 +0200 -Subject: [PATCH] radeonsi: On Aarch64 force persistent buffers to GTT - -This fixes a glamore corruption issue on the HoneyComb and by -internet reports should also fix problems seen on Huaweii -Kunpeng hardware. - -The root cause of the corruption needs to be worked out, but -this patch also adds a noticable performance improvement. The -aquarium webgl demo under chromium increases from 39-49 FPS -when 5000 fish being rendered is selected. Glmark scores also -improve by ~200 with no specific tests showing any regression. - -Signed-off-by: Jon Nettleton ---- - src/gallium/drivers/radeonsi/si_buffer.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/gallium/drivers/radeonsi/si_buffer.c b/src/gallium/drivers/radeonsi/si_buffer.c -index 6b58aebee2d..c9e983367a0 100644 ---- a/src/gallium/drivers/radeonsi/si_buffer.c -+++ b/src/gallium/drivers/radeonsi/si_buffer.c -@@ -151,6 +151,10 @@ void si_init_resource_fields(struct si_screen *sscreen, struct si_resource *res, - */ - if (!sscreen->info.kernel_flushes_hdp_before_ib || !sscreen->info.is_amdgpu) - res->domains = RADEON_DOMAIN_GTT; -+ -+#if defined(PIPE_ARCH_AARCH64) -+ res->domains = RADEON_DOMAIN_GTT; -+#endif - } - - /* Tiled textures are unmappable. Always put them in VRAM. */ --- -2.26.2 diff --git a/srcpkgs/mesa/patches/add-use-elf-tls.patch b/srcpkgs/mesa/patches/add-elf-use-tls.patch similarity index 57% rename from srcpkgs/mesa/patches/add-use-elf-tls.patch rename to srcpkgs/mesa/patches/add-elf-use-tls.patch index 6bb599d2475e..c9a154e4ccea 100644 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ b/srcpkgs/mesa/patches/add-elf-use-tls.patch @@ -1,33 +1,29 @@ -Upstream: https://gitlab.freedesktop.org/mesa/mesa/issues/966 -Status: Not fixed upstream ---- a/meson.build 2022-05-02 16:58:59.796354436 -0400 -+++ b/meson.build 2022-05-02 17:07:49.628310289 -0400 -@@ -490,8 +490,11 @@ +--- a/meson.build 2022-09-20 17:01:37.000000000 -0400 ++++ b/meson.build 2022-10-04 16:17:45.905483957 -0400 +@@ -504,6 +504,11 @@ pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper()) endforeach - --use_elf_tls = true --pre_args += '-DUSE_ELF_TLS' -+#use_elf_tls = true + +use_elf_tls = get_option('use-elf-tls') +if use_elf_tls + pre_args += '-DUSE_ELF_TLS' +endif - ++ if with_platform_android and get_option('platform-sdk-version') >= 29 # By default the NDK compiler, at least, emits emutls references instead of ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -446,6 +446,12 @@ option( - value : 25, + # ELF TLS, even when building targeting newer API levels. Make it actually do +--- a/meson_options.txt 2022-09-20 17:01:37.000000000 -0400 ++++ b/meson_options.txt 2022-10-04 16:21:30.469304615 -0400 +@@ -472,6 +472,12 @@ description : 'Android Platform SDK version. Default: Nougat version.' ) -+option( + option( + 'use-elf-tls', + type : 'boolean', + value : true, + description : 'Build support for initial-exec TLS model' +) - option( ++option( 'zstd', type : 'combo', + choices : ['auto', 'true', 'false', 'enabled', 'disabled'], diff --git a/srcpkgs/mesa/patches/megadriver-symlinks.patch b/srcpkgs/mesa/patches/megadriver-symlinks.patch deleted file mode 100644 index c19c42719422..000000000000 --- a/srcpkgs/mesa/patches/megadriver-symlinks.patch +++ /dev/null @@ -1,25 +0,0 @@ -This converts megadriver installation to use symlinks so that we do -not have to deal with skipping the strip stage for some files, as -a result simplifying our template greatly. - ---- a/bin/install_megadrivers.py -+++ b/bin/install_megadrivers.py -@@ -56,7 +56,7 @@ def main(): - if os.path.lexists(abs_driver): - os.unlink(abs_driver) - print('installing {} to {}'.format(args.megadriver, abs_driver)) -- os.link(master, abs_driver) -+ os.symlink(os.path.basename(master), abs_driver) - - try: - ret = os.getcwd() -@@ -71,8 +71,7 @@ def main(): - finally: - os.chdir(ret) - -- # Remove meson-created master .so and symlinks -- os.unlink(master) -+ # Remove meson-created symlinks - name, ext = os.path.splitext(master) - while ext != '.so': - if os.path.lexists(name): diff --git a/srcpkgs/mesa/patches/musl-stacksize.patch b/srcpkgs/mesa/patches/musl-stacksize.patch index be2f5d454f59..3b68bbad4292 100644 --- a/srcpkgs/mesa/patches/musl-stacksize.patch +++ b/srcpkgs/mesa/patches/musl-stacksize.patch @@ -1,8 +1,6 @@ -diff --git ./include/c11/threads_posix.h ./include/c11/threads_posix.h -index 45cb6075e6..1a2ea1a450 100644 ---- a/include/c11/threads_posix.h -+++ b/include/c11/threads_posix.h -@@ -281,15 +281,29 @@ static inline int +--- src/c11/impl/threads_posix.c 2022-10-04 16:30:04.564345425 -0400 ++++ src/c11/impl/threads_posix.new.c 2022-10-04 16:36:29.532136641 -0400 +@@ -255,18 +255,34 @@ thrd_create(thrd_t *thr, thrd_start_t func, void *arg) { struct impl_thrd_param *pack; @@ -31,5 +29,10 @@ index 45cb6075e6..1a2ea1a450 100644 + pthread_attr_destroy(&attr); +#endif return thrd_success; ++ } } ++ + // 7.25.5.2 + thrd_t + thrd_current(void) diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index 6b86c2895bfd..0f40c5abc462 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=22.1.7 +version=22.2.0 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=da838eb2cf11d0e08d0e9944f6bd4d96987fdc59ea2856f8c70a31a82b355d89 +checksum=b1f9c8fd08f2cae3adf83355bef4d2398e8025f44947332880f2d0066bdafa8c build_options="wayland" build_options_default="wayland"