[-- Attachment #1: Type: text/plain, Size: 1101 bytes --] There is a new pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 [WIP] mesa: update to 22.0.2. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 5578 bytes --] From f755820bdbed594aefe156cb696b82c5ab61b03c Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 15:26:37 -0400 Subject: [PATCH] mesa: update to 22.0.2. --- ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------- srcpkgs/mesa/patches/add-use-elf-tls.patch | 34 ----------------- srcpkgs/mesa/template | 12 +++--- 3 files changed, 6 insertions(+), 78 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch delete mode 100644 srcpkgs/mesa/patches/add-use-elf-tls.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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch deleted file mode 100644 index 420665ea8377..000000000000 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ /dev/null @@ -1,34 +0,0 @@ -Upstream: https://gitlab.freedesktop.org/mesa/mesa/issues/966 -Status: Not fixed upstream - -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -446,6 +446,12 @@ option( - value : 25, - description : 'Android Platform SDK version. Default: Nougat version.' - ) -+option( -+ 'use-elf-tls', -+ type : 'boolean', -+ value : true, -+ description : 'Build support for initial-exec TLS model' -+) - option( - 'zstd', - type : 'combo', diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index c90500de7416..e1bd0f4c997e 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.2 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=df4fa560dcce6680133067cd15b0505fc424ca703244ce9ab247c74d2fab6885 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,7 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" + #_dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -93,7 +93,7 @@ if [ "$_have_intel" ]; then _have_vulkan=yes _gallium_drivers+=",crocus,iris" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" + #_dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +105,8 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" + #else + # _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 1106 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 [WIP] mesa: update to 22.0.2. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 10711 bytes --] From 04c81a78e1f85869d2dc27c84166603cf165b7fa Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 15:26:37 -0400 Subject: [PATCH] mesa: update to 22.0.2 --- srcpkgs/claws-mail/patches/gmail_sux.patch | 40 +++++++++++++++++++ srcpkgs/fluxbox/patches/fsbs.patch | 27 +++++++++++++ srcpkgs/fluxbox/patches/relative.patch | 15 +++++++ ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------ srcpkgs/mesa/patches/add-use-elf-tls.patch | 34 ---------------- srcpkgs/mesa/patches/mesa_meson_tls.patch | 15 +++++++ srcpkgs/mesa/template | 12 +++--- 7 files changed, 103 insertions(+), 78 deletions(-) create mode 100644 srcpkgs/claws-mail/patches/gmail_sux.patch create mode 100644 srcpkgs/fluxbox/patches/fsbs.patch create mode 100644 srcpkgs/fluxbox/patches/relative.patch delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch delete mode 100644 srcpkgs/mesa/patches/add-use-elf-tls.patch create mode 100644 srcpkgs/mesa/patches/mesa_meson_tls.patch diff --git a/srcpkgs/claws-mail/patches/gmail_sux.patch b/srcpkgs/claws-mail/patches/gmail_sux.patch new file mode 100644 index 000000000000..1fd99d0af0c1 --- /dev/null +++ b/srcpkgs/claws-mail/patches/gmail_sux.patch @@ -0,0 +1,40 @@ +--- a/src/plugins/notification/notification_core.c ++++ a/src/plugins/notification/notification_core.c +@@ -295,7 +296,8 @@ gboolean notification_notified_hash_msginfo_update(MsgInfoUpdate *msg_update) + g_return_val_if_fail(msg_update != NULL, FALSE); + + if((msg_update->flags & MSGINFO_UPDATE_FLAGS) && +- !MSG_IS_NEW(msg_update->msginfo->flags)) { ++ !MSG_IS_NEW(msg_update->msginfo->flags) && ++ !MSG_IS_UNREAD(msg_update->msginfo->flags)) { + + MsgInfo *msg; + gchar *msgid; +@@ -353,15 +354,15 @@ static gboolean notification_traverse_hash_startup(GNode *node, gpointer data) + FolderItem *item = (FolderItem*) node->data; + gint new_msgs_left; + +- if(!(item->new_msgs)) ++ if(!(item->new_msgs + item->unread_msgs)) + return FALSE; + +- new_msgs_left = item->new_msgs; ++ new_msgs_left = item->new_msgs + item->unread_msgs; + msg_list = folder_item_get_msg_list(item); + + for(walk = msg_list; walk; walk = g_slist_next(walk)) { + MsgInfo *msg = (MsgInfo*) walk->data; +- if(MSG_IS_NEW(msg->flags)) { ++ if(MSG_IS_NEW(msg->flags) || MSG_IS_UNREAD(msg->flags)) { + gchar *msgid; + + if(msg->msgid) +@@ -412,7 +413,7 @@ void notification_new_unnotified_msgs(FolderItemUpdateData *update_data) + MsgInfo *msg; + msg = (MsgInfo*) walk->data; + +- if(MSG_IS_NEW(msg->flags)) { ++ if(MSG_IS_NEW(msg->flags) || MSG_IS_UNREAD(msg->flags)) { + gchar *msgid; + + if(msg->msgid) diff --git a/srcpkgs/fluxbox/patches/fsbs.patch b/srcpkgs/fluxbox/patches/fsbs.patch new file mode 100644 index 000000000000..9e574184285a --- /dev/null +++ b/srcpkgs/fluxbox/patches/fsbs.patch @@ -0,0 +1,27 @@ +--- a/src/Window.cc 2022-04-18 15:59:33.000000000 -0400 ++++ b/src/Window.cc 2022-05-02 09:14:10.092678272 -0400 +@@ -532,19 +532,19 @@ + if (!m_state.fullscreen) { + unsigned int new_width = 0, new_height = 0; + if (m_client->width() >= screen().width()) { +- m_state.maximized |= WindowState::MAX_HORZ; ++ //m_state.maximized |= WindowState::MAX_HORZ; + new_width = 2 * screen().width() / 3; + } + if (m_client->height() >= screen().height()) { +- m_state.maximized |= WindowState::MAX_VERT; ++ //m_state.maximized |= WindowState::MAX_VERT; + new_height = 2 * screen().height() / 3; + } + if (new_width || new_height) { +- const int maximized = m_state.maximized; +- m_state.maximized = WindowState::MAX_NONE; ++ //const int maximized = m_state.maximized; ++ //m_state.maximized = WindowState::MAX_NONE; + resize(new_width ? new_width : width(), new_height ? new_height : height()); + m_placed = false; +- m_state.maximized = maximized; ++ //m_state.maximized = maximized; + } + } + diff --git a/srcpkgs/fluxbox/patches/relative.patch b/srcpkgs/fluxbox/patches/relative.patch new file mode 100644 index 000000000000..dc3ddb5181b5 --- /dev/null +++ b/srcpkgs/fluxbox/patches/relative.patch @@ -0,0 +1,15 @@ +diff --git a/src/FbTk/Container.cc b/src/FbTk/Container.cc +index cea761b3..0e050a0b 100644 +--- a/src/FbTk/Container.cc ++++ b/src/FbTk/Container.cc +@@ -365,6 +365,9 @@ void Container::repositionItems() { + const ItemList::iterator it_end = end(); + + int rounding_error = 0; ++ if (align == RELATIVE || total_width == m_max_total_size) { ++ rounding_error = total_width - ((max_width_per_client + borderW)* num_items - borderW); ++ } + + int next_x = -borderW; // zero so the border of the first shows + int extra = 0; + 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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch deleted file mode 100644 index 420665ea8377..000000000000 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ /dev/null @@ -1,34 +0,0 @@ -Upstream: https://gitlab.freedesktop.org/mesa/mesa/issues/966 -Status: Not fixed upstream - -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -446,6 +446,12 @@ option( - value : 25, - description : 'Android Platform SDK version. Default: Nougat version.' - ) -+option( -+ 'use-elf-tls', -+ type : 'boolean', -+ value : true, -+ description : 'Build support for initial-exec TLS model' -+) - option( - 'zstd', - type : 'combo', diff --git a/srcpkgs/mesa/patches/mesa_meson_tls.patch b/srcpkgs/mesa/patches/mesa_meson_tls.patch new file mode 100644 index 000000000000..b8c543004ae3 --- /dev/null +++ b/srcpkgs/mesa/patches/mesa_meson_tls.patch @@ -0,0 +1,15 @@ +--- a/src/meson.build 2022-05-02 16:58:59.796354436 -0400 ++++ b/src/meson.build 2022-05-02 16:58:48.477355379 -0400 +@@ -490,8 +490,10 @@ + pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper()) + endforeach + +-use_elf_tls = true +-pre_args += '-DUSE_ELF_TLS' ++#use_elf_tls = true ++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 diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index c90500de7416..e1bd0f4c997e 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.2 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=df4fa560dcce6680133067cd15b0505fc424ca703244ce9ab247c74d2fab6885 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,7 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" + #_dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -93,7 +93,7 @@ if [ "$_have_intel" ]; then _have_vulkan=yes _gallium_drivers+=",crocus,iris" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" + #_dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +105,8 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" + #else + # _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 1106 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 [WIP] mesa: update to 22.0.2. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 10754 bytes --] From b48e0cf9571ebd0e3626a32b60f94d824ac44246 Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 15:26:37 -0400 Subject: [PATCH] mesa: update to 22.0.2 --- srcpkgs/claws-mail/patches/gmail_sux.patch | 40 +++++++++++++++++++ srcpkgs/fluxbox/patches/fsbs.patch | 27 +++++++++++++ srcpkgs/fluxbox/patches/relative.patch | 15 +++++++ ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------ srcpkgs/mesa/patches/add-use-elf-tls.patch | 34 ---------------- srcpkgs/mesa/patches/mesa_meson_tls.patch | 16 ++++++++ srcpkgs/mesa/template | 12 +++--- 7 files changed, 104 insertions(+), 78 deletions(-) create mode 100644 srcpkgs/claws-mail/patches/gmail_sux.patch create mode 100644 srcpkgs/fluxbox/patches/fsbs.patch create mode 100644 srcpkgs/fluxbox/patches/relative.patch delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch delete mode 100644 srcpkgs/mesa/patches/add-use-elf-tls.patch create mode 100644 srcpkgs/mesa/patches/mesa_meson_tls.patch diff --git a/srcpkgs/claws-mail/patches/gmail_sux.patch b/srcpkgs/claws-mail/patches/gmail_sux.patch new file mode 100644 index 000000000000..1fd99d0af0c1 --- /dev/null +++ b/srcpkgs/claws-mail/patches/gmail_sux.patch @@ -0,0 +1,40 @@ +--- a/src/plugins/notification/notification_core.c ++++ a/src/plugins/notification/notification_core.c +@@ -295,7 +296,8 @@ gboolean notification_notified_hash_msginfo_update(MsgInfoUpdate *msg_update) + g_return_val_if_fail(msg_update != NULL, FALSE); + + if((msg_update->flags & MSGINFO_UPDATE_FLAGS) && +- !MSG_IS_NEW(msg_update->msginfo->flags)) { ++ !MSG_IS_NEW(msg_update->msginfo->flags) && ++ !MSG_IS_UNREAD(msg_update->msginfo->flags)) { + + MsgInfo *msg; + gchar *msgid; +@@ -353,15 +354,15 @@ static gboolean notification_traverse_hash_startup(GNode *node, gpointer data) + FolderItem *item = (FolderItem*) node->data; + gint new_msgs_left; + +- if(!(item->new_msgs)) ++ if(!(item->new_msgs + item->unread_msgs)) + return FALSE; + +- new_msgs_left = item->new_msgs; ++ new_msgs_left = item->new_msgs + item->unread_msgs; + msg_list = folder_item_get_msg_list(item); + + for(walk = msg_list; walk; walk = g_slist_next(walk)) { + MsgInfo *msg = (MsgInfo*) walk->data; +- if(MSG_IS_NEW(msg->flags)) { ++ if(MSG_IS_NEW(msg->flags) || MSG_IS_UNREAD(msg->flags)) { + gchar *msgid; + + if(msg->msgid) +@@ -412,7 +413,7 @@ void notification_new_unnotified_msgs(FolderItemUpdateData *update_data) + MsgInfo *msg; + msg = (MsgInfo*) walk->data; + +- if(MSG_IS_NEW(msg->flags)) { ++ if(MSG_IS_NEW(msg->flags) || MSG_IS_UNREAD(msg->flags)) { + gchar *msgid; + + if(msg->msgid) diff --git a/srcpkgs/fluxbox/patches/fsbs.patch b/srcpkgs/fluxbox/patches/fsbs.patch new file mode 100644 index 000000000000..9e574184285a --- /dev/null +++ b/srcpkgs/fluxbox/patches/fsbs.patch @@ -0,0 +1,27 @@ +--- a/src/Window.cc 2022-04-18 15:59:33.000000000 -0400 ++++ b/src/Window.cc 2022-05-02 09:14:10.092678272 -0400 +@@ -532,19 +532,19 @@ + if (!m_state.fullscreen) { + unsigned int new_width = 0, new_height = 0; + if (m_client->width() >= screen().width()) { +- m_state.maximized |= WindowState::MAX_HORZ; ++ //m_state.maximized |= WindowState::MAX_HORZ; + new_width = 2 * screen().width() / 3; + } + if (m_client->height() >= screen().height()) { +- m_state.maximized |= WindowState::MAX_VERT; ++ //m_state.maximized |= WindowState::MAX_VERT; + new_height = 2 * screen().height() / 3; + } + if (new_width || new_height) { +- const int maximized = m_state.maximized; +- m_state.maximized = WindowState::MAX_NONE; ++ //const int maximized = m_state.maximized; ++ //m_state.maximized = WindowState::MAX_NONE; + resize(new_width ? new_width : width(), new_height ? new_height : height()); + m_placed = false; +- m_state.maximized = maximized; ++ //m_state.maximized = maximized; + } + } + diff --git a/srcpkgs/fluxbox/patches/relative.patch b/srcpkgs/fluxbox/patches/relative.patch new file mode 100644 index 000000000000..dc3ddb5181b5 --- /dev/null +++ b/srcpkgs/fluxbox/patches/relative.patch @@ -0,0 +1,15 @@ +diff --git a/src/FbTk/Container.cc b/src/FbTk/Container.cc +index cea761b3..0e050a0b 100644 +--- a/src/FbTk/Container.cc ++++ b/src/FbTk/Container.cc +@@ -365,6 +365,9 @@ void Container::repositionItems() { + const ItemList::iterator it_end = end(); + + int rounding_error = 0; ++ if (align == RELATIVE || total_width == m_max_total_size) { ++ rounding_error = total_width - ((max_width_per_client + borderW)* num_items - borderW); ++ } + + int next_x = -borderW; // zero so the border of the first shows + int extra = 0; + 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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch deleted file mode 100644 index 420665ea8377..000000000000 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ /dev/null @@ -1,34 +0,0 @@ -Upstream: https://gitlab.freedesktop.org/mesa/mesa/issues/966 -Status: Not fixed upstream - -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -446,6 +446,12 @@ option( - value : 25, - description : 'Android Platform SDK version. Default: Nougat version.' - ) -+option( -+ 'use-elf-tls', -+ type : 'boolean', -+ value : true, -+ description : 'Build support for initial-exec TLS model' -+) - option( - 'zstd', - type : 'combo', diff --git a/srcpkgs/mesa/patches/mesa_meson_tls.patch b/srcpkgs/mesa/patches/mesa_meson_tls.patch new file mode 100644 index 000000000000..a041acd4e939 --- /dev/null +++ b/srcpkgs/mesa/patches/mesa_meson_tls.patch @@ -0,0 +1,16 @@ +--- a/src/meson.build 2022-05-02 16:58:59.796354436 -0400 ++++ b/src/meson.build 2022-05-02 16:58:48.477355379 -0400 +@@ -490,8 +490,10 @@ + 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 diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index c90500de7416..e1bd0f4c997e 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.2 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=df4fa560dcce6680133067cd15b0505fc424ca703244ce9ab247c74d2fab6885 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,7 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" + #_dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -93,7 +93,7 @@ if [ "$_have_intel" ]; then _have_vulkan=yes _gallium_drivers+=",crocus,iris" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" + #_dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +105,8 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" + #else + # _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 1106 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 [WIP] mesa: update to 22.0.2. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 8102 bytes --] From 47fdd74ae95bae56b53cdb80bd46dbccab2d14fa Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 17:14:46 -0400 Subject: [PATCH] mesa: update to 22.0.2 --- ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------- srcpkgs/mesa/patches/add-use-elf-tls.patch | 34 ----------------- .../mesa/patches/megadriver-symlinks.patch | 25 ------------ srcpkgs/mesa/patches/meson_build_tls.patch | 31 +++++++++++++++ srcpkgs/mesa/template | 12 +++--- 5 files changed, 37 insertions(+), 103 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch delete mode 100644 srcpkgs/mesa/patches/add-use-elf-tls.patch delete mode 100644 srcpkgs/mesa/patches/megadriver-symlinks.patch create mode 100644 srcpkgs/mesa/patches/meson_build_tls.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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch deleted file mode 100644 index 420665ea8377..000000000000 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ /dev/null @@ -1,34 +0,0 @@ -Upstream: https://gitlab.freedesktop.org/mesa/mesa/issues/966 -Status: Not fixed upstream - -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -446,6 +446,12 @@ option( - value : 25, - description : 'Android Platform SDK version. Default: Nougat version.' - ) -+option( -+ 'use-elf-tls', -+ type : 'boolean', -+ value : true, -+ description : 'Build support for initial-exec TLS model' -+) - option( - 'zstd', - type : 'combo', 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/meson_build_tls.patch b/srcpkgs/mesa/patches/meson_build_tls.patch new file mode 100644 index 000000000000..e38a6a4bbf31 --- /dev/null +++ b/srcpkgs/mesa/patches/meson_build_tls.patch @@ -0,0 +1,31 @@ +--- 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 @@ + 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, + description : 'Android Platform SDK version. Default: Nougat version.' + ) ++option( ++ 'use-elf-tls', ++ type : 'boolean', ++ value : true, ++ description : 'Build support for initial-exec TLS model' ++) + option( + 'zstd', + type : 'combo', diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index c90500de7416..e1bd0f4c997e 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.2 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=df4fa560dcce6680133067cd15b0505fc424ca703244ce9ab247c74d2fab6885 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,7 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" + #_dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -93,7 +93,7 @@ if [ "$_have_intel" ]; then _have_vulkan=yes _gallium_drivers+=",crocus,iris" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" + #_dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +105,8 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" + #else + # _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 1106 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 [WIP] mesa: update to 22.0.2. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 7065 bytes --] From 87aee3c5b55f0e5fbd327c773b84f9c4c0474c25 Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 17:14:46 -0400 Subject: [PATCH] mesa: update to 22.0.2 --- ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------- srcpkgs/mesa/patches/add-use-elf-tls.patch | 33 ++++++++-------- .../mesa/patches/megadriver-symlinks.patch | 25 ------------ srcpkgs/mesa/template | 12 +++--- 4 files changed, 21 insertions(+), 87 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch 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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch index 420665ea8377..e38a6a4bbf31 100644 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ b/srcpkgs/mesa/patches/add-use-elf-tls.patch @@ -1,22 +1,19 @@ -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 @@ + pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper()) + endforeach -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 +-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( 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/template b/srcpkgs/mesa/template index c90500de7416..e1bd0f4c997e 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.2 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=df4fa560dcce6680133067cd15b0505fc424ca703244ce9ab247c74d2fab6885 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,7 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" + #_dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -93,7 +93,7 @@ if [ "$_have_intel" ]; then _have_vulkan=yes _gallium_drivers+=",crocus,iris" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" + #_dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +105,8 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" + #else + # _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 548 bytes --] New comment by tsndqst on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1119163052 Comment: I believe the `dri` i915 driver was dropped but the `gallium` driver is still there. https://gitlab.freedesktop.org/mesa/mesa/-/blob/mesa-22.0.2/meson_options.txt#L77 I'm not sure about the i965 driver though. Oh, it looks like that was removed with https://gitlab.freedesktop.org/mesa/mesa/-/commit/cdde031ac2c8124721655532ee6f4149e20e9c61 This same commit added i915 to the list of gallium drivers.
[-- Attachment #1: Type: text/plain, Size: 1213 bytes --] New review comment by tsndqst on void-packages repository https://github.com/void-linux/void-packages/pull/36961#discussion_r867224194 Comment: ```suggestion _gallium_drivers+=",crocus,iris,i915" ``` I suggest adding i915 to the gallium drivers list. I cross-compiled this for i686 and tested on my EeePC. `glxinfo -B` in X shows this output: ```name of display: :0 display: :0 screen: 0 direct rendering: Yes Extended renderer info (GLX_MESA_query_renderer): Vendor: Mesa Project (0x8086) Device: i915 (chipset: 945GME) (0x27ae) Version: 22.0.2 Accelerated: yes Video memory: 192MB Unified memory: yes Preferred profile: compat (0x2) Max core profile version: 0.0 Max compat profile version: 2.1 Max GLES1 profile version: 1.1 Max GLES[23] profile version: 2.0 OpenGL vendor string: Mesa Project OpenGL renderer string: i915 (chipset: 945GME) OpenGL version string: 2.1 Mesa 22.0.2 OpenGL shading language version string: 1.20 OpenGL ES profile version string: OpenGL ES 2.0 Mesa 22.0.2 OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16 ``` I did notice that `sway` (wayland) uses the `softpipe` renderer.
[-- Attachment #1: Type: text/plain, Size: 1106 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 [WIP] mesa: update to 22.0.2. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 7808 bytes --] From 87aee3c5b55f0e5fbd327c773b84f9c4c0474c25 Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 17:14:46 -0400 Subject: [PATCH 1/2] mesa: update to 22.0.2 --- ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------- srcpkgs/mesa/patches/add-use-elf-tls.patch | 33 ++++++++-------- .../mesa/patches/megadriver-symlinks.patch | 25 ------------ srcpkgs/mesa/template | 12 +++--- 4 files changed, 21 insertions(+), 87 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch 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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch index 420665ea8377..e38a6a4bbf31 100644 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ b/srcpkgs/mesa/patches/add-use-elf-tls.patch @@ -1,22 +1,19 @@ -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 @@ + pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper()) + endforeach -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 +-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( 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/template b/srcpkgs/mesa/template index c90500de7416..e1bd0f4c997e 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.2 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=df4fa560dcce6680133067cd15b0505fc424ca703244ce9ab247c74d2fab6885 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,7 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" + #_dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -93,7 +93,7 @@ if [ "$_have_intel" ]; then _have_vulkan=yes _gallium_drivers+=",crocus,iris" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" + #_dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +105,8 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" + #else + # _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri" From f3c62fbde1882d35285bb9b0ff3c2a12a5f7cf61 Mon Sep 17 00:00:00 2001 From: zlice <zlice@users.noreply.github.com> Date: Fri, 6 May 2022 17:25:54 -0400 Subject: [PATCH 2/2] move i915 to gallium Co-authored-by: Tim Sandquist <tsndqst@users.noreply.github.com> --- srcpkgs/mesa/template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index e1bd0f4c997e..b39c05a37bcb 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -91,7 +91,7 @@ fi if [ "$_have_intel" ]; then _have_vulkan=yes - _gallium_drivers+=",crocus,iris" + _gallium_drivers+=",crocus,iris,i915" _vulkan_drivers+=",intel" #_dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel"
[-- Attachment #1: Type: text/plain, Size: 426 bytes --] New comment by wundrweapon on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1120143356 Comment: I'm getting a build error when trying to build elfutils? I'd also like to mention [22.0.3 is already out](https://docs.mesa3d.org/relnotes/22.0.3.html) with some bug fixes. I'm hoping to see 22.x.x on Void soon; I just got a 6000 series card and I'm dying to see what it can do
[-- Attachment #1: Type: text/plain, Size: 283 bytes --] New comment by zlice on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1120196912 Comment: Not sure what's going on with your elfutils, I haven't had to touch it. Could try 22.0.3, didn't notice anything weird with .2 yet but why not.
[-- Attachment #1: Type: text/plain, Size: 453 bytes --] New comment by wundrweapon on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1120277224 Comment: Rebasing fixed the build -- oops! 22.0.3 builds just fine, too, but unfortunately is not enough to get ray tracing in DOOM Eternal. I note that the game reports Vulkan 1.3.x but the `vulkan-loader` and `Vulkan-Headers` packages are 1.2.x, but that should be no issue because Mesa officially implements 1.2.x
[-- Attachment #1: Type: text/plain, Size: 486 bytes --] New comment by wundrweapon on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1120277224 Comment: Rebasing fixed the build -- oops! 22.0.3 builds just fine, too, ~~but unfortunately is not enough to get ray tracing in DOOM Eternal. I note that the game reports Vulkan 1.3.x but the `vulkan-loader` and `Vulkan-Headers` packages are 1.2.x, but that should be no issue because Mesa officially implements 1.2.x~~ [irrelevant + outdated info]
[-- Attachment #1: Type: text/plain, Size: 414 bytes --] New comment by HadetTheUndying on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1120577127 Comment: This looks fine, but I think you need to squash it into one commit. A Maintainer would need to come in and verify, but that's how it's been in the past when I've updated the package. I'll start testing 22.0.3 tomorrow. It built fine on all my my cross-arch builds.
[-- Attachment #1: Type: text/plain, Size: 1106 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 [WIP] mesa: update to 22.0.2. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 6966 bytes --] From ea987db7768b5720262a0f0b2b6d3d5e7205c705 Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 17:14:46 -0400 Subject: [PATCH] mesa: update to 22.0.3 --- ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------- srcpkgs/mesa/patches/add-use-elf-tls.patch | 33 ++++++++-------- .../mesa/patches/megadriver-symlinks.patch | 25 ------------ srcpkgs/mesa/template | 8 +--- 4 files changed, 17 insertions(+), 87 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch 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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch index 420665ea8377..e38a6a4bbf31 100644 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ b/srcpkgs/mesa/patches/add-use-elf-tls.patch @@ -1,22 +1,19 @@ -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 @@ + pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper()) + endforeach -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 +-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( 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/template b/srcpkgs/mesa/template index c90500de7416..c0e3476f9726 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.3 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=9f2b30f5276a9abaf71aafc6979685e2636189de1a87aea2c9e69744a6d0ebb9 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,6 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -93,7 +92,6 @@ if [ "$_have_intel" ]; then _have_vulkan=yes _gallium_drivers+=",crocus,iris" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +103,6 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 235 bytes --] New review comment by tsndqst on void-packages repository https://github.com/void-linux/void-packages/pull/36961#discussion_r873075789 Comment: @zlice it looks like you lost the change that added i915 to the list of gallium drivers.
[-- Attachment #1: Type: text/plain, Size: 1106 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 [WIP] mesa: update to 22.0.2. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 7013 bytes --] From 36ad89ce52d1c330c127c56b2873ed097f5c069e Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 17:14:46 -0400 Subject: [PATCH] mesa: update to 22.0.3 --- ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------- srcpkgs/mesa/patches/add-use-elf-tls.patch | 33 ++++++++-------- .../mesa/patches/megadriver-symlinks.patch | 25 ------------ srcpkgs/mesa/template | 10 ++--- 4 files changed, 18 insertions(+), 88 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch 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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch index 420665ea8377..e38a6a4bbf31 100644 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ b/srcpkgs/mesa/patches/add-use-elf-tls.patch @@ -1,22 +1,19 @@ -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 @@ + pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper()) + endforeach -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 +-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( 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/template b/srcpkgs/mesa/template index c90500de7416..e01b7512e60a 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.3 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=9f2b30f5276a9abaf71aafc6979685e2636189de1a87aea2c9e69744a6d0ebb9 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,6 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -91,9 +90,8 @@ fi if [ "$_have_intel" ]; then _have_vulkan=yes - _gallium_drivers+=",crocus,iris" + _gallium_drivers+=",crocus,iris,i915" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +103,6 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 294 bytes --] New comment by zlice on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1126929239 Comment: Removed 'wip'. If I should make another branch since this one is typo'd and incorrect version, or make any other updates to the template and drivers, lmk.
[-- Attachment #1: Type: text/plain, Size: 199 bytes --] New comment by HadetTheUndying on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1133608007 Comment: Is anything holding this PR up? 22.0.4 is now out
[-- Attachment #1: Type: text/plain, Size: 1100 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 mesa: update to 22.0.3. #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 7013 bytes --] From e476e99ef2733da52acf6937c3e6ef12e9eb7567 Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 17:14:46 -0400 Subject: [PATCH] mesa: update to 22.0.4 --- ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------- srcpkgs/mesa/patches/add-use-elf-tls.patch | 33 ++++++++-------- .../mesa/patches/megadriver-symlinks.patch | 25 ------------ srcpkgs/mesa/template | 10 ++--- 4 files changed, 18 insertions(+), 88 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch 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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch index 420665ea8377..e38a6a4bbf31 100644 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ b/srcpkgs/mesa/patches/add-use-elf-tls.patch @@ -1,22 +1,19 @@ -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 @@ + pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper()) + endforeach -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 +-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( 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/template b/srcpkgs/mesa/template index c90500de7416..60d7c6d8c080 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.4 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=c7971f58fa826e474617cda53250c6600fce60994b9fac5b641522e21f471ed4 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,6 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -91,9 +90,8 @@ fi if [ "$_have_intel" ]; then _have_vulkan=yes - _gallium_drivers+=",crocus,iris" + _gallium_drivers+=",crocus,iris,i915" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +103,6 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 328 bytes --] New comment by zlice on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1134811743 Comment: Anyone else using 22.0.4 ? I just went back to 22.0.3 to see if these weird glitches I've been having are from that or not. Just had a desktop lockup for e.g. (visible but not responding).
[-- Attachment #1: Type: text/plain, Size: 274 bytes --] New comment by RicArch97 on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1138115237 Comment: Runs fine for me on Sway. Tested in some games and I'm noticing some nice performance improvements with my 6900XT card on Mesa 22.
[-- Attachment #1: Type: text/plain, Size: 197 bytes --] New comment by sug0 on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1143913648 Comment: I tested this patch on my machine, it's also running fine.
[-- Attachment #1: Type: text/plain, Size: 358 bytes --] New comment by zlice on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1134811743 Comment: ~~Anyone else using 22.0.4 ? I just went back to 22.0.3 to see if these weird glitches I've been having are from that or not. Just had a desktop lockup for e.g. (visible but not responding).~~ switched back, been ok
[-- Attachment #1: Type: text/plain, Size: 177 bytes --] New review comment by ericonr on void-packages repository https://github.com/void-linux/void-packages/pull/36961#discussion_r887898405 Comment: Why did you remove this patch?
[-- Attachment #1: Type: text/plain, Size: 171 bytes --] New review comment by ericonr on void-packages repository https://github.com/void-linux/void-packages/pull/36961#discussion_r887898529 Comment: Please keep this header.
[-- Attachment #1: Type: text/plain, Size: 181 bytes --] New review comment by zlice on void-packages repository https://github.com/void-linux/void-packages/pull/36961#discussion_r887900959 Comment: iirc it was added, will double check
[-- Attachment #1: Type: text/plain, Size: 206 bytes --] New comment by zlice on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1144817962 Comment: another update? xp we'll be chasing versions forever at this point
[-- Attachment #1: Type: text/plain, Size: 239 bytes --] New comment by sug0 on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1144823814 Comment: if the current version in the PR works without issues might as well merge it for the time being, IMO
[-- Attachment #1: Type: text/plain, Size: 403 bytes --] New comment by RicArch97 on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1144834406 Comment: > another update? xp we'll be chasing versions forever at this point We are, and I suggest we keep it in check as graphics drivers are quite important packages in my opinion, on my Radeon 6000 GPU every feature release brings quite significant improvements
[-- Attachment #1: Type: text/plain, Size: 1099 bytes --] There is an updated pull request by zlice against master on the void-packages repository https://github.com/zlice/void-packages meas_22.0.2 https://github.com/void-linux/void-packages/pull/36961 mesa: update to 22.0.4 #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working. A patch file from https://github.com/void-linux/void-packages/pull/36961.patch is attached [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: github-pr-meas_22.0.2-36961.patch --] [-- Type: text/x-diff, Size: 5747 bytes --] From f5e5912336f0f7a01e3d4cfc51c79f5aec34d2a1 Mon Sep 17 00:00:00 2001 From: zlice <zlice555@gmail.com> Date: Mon, 2 May 2022 17:14:46 -0400 Subject: [PATCH] mesa: update to 22.0.4 --- ...ch64-force-persistent-buffers-to-GTT.patch | 38 ------------------- srcpkgs/mesa/patches/add-use-elf-tls.patch | 31 ++++++++------- srcpkgs/mesa/template | 10 ++--- 3 files changed, 18 insertions(+), 61 deletions(-) delete mode 100644 srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.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 125e36f5e2f5..000000000000 --- a/srcpkgs/mesa/patches/0001-radeonsi-On-Aarch64-force-persistent-buffers-to-GTT.patch +++ /dev/null @@ -1,38 +0,0 @@ -From d72aa8ae74ffb7329003f9f23ffa05833af951ab Mon Sep 17 00:00:00 2001 -From: Jon Nettleton <jon@solid-run.com> -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 <jon@solid-run.com> ---- - 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 -@@ -100,6 +100,11 @@ 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) -+ if (size <= 1024 * 1024) -+ 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-use-elf-tls.patch index 420665ea8377..6bb599d2475e 100644 --- a/srcpkgs/mesa/patches/add-use-elf-tls.patch +++ b/srcpkgs/mesa/patches/add-use-elf-tls.patch @@ -1,22 +1,21 @@ 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 @@ + pre_args += '-DHAVE_@0@_PLATFORM'.format(platform.to_upper()) + endforeach -diff --git meson.build meson.build -index e1e94e71049..96ab3fb3e45 100644 ---- a/meson.build -+++ b/meson.build -@@ -447,7 +447,8 @@ endif - - # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. - use_elf_tls = false --if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and -+with_use_elf_tls = get_option('use-elf-tls') -+if (not ['freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and with_use_elf_tls and - (not with_platform_android or get_option('platform-sdk-version') >= 29) and - (not with_platform_windows or not with_shared_glapi)) - pre_args += '-DUSE_ELF_TLS' -diff --git meson_options.txt meson_options.txt -index a7030aba31e..966cfeca298 100644 +-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( diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index c90500de7416..60d7c6d8c080 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,6 +1,6 @@ # Template file for 'mesa' pkgname=mesa -version=21.3.7 +version=22.0.4 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=b4fa9db7aa61bf209ef0b40bef83080999d86ad98df8b8b4fada7c128a1efc3d +checksum=c7971f58fa826e474617cda53250c6600fce60994b9fac5b641522e21f471ed4 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then configure_args+=" -Duse-elf-tls=false" @@ -83,7 +83,6 @@ if [ "$_have_amd" ]; then _have_vulkan=yes _gallium_drivers+=",r300,r600,radeonsi" _vulkan_drivers+=",amd" - _dri_drivers+=",r100,r200" subpackages+=" mesa-vulkan-radeon" # transitional dummy packages subpackages+=" mesa-ati-dri" @@ -91,9 +90,8 @@ fi if [ "$_have_intel" ]; then _have_vulkan=yes - _gallium_drivers+=",crocus,iris" + _gallium_drivers+=",crocus,iris,i915" _vulkan_drivers+=",intel" - _dri_drivers+=",i915,i965" subpackages+=" mesa-vulkan-intel" # transitional dummy packages subpackages+=" mesa-intel-dri" @@ -105,8 +103,6 @@ if [ "$_have_nv" ]; then _gallium_drivers+=",tegra" # transitional dummy packages subpackages+=" mesa-tegra-dri" - else - _dri_drivers+=",nouveau" fi # transitional dummy packages subpackages+=" mesa-nouveau-dri"
[-- Attachment #1: Type: text/plain, Size: 258 bytes --] New review comment by zlice on void-packages repository https://github.com/void-linux/void-packages/pull/36961#discussion_r888014383 Comment: k think the aarch stuff was added. unless this bombs on musl or something, should be good, just a goof on my part
[-- Attachment #1: Type: text/plain, Size: 943 bytes --] There's a closed pull request on the void-packages repository mesa: update to 22.0.4 https://github.com/void-linux/void-packages/pull/36961 Description: #### Testing the changes - I tested the changes in this PR: **YES** Performance seems better? May be placebo. #### Local build testing - I built this PR locally for my native architecture, x86_64 #### Comments Tested this on Intel i7-6700k iGPU and AMD 5700. It looks like older cards are being dropped and the build complains about some "amber" branch? Project "amber"? I don't know what that is in Mesa land. Looks like i915/i965 are dropped but my 6700k said it was using 'iris' graphics. [Gentoo's wiki](https://wiki.gentoo.org/wiki/Intel) has a table that shows Haswell (Intel 4xxx CPUs) are the last to not support iris driver. I'm sure there are people who know way more than me about Mesa's changes. Just figured I'd put this here since it seems to be working.
[-- Attachment #1: Type: text/plain, Size: 179 bytes --] New comment by zlice on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1153819305 Comment: Was there something that replaced this?
[-- Attachment #1: Type: text/plain, Size: 209 bytes --] New comment by RicArch97 on void-packages repository https://github.com/void-linux/void-packages/pull/36961#issuecomment-1153903331 Comment: > Was there something that replaced this? Mesa 22.1.1 was merged