mirror of
https://src.fedoraproject.org/rpms/mesa.git
synced 2024-11-24 17:35:18 +00:00
New upstream bugfix release 13.0.4
Fix GLX_SGIX_fbconfig extension dispatching with glvnd, this fixes games such as "The Binding of Isaac: Rebirth" and "Crypt of the NecroDancer" from Steam
This commit is contained in:
parent
e00118db05
commit
823bbd2280
4 changed files with 76 additions and 41 deletions
66
0001-glx-glvnd-Fix-GLXdispatchIndex-sorting.patch
Normal file
66
0001-glx-glvnd-Fix-GLXdispatchIndex-sorting.patch
Normal file
|
@ -0,0 +1,66 @@
|
|||
From d77692b73964b2dc81937a1d6ba2e927e1d548cc Mon Sep 17 00:00:00 2001
|
||||
From: Hans de Goede <hdegoede@redhat.com>
|
||||
Date: Mon, 6 Feb 2017 12:13:17 +0100
|
||||
Subject: [PATCH] glx/glvnd: Fix GLXdispatchIndex sorting
|
||||
|
||||
Commit 8bca8d89ef3b ("glx/glvnd: Fix dispatch function names and indices")
|
||||
fixed the sorting of the array initializers in g_glxglvnddispatchfuncs.c
|
||||
because FindGLXFunction's binary search needs these to be sorted
|
||||
alphabetically.
|
||||
|
||||
That commit also mostly fixed the sorting of the DI_foo defines in
|
||||
g_glxglvnddispatchindices.h, which is what actually matters as the
|
||||
arrays are initialized using "[DI_foo] = glXfoo," but a small error
|
||||
crept in which at least causes glXGetVisualFromFBConfigSGIX to not
|
||||
resolve, breaking games such as "The Binding of Isaac: Rebirth" and
|
||||
"Crypt of the NecroDancer" from Steam not working and possible causes
|
||||
other problems too.
|
||||
|
||||
This commit fixes the last of the sorting errors, fixing these mentioned
|
||||
games not working.
|
||||
|
||||
Fixes: 8bca8d89ef3b ("glx/glvnd: Fix dispatch function names and indices")
|
||||
Cc: "13.0" <mesa-stable@lists.freedesktop.org>
|
||||
Cc: "17.0" <mesa-stable@lists.freedesktop.org>
|
||||
Cc: Adam Jackson <ajax@redhat.com>
|
||||
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||
---
|
||||
src/glx/g_glxglvnddispatchindices.h | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/glx/g_glxglvnddispatchindices.h b/src/glx/g_glxglvnddispatchindices.h
|
||||
index 0891654..05a2c8c 100644
|
||||
--- a/src/glx/g_glxglvnddispatchindices.h
|
||||
+++ b/src/glx/g_glxglvnddispatchindices.h
|
||||
@@ -46,14 +46,14 @@ typedef enum __GLXdispatchIndex {
|
||||
DI_GetMscRateOML,
|
||||
// GetProcAddress implemented by libglvnd
|
||||
// GetProcAddressARB implemented by libglvnd
|
||||
+ DI_GetScreenDriver,
|
||||
// GetSelectedEvent implemented by libglvnd
|
||||
DI_GetSelectedEventSGIX,
|
||||
+ DI_GetSwapIntervalMESA,
|
||||
+ DI_GetSyncValuesOML,
|
||||
DI_GetVideoSyncSGI,
|
||||
// GetVisualFromFBConfig implemented by libglvnd
|
||||
DI_GetVisualFromFBConfigSGIX,
|
||||
- DI_GetScreenDriver,
|
||||
- DI_GetSwapIntervalMESA,
|
||||
- DI_GetSyncValuesOML,
|
||||
// ImportContextEXT implemented by libglvnd
|
||||
// IsDirect implemented by libglvnd
|
||||
DI_JoinSwapGroupSGIX,
|
||||
@@ -81,9 +81,9 @@ typedef enum __GLXdispatchIndex {
|
||||
DI_SwapIntervalMESA,
|
||||
DI_SwapIntervalSGI,
|
||||
// UseXFont implemented by libglvnd
|
||||
- // WaitGL implemented by libglvnd
|
||||
DI_WaitForMscOML,
|
||||
DI_WaitForSbcOML,
|
||||
+ // WaitGL implemented by libglvnd
|
||||
DI_WaitVideoSyncSGI,
|
||||
// WaitX implemented by libglvnd
|
||||
DI_LAST_INDEX
|
||||
--
|
||||
2.9.3
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
From 57f18623fb94891c04f3a395cfd977ea3747ee61 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= <marek.olsak@amd.com>
|
||||
Date: Tue, 17 Jan 2017 13:45:42 +0100
|
||||
Subject: radeonsi: for the tess barrier, only use emit_waitcnt on SI and LLVM
|
||||
3.9+
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Cc: 17.0 13.0 <mesa-stable@lists.freedesktop.org>
|
||||
Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
|
||||
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
|
||||
|
||||
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
|
||||
index f404273..10f40a9 100644
|
||||
--- a/src/gallium/drivers/radeonsi/si_shader.c
|
||||
+++ b/src/gallium/drivers/radeonsi/si_shader.c
|
||||
@@ -5440,10 +5440,13 @@ static void si_llvm_emit_barrier(const struct lp_build_tgsi_action *action,
|
||||
struct si_shader_context *ctx = si_shader_context(bld_base);
|
||||
struct gallivm_state *gallivm = bld_base->base.gallivm;
|
||||
|
||||
- /* The real barrier instruction isn’t needed, because an entire patch
|
||||
+ /* SI only (thanks to a hw bug workaround):
|
||||
+ * The real barrier instruction isn’t needed, because an entire patch
|
||||
* always fits into a single wave.
|
||||
*/
|
||||
- if (ctx->type == PIPE_SHADER_TESS_CTRL) {
|
||||
+ if (HAVE_LLVM >= 0x0309 &&
|
||||
+ ctx->screen->b.chip_class == SI &&
|
||||
+ ctx->type == PIPE_SHADER_TESS_CTRL) {
|
||||
emit_waitcnt(ctx, LGKM_CNT & VM_CNT);
|
||||
return;
|
||||
}
|
||||
--
|
||||
cgit v0.10.2
|
||||
|
13
mesa.spec
13
mesa.spec
|
@ -58,8 +58,8 @@
|
|||
|
||||
Name: mesa
|
||||
Summary: Mesa graphics libraries
|
||||
Version: 13.0.3
|
||||
Release: 7%{?rctag:.%{rctag}}%{?dist}
|
||||
Version: 13.0.4
|
||||
Release: 1%{?rctag:.%{rctag}}%{?dist}
|
||||
|
||||
License: MIT
|
||||
URL: http://www.mesa3d.org
|
||||
|
@ -87,8 +87,8 @@ Patch12: glvnd-fix-gl-dot-pc.patch
|
|||
Patch13: 0001-Fix-linkage-against-shared-glapi.patch
|
||||
Patch14: 0001-glapi-Link-with-glapi-when-built-shared.patch
|
||||
|
||||
# regression fix should be in 13.0.4
|
||||
Patch15: mesa-13.0-fix-radeonsi-tess.patch
|
||||
# submitted upstream
|
||||
Patch15: 0001-glx-glvnd-Fix-GLXdispatchIndex-sorting.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
|
@ -686,6 +686,11 @@ popd
|
|||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Feb 6 2017 Hans de Goede <hdegoede@redhat.com> - 13.0.4-1
|
||||
- New upstream bugfix release 13.0.4
|
||||
- Fix GLX_SGIX_fbconfig extension dispatching with glvnd, this fixes games such
|
||||
as "The Binding of Isaac: Rebirth" and "Crypt of the NecroDancer" from Steam
|
||||
|
||||
* Thu Feb 2 2017 Hans de Goede <hdegoede@redhat.com> - 13.0.3-7
|
||||
- Update eglext.h to 20161230 version this brings in some new defines needed
|
||||
by some apps / libraries
|
||||
|
|
2
sources
2
sources
|
@ -1 +1 @@
|
|||
SHA512 (mesa-13.0.3.tar.xz) = e94a60f7e3b2c64d7b44130ccac95fef8edb74ee1574125aa9ec8ceecb1819df26b0fb08369254aaee6cd6df4eecea814783351e604d4c39b0130746b15a3c1e
|
||||
SHA512 (mesa-13.0.4.tar.xz) = 5f4d8ad12389a32c028cf3c5289fe285892e2b241220c5c6d04cda5748240e8b13289c4537ac7a6b58d87d6ca4111031e15ad37c9b008777be71918e42e88817
|
||||
|
|
Loading…
Reference in a new issue