- Update to release 24.2.7
--> https://docs.mesa3d.org/relnotes/24.2.7 - supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=1343
This commit is contained in:
commit
72e0c5efd0
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
82
0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
Normal file
82
0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
Normal file
@ -0,0 +1,82 @@
|
||||
From 917e7e7df07b4523f1160e2a32d5e3ece3d74287 Mon Sep 17 00:00:00 2001
|
||||
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
||||
Date: Mon, 4 Nov 2024 17:45:45 +1100
|
||||
Subject: [PATCH] dril: Fixup order of pixel formats in drilConfigs
|
||||
|
||||
Having the RGB* formats before the BGR* formats in the table causes
|
||||
problems where under some circumstances, some applications end up
|
||||
with the wrong colors.
|
||||
|
||||
The repro case for me is: Xvnc + mutter + chromium
|
||||
|
||||
There was an existing comment in dri_fill_in_modes() which explained
|
||||
the problem. This was lost when dril_target.c was created.
|
||||
|
||||
Fixes: ec7afd2c24c ("dril: rework config creation")
|
||||
Fixes: 3de62b2f9a6 ("gallium/dril: Compatibility stub for the legacy DRI loader interface")
|
||||
|
||||
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
|
||||
---
|
||||
src/gallium/targets/dril/dril_target.c | 36 +++++++++++++++++++-------
|
||||
1 file changed, 27 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/src/gallium/targets/dril/dril_target.c b/src/gallium/targets/dril/dril_target.c
|
||||
index 672d50a4182..583728e4093 100644
|
||||
--- a/src/gallium/targets/dril/dril_target.c
|
||||
+++ b/src/gallium/targets/dril/dril_target.c
|
||||
@@ -47,25 +47,43 @@
|
||||
CONFIG_ZS(color, PIPE_FORMAT_Z16_UNORM), \
|
||||
CONFIG_ZS(color, PIPE_FORMAT_NONE) \
|
||||
|
||||
+/*
|
||||
+ * (copy of a comment in dri_screen.c:dri_fill_in_modes())
|
||||
+ *
|
||||
+ * The 32-bit RGBA format must not precede the 32-bit BGRA format.
|
||||
+ * Likewise for RGBX and BGRX. Otherwise, the GLX client and the GLX
|
||||
+ * server may disagree on which format the GLXFBConfig represents,
|
||||
+ * resulting in swapped color channels.
|
||||
+ *
|
||||
+ * The problem, as of 2017-05-30:
|
||||
+ * When matching a GLXFBConfig to a __DRIconfig, GLX ignores the channel
|
||||
+ * order and chooses the first __DRIconfig with the expected channel
|
||||
+ * sizes. Specifically, GLX compares the GLXFBConfig's and __DRIconfig's
|
||||
+ * __DRI_ATTRIB_{CHANNEL}_SIZE but ignores __DRI_ATTRIB_{CHANNEL}_MASK.
|
||||
+ *
|
||||
+ * EGL does not suffer from this problem. It correctly compares the
|
||||
+ * channel masks when matching EGLConfig to __DRIconfig.
|
||||
+ */
|
||||
+
|
||||
static const struct gl_config drilConfigs[] = {
|
||||
- CONFIG(PIPE_FORMAT_R8G8B8A8_UNORM),
|
||||
- CONFIG(PIPE_FORMAT_R8G8B8X8_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B8G8R8A8_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B8G8R8X8_UNORM),
|
||||
- CONFIG(PIPE_FORMAT_R10G10B10A2_UNORM),
|
||||
- CONFIG(PIPE_FORMAT_R10G10B10X2_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R8G8B8A8_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R8G8B8X8_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B10G10R10A2_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B10G10R10X2_UNORM),
|
||||
- CONFIG(PIPE_FORMAT_R5G6B5_UNORM),
|
||||
- CONFIG(PIPE_FORMAT_R5G5B5A1_UNORM),
|
||||
- CONFIG(PIPE_FORMAT_R5G5B5X1_UNORM),
|
||||
- CONFIG(PIPE_FORMAT_R4G4B4A4_UNORM),
|
||||
- CONFIG(PIPE_FORMAT_R4G4B4X4_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R10G10B10A2_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R10G10B10X2_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B5G6R5_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B5G5R5A1_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B5G5R5X1_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B4G4R4A4_UNORM),
|
||||
CONFIG(PIPE_FORMAT_B4G4R4X4_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R5G6B5_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R5G5B5A1_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R5G5B5X1_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R4G4B4A4_UNORM),
|
||||
+ CONFIG(PIPE_FORMAT_R4G4B4X4_UNORM),
|
||||
};
|
||||
|
||||
#define RGB UTIL_FORMAT_COLORSPACE_RGB
|
||||
--
|
||||
2.43.0
|
||||
|
11
Mesa-rpmlintrc
Normal file
11
Mesa-rpmlintrc
Normal file
@ -0,0 +1,11 @@
|
||||
# This line is mandatory to access the configuration functions
|
||||
from Config import *
|
||||
|
||||
# Want to allow for multiple vendors
|
||||
addFilter("shlib-policy-name-error")
|
||||
addFilter("Mesa-libOpenCL.*library-without-ldconfig-postin")
|
||||
addFilter("Mesa-libOpenCL.*library-without-ldconfig-postun")
|
||||
addFilter("libXvMC_nouveau.*library-without-ldconfig-postin")
|
||||
addFilter("libXvMC_nouveau.*library-without-ldconfig-postun")
|
||||
addFilter("libXvMC_r600.*library-without-ldconfig-postin")
|
||||
addFilter("libXvMC_r600.*library-without-ldconfig-postun")
|
8211
Mesa.changes
Normal file
8211
Mesa.changes
Normal file
File diff suppressed because it is too large
Load Diff
6161
Mesa.keyring
Normal file
6161
Mesa.keyring
Normal file
File diff suppressed because it is too large
Load Diff
8
README-suse-maintenance.md
Normal file
8
README-suse-maintenance.md
Normal file
@ -0,0 +1,8 @@
|
||||
Since Rust crates are not installed or discouraged to be installed
|
||||
as system dependencies because of the maintenance burden of being the
|
||||
next crates.io, we will have to download the following crates as vendored
|
||||
dependencies. Hence, do not be scared if the dependencies are done like
|
||||
this.
|
||||
|
||||
To check new crates or update the versions, just go to the subprojects
|
||||
folder and run `grep -r crates .` then set versions appropriately.
|
10
README.updates
Normal file
10
README.updates
Normal file
@ -0,0 +1,10 @@
|
||||
DRI Driver update mechanism
|
||||
---------------------------
|
||||
|
||||
If any corresponding DRI driver is found in "/usr/lib/dri/updates/"
|
||||
it will be favored over the one in "/usr/lib/dri/" and will be used
|
||||
for 32/64 bit applications.
|
||||
|
||||
On 32/64 bit biarch platforms additionally a corresponding DRI driver
|
||||
in "/usr/lib64/dri/updates/" will be favored over the one in
|
||||
"/usr/lib64/dri/" and will be used for 64bit applications.
|
52
U_egl-x11-sw-fix-partial-image-uploads.patch
Normal file
52
U_egl-x11-sw-fix-partial-image-uploads.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From 5903c215ab5b4c5d3bb1c952c0c784b78a0412fc Mon Sep 17 00:00:00 2001
|
||||
From: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
|
||||
Date: Tue, 13 Feb 2024 13:10:30 -0500
|
||||
Subject: [PATCH] egl/x11/sw: fix partial image uploads
|
||||
|
||||
* swrast allocates images aligned to 64x64 tiles, which results in images
|
||||
that are larger than the window. PutImage requests must be clamped on
|
||||
the y-axis to avoid uploading/damaging out-of-bounds regions
|
||||
* winsys coords are y-inverted
|
||||
|
||||
cc: mesa-stable
|
||||
|
||||
Reviewed-by: Adam Jackson <ajax@redhat.com>
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29910>
|
||||
(cherry picked from commit 6088a0bf51dd6bdfe39d9160a748bdde016f2c96)
|
||||
---
|
||||
.pick_status.json | 2 +-
|
||||
src/egl/drivers/dri2/platform_x11.c | 5 +++++
|
||||
2 files changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/.pick_status.json b/.pick_status.json
|
||||
index cc044e5e788..802f9799d23 100644
|
||||
--- a/.pick_status.json
|
||||
+++ b/.pick_status.json
|
||||
@@ -164,7 +164,7 @@
|
||||
"description": "egl/x11/sw: fix partial image uploads",
|
||||
"nominated": true,
|
||||
"nomination_type": 0,
|
||||
- "resolution": 0,
|
||||
+ "resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null,
|
||||
"notes": null
|
||||
diff --git a/src/egl/drivers/dri2/platform_x11.c b/src/egl/drivers/dri2/platform_x11.c
|
||||
index 97436a0254b..e0d9ddb343e 100644
|
||||
--- a/src/egl/drivers/dri2/platform_x11.c
|
||||
+++ b/src/egl/drivers/dri2/platform_x11.c
|
||||
@@ -174,6 +174,11 @@ swrastPutImage(__DRIdrawable *draw, int op, int x, int y, int w, int h,
|
||||
return;
|
||||
}
|
||||
|
||||
+ /* clamp to drawable size */
|
||||
+ if (y + h > dri2_surf->base.Height)
|
||||
+ h = dri2_surf->base.Height - y;
|
||||
+ /* y-invert */
|
||||
+ y = dri2_surf->base.Height - y - h;
|
||||
if (size < max_req_len) {
|
||||
cookie = xcb_put_image(
|
||||
dri2_dpy->conn, XCB_IMAGE_FORMAT_Z_PIXMAP, dri2_surf->drawable, gc, w,
|
||||
--
|
||||
2.43.0
|
||||
|
19
U_fix-mpeg1_2-decode-mesa-20.2.patch
Normal file
19
U_fix-mpeg1_2-decode-mesa-20.2.patch
Normal file
@ -0,0 +1,19 @@
|
||||
@@ -, +, @@
|
||||
---
|
||||
src/gallium/drivers/r600/evergreen_state.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
Index: mesa-24.2.2/src/gallium/drivers/r600/evergreen_state.c
|
||||
===================================================================
|
||||
--- mesa-24.2.2.orig/src/gallium/drivers/r600/evergreen_state.c
|
||||
+++ mesa-24.2.2/src/gallium/drivers/r600/evergreen_state.c
|
||||
@@ -584,7 +584,8 @@ static void *evergreen_create_sampler_st
|
||||
: state->max_anisotropy;
|
||||
unsigned max_aniso_ratio = r600_tex_aniso_filter(max_aniso);
|
||||
bool trunc_coord = state->min_img_filter == PIPE_TEX_FILTER_NEAREST &&
|
||||
- state->mag_img_filter == PIPE_TEX_FILTER_NEAREST;
|
||||
+ state->mag_img_filter == PIPE_TEX_FILTER_NEAREST &&
|
||||
+ state->unnormalized_coords;
|
||||
float max_lod = state->max_lod;
|
||||
|
||||
if (!ss) {
|
31
U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
Normal file
31
U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
Normal file
@ -0,0 +1,31 @@
|
||||
From 8b35da91b23afc65256b78a59d116fd09544cd28 Mon Sep 17 00:00:00 2001
|
||||
From: David Rosca <david.rosca@amd.com>
|
||||
Date: Mon, 5 Aug 2024 09:14:37 +0200
|
||||
Subject: [PATCH] radeonsi/vcn: Add decode DPB buffers as CS dependency
|
||||
|
||||
This is needed to ensure correct synchronization in kernel eg. when it
|
||||
moves the buffers between VRAM and GTT.
|
||||
|
||||
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
|
||||
(cherry picked from commit 0c024bbe641b092bbbc751baae54a37642794de0)
|
||||
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30537>
|
||||
---
|
||||
src/gallium/drivers/radeonsi/radeon_vcn_dec.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_dec.c b/src/gallium/drivers/radeonsi/radeon_vcn_dec.c
|
||||
index ede5f9d7c1a5..9e3d0b88493b 100644
|
||||
--- a/src/gallium/drivers/radeonsi/radeon_vcn_dec.c
|
||||
+++ b/src/gallium/drivers/radeonsi/radeon_vcn_dec.c
|
||||
@@ -1838,6 +1838,7 @@ static unsigned rvcn_dec_dynamic_dpb_t2_message(struct radeon_decoder *dec, rvcn
|
||||
RVID_ERR("Ref list from application is incorrect, using dummy buffer instead.\n");
|
||||
addr = dec->ws->buffer_get_virtual_address(dummy->dpb.res->buf);
|
||||
}
|
||||
+ dec->ws->cs_add_buffer(&dec->cs, d->dpb.res->buf, RADEON_USAGE_READWRITE | RADEON_USAGE_SYNCHRONIZED, RADEON_DOMAIN_VRAM);
|
||||
dynamic_dpb_t2->dpbAddrLo[i] = addr;
|
||||
dynamic_dpb_t2->dpbAddrHi[i] = addr >> 32;
|
||||
++dynamic_dpb_t2->dpbArraySize;
|
||||
--
|
||||
2.43.0
|
||||
|
29
_constraints
Normal file
29
_constraints
Normal file
@ -0,0 +1,29 @@
|
||||
<constraints>
|
||||
<overwrite>
|
||||
<conditions>
|
||||
<arch>aarch64</arch>
|
||||
<arch>ppc</arch>
|
||||
<arch>x86_64</arch>
|
||||
<arch>i586</arch>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<disk>
|
||||
<size unit="G">9</size>
|
||||
</disk>
|
||||
</hardware>
|
||||
</overwrite>
|
||||
<overwrite>
|
||||
<conditions>
|
||||
<arch>ppc64</arch>
|
||||
<arch>ppc64le</arch>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<disk>
|
||||
<size unit="G">9</size>
|
||||
</disk>
|
||||
<physicalmemory>
|
||||
<size unit="G">20</size>
|
||||
</physicalmemory>
|
||||
</hardware>
|
||||
</overwrite>
|
||||
</constraints>
|
3
_multibuild
Normal file
3
_multibuild
Normal file
@ -0,0 +1,3 @@
|
||||
<multibuild>
|
||||
<package>drivers</package>
|
||||
</multibuild>
|
110
baselibs.conf
Normal file
110
baselibs.conf
Normal file
@ -0,0 +1,110 @@
|
||||
Mesa
|
||||
# Include this special README file so dummy Mesa-<targettype> gets
|
||||
# build and other arch packages can supplement it.
|
||||
+/usr/share/doc/packages/Mesa/README.package.*
|
||||
# Must require the base Mesa package to get /etc/drirc configuration file.
|
||||
requires "Mesa = <version>"
|
||||
obsoletes "XFree86-Mesa-<targettype> xorg-x11-Mesa-<targettype>"
|
||||
provides "XFree86-Mesa-<targettype> xorg-x11-Mesa-<targettype>"
|
||||
provides "Mesa-libIndirectGL1-<targettype> = <version>"
|
||||
obsoletes "Mesa-libIndirectGL1-<targettype> < <version>"
|
||||
requires "libglvnd-<targettype> >= 0.1.0"
|
||||
requires "Mesa-dri-<targettype> = <version>"
|
||||
requires "Mesa-gallium-<targettype> = <version>"
|
||||
|
||||
Mesa-devel
|
||||
#We need Mesa-<targettype>!, do not put requires -Mesa-<targettype>.
|
||||
requires "Mesa-<targettype> = <version>"
|
||||
requires "Mesa-libEGL-devel-<targettype> = <version>"
|
||||
requires "Mesa-libGL-devel-<targettype> = <version>"
|
||||
requires "Mesa-libGLESv1_CM-devel-<targettype> = <version>"
|
||||
requires "Mesa-libGLESv2-devel-<targettype> = <version>"
|
||||
requires "Mesa-libIndirectGL-devel-<targettype> = <version>"
|
||||
requires "Mesa-libglapi-devel-<targettype> = <version>"
|
||||
requires "libOSMesa-devel-<targettype> = <version>"
|
||||
requires "libgbm-devel-<targettype> = <version>"
|
||||
requires "libglvnd-devel-<targettype> >= 0.1.0"
|
||||
obsoletes "XFree86-Mesa-devel-<targettype> xorg-x11-Mesa-devel-<targettype>"
|
||||
provides "XFree86-Mesa-devel-<targettype> xorg-x11-Mesa-devel-<targettype>"
|
||||
obsoletes "Mesa-libIndirectGL-devel-<targettype> < <version>"
|
||||
provides "Mesa-libIndirectGL-devel-<targettype> = <version>"
|
||||
|
||||
Mesa-libEGL1
|
||||
requires "libglvnd-<targettype> >= 0.1.0"
|
||||
Mesa-libEGL-devel
|
||||
requires "Mesa-libEGL1-<targettype> = <version>"
|
||||
# Mesa-KHR-devel contains only header files, so no -<targettype> variant
|
||||
requires "Mesa-KHR-devel = <version>"
|
||||
requires "libglvnd-devel-<targettype> >= 0.1.0"
|
||||
Mesa-libGL1
|
||||
requires "Mesa-<targettype> = <version>"
|
||||
requires "libglvnd-<targettype> >= 0.1.0"
|
||||
Mesa-libGL-devel
|
||||
requires "Mesa-libGL1-<targettype> = <version>"
|
||||
# Mesa-KHR-devel contains only header files, so no -<targettype> variant
|
||||
requires "Mesa-KHR-devel = <version>"
|
||||
requires "libglvnd-devel-<targettype> >= 0.1.0"
|
||||
Mesa-libGLESv1_CM-devel
|
||||
requires "Mesa-libEGL-devel-<targettype> = <version>"
|
||||
# Mesa-KHR-devel contains only header files, so no -<targettype> variant
|
||||
requires "Mesa-KHR-devel = <version>"
|
||||
requires "libglvnd-devel-<targettype> >= 0.1.0"
|
||||
Mesa-libGLESv2-devel
|
||||
requires "Mesa-libEGL-devel-<targettype> = <version>"
|
||||
# Mesa-KHR-devel contains only header files, so no -<targettype> variant
|
||||
requires "Mesa-KHR-devel = <version>"
|
||||
requires "libglvnd-devel-<targettype> >= 0.1.0"
|
||||
Mesa-libGLESv3-devel
|
||||
requires "Mesa-libEGL-devel-<targettype> = <version>"
|
||||
# Mesa-KHR-devel contains only header files, so no -<targettype> variant
|
||||
requires "Mesa-KHR-devel = <version>"
|
||||
libOSMesa8
|
||||
obsoletes "libOSMesa9-<targettype> < <version>"
|
||||
provides "libOSMesa9-<targettype> = <version>"
|
||||
libOSMesa-devel
|
||||
requires "libOSMesa8-<targettype> = <version>"
|
||||
libgbm1
|
||||
libgbm-devel
|
||||
requires "libgbm1-<targettype> = <version>"
|
||||
Mesa-libglapi0
|
||||
Mesa-libglapi-devel
|
||||
requires "Mesa-libglapi0-<targettype> = <version>"
|
||||
Mesa-libd3d
|
||||
provides "d3dadapter9.so.1"
|
||||
Mesa-libd3d-devel
|
||||
requires "Mesa-libd3d-<targettype> = <version>"
|
||||
libvulkan_intel
|
||||
targetarch aarch64 +/usr/share/vulkan/icd.d/intel_icd.*.json
|
||||
targetarch aarch64 +/usr/share/vulkan/icd.d/intel_hasvk_icd.*.json
|
||||
targetarch ppc64 +/usr/share/vulkan/icd.d/intel_icd.*.json
|
||||
targetarch ppc64 +/usr/share/vulkan/icd.d/intel_hasvk_icd.*.json
|
||||
targetarch ppc64le +/usr/share/vulkan/icd.d/intel_icd.*.json
|
||||
targetarch ppc64le +/usr/share/vulkan/icd.d/intel_hasvk_icd.*.json
|
||||
targetarch x86_64 +/usr/share/vulkan/icd.d/intel_icd.*.json
|
||||
targetarch x86_64 +/usr/share/vulkan/icd.d/intel_hasvk_icd.*.json
|
||||
requires "Mesa-vulkan-device-select-<targettype> = <version>"
|
||||
provides "Mesa-libVulkan-devel-<targettype> = 22.0.0"
|
||||
obsoletes "Mesa-libVulkan-devel-<targettype> < 22.0.0"
|
||||
libvulkan_nouveau
|
||||
targetarch aarch64 +/usr/share/vulkan/icd.d/nouveau_icd.*.json
|
||||
targetarch x86_64 +/usr/share/vulkan/icd.d/nouveau_icd.*.json
|
||||
requires "Mesa-vulkan-device-select-<targettype> = <version>"
|
||||
libvulkan_radeon
|
||||
targetarch aarch64 +/usr/share/vulkan/icd.d/radeon_icd.*.json
|
||||
targetarch ppc64 +/usr/share/vulkan/icd.d/radeon_icd.*.json
|
||||
targetarch ppc64le +/usr/share/vulkan/icd.d/radeon_icd.*.json
|
||||
targetarch x86_64 +/usr/share/vulkan/icd.d/radeon_icd.*.json
|
||||
requires "Mesa-vulkan-device-select-<targettype> = <version>"
|
||||
libvdpau_nouveau
|
||||
libvdpau_r600
|
||||
libvdpau_radeonsi
|
||||
libvdpau_virtio_gpu
|
||||
Mesa-vulkan-device-select
|
||||
Mesa-vulkan-overlay
|
||||
Mesa-dri-vc4
|
||||
Mesa-dri-nouveau
|
||||
Mesa-dri
|
||||
supplements "Mesa-<targettype> = <version>"
|
||||
Mesa-gallium
|
||||
supplements "Mesa-<targettype> = <version>"
|
||||
Mesa-libva
|
BIN
manual-pages.tar.bz2
(Stored with Git LFS)
Normal file
BIN
manual-pages.tar.bz2
(Stored with Git LFS)
Normal file
Binary file not shown.
3
mesa-24.1.3.tar.xz
Normal file
3
mesa-24.1.3.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:63236426b25a745ba6aa2d6daf8cd769d5ea01887b0745ab7124d2ef33a9020d
|
||||
size 29086488
|
BIN
mesa-24.1.3.tar.xz.sig
Normal file
BIN
mesa-24.1.3.tar.xz.sig
Normal file
Binary file not shown.
3
mesa-24.1.4.tar.xz
Normal file
3
mesa-24.1.4.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7cf7c6f665263ad0122889c1d4b076654c1eedea7a2f38c69c8c51579937ade1
|
||||
size 29106920
|
BIN
mesa-24.1.4.tar.xz.sig
Normal file
BIN
mesa-24.1.4.tar.xz.sig
Normal file
Binary file not shown.
3
mesa-24.1.7.tar.xz
Normal file
3
mesa-24.1.7.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ecd2e7b1c73998f4103542f39c6b8c968d251637ccc8caa42641aecb86cd2566
|
||||
size 29206724
|
BIN
mesa-24.1.7.tar.xz.sig
Normal file
BIN
mesa-24.1.7.tar.xz.sig
Normal file
Binary file not shown.
3
mesa-24.2.6.tar.xz
Normal file
3
mesa-24.2.6.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2b68c4a6f204c1999815a457299f81c41ba7bf48c4674b0b2d1d8864f41f3709
|
||||
size 29568568
|
BIN
mesa-24.2.6.tar.xz.sig
Normal file
BIN
mesa-24.2.6.tar.xz.sig
Normal file
Binary file not shown.
3
mesa-24.2.7.tar.xz
Normal file
3
mesa-24.2.7.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a0ce37228679647268a83b3652d859dcf23d6f6430d751489d4464f6de6459fd
|
||||
size 29589968
|
BIN
mesa-24.2.7.tar.xz.sig
Normal file
BIN
mesa-24.2.7.tar.xz.sig
Normal file
Binary file not shown.
20
n_add-Mesa-headers-again.patch
Normal file
20
n_add-Mesa-headers-again.patch
Normal file
@ -0,0 +1,20 @@
|
||||
Index: mesa-24.2.2/include/meson.build
|
||||
===================================================================
|
||||
--- mesa-24.2.2.orig/include/meson.build
|
||||
+++ mesa-24.2.2/include/meson.build
|
||||
@@ -12,7 +12,6 @@ if with_android_stub
|
||||
inc_include += [include_directories('android_stub')]
|
||||
endif
|
||||
|
||||
-if not with_glvnd and host_machine.system() != 'windows'
|
||||
if with_gles1 or with_gles2 or with_opengl or with_egl
|
||||
install_headers('KHR/khrplatform.h', subdir : 'KHR')
|
||||
endif
|
||||
@@ -68,7 +67,6 @@ if not with_glvnd and host_machine.syste
|
||||
subdir : 'EGL',
|
||||
)
|
||||
endif
|
||||
-endif
|
||||
|
||||
# Non-upstream headers
|
||||
if with_egl
|
19
n_drirc-disable-rgb10-for-chromium-on-amd.patch
Normal file
19
n_drirc-disable-rgb10-for-chromium-on-amd.patch
Normal file
@ -0,0 +1,19 @@
|
||||
Index: mesa-23.2.0-rc4/src/util/00-mesa-defaults.conf
|
||||
===================================================================
|
||||
--- mesa-23.2.0-rc4.orig/src/util/00-mesa-defaults.conf
|
||||
+++ mesa-23.2.0-rc4/src/util/00-mesa-defaults.conf
|
||||
@@ -956,6 +956,14 @@ TODO: document the other workarounds.
|
||||
<application name="Rocket League" executable="RocketLeague">
|
||||
<option name="radeonsi_zerovram" value="true" />
|
||||
</application>
|
||||
+ <!-- This is workaround to prevent distorted colors on hardware accelerated video in Chromium. https://bugzilla.opensuse.org/show_bug.cgi?id=1113211 -->
|
||||
+ <application name="Chromium" executable="chromium">
|
||||
+ <option name="allow_rgb10_configs" value="false" />
|
||||
+ </application>
|
||||
+ <!-- This is workaround to prevent distorted colors on hardware accelerated video in Totem. https://bugzilla.opensuse.org/show_bug.cgi?id=1142270 -->
|
||||
+ <application name="Totem" executable="totem">
|
||||
+ <option name="allow_rgb10_configs" value="false" />
|
||||
+ </application>
|
||||
<application name="Gfx Bench" executable="gfxbench_gl">
|
||||
<!-- Helps offscreen tests -->
|
||||
<option name="mesa_glthread_app_profile" value="1"/>
|
18
n_stop-iris-flicker.patch
Normal file
18
n_stop-iris-flicker.patch
Normal file
@ -0,0 +1,18 @@
|
||||
commit 5d6f7baf3bc40a85b09e4088c8c3bccec6a7c82d
|
||||
Author: Scott Bradnick <scott.bradnick@suse.com>
|
||||
Date: Tue May 24 14:47:53 2022 -0400
|
||||
|
||||
Adjusting 'iris_batch.c' per 'https://gitlab.freedesktop.org/mesa/mesa/-/issues/5731'.
|
||||
|
||||
Index: mesa-24.2.2/src/gallium/drivers/iris/i915/iris_kmd_backend.c
|
||||
===================================================================
|
||||
--- mesa-24.2.2.orig/src/gallium/drivers/iris/i915/iris_kmd_backend.c
|
||||
+++ mesa-24.2.2/src/gallium/drivers/iris/i915/iris_kmd_backend.c
|
||||
@@ -318,7 +318,6 @@ i915_batch_submit(struct iris_batch *bat
|
||||
uint32_t flags = EXEC_OBJECT_SUPPORTS_48B_ADDRESS | EXEC_OBJECT_PINNED;
|
||||
flags |= bo->real.capture ? EXEC_OBJECT_CAPTURE : 0;
|
||||
flags |= bo == batch->screen->workaround_bo ? EXEC_OBJECT_ASYNC : 0;
|
||||
- flags |= iris_bo_is_external(bo) ? 0 : EXEC_OBJECT_ASYNC;
|
||||
flags |= written ? EXEC_OBJECT_WRITE : 0;
|
||||
|
||||
index_for_handle[bo->gem_handle] = validation_count;
|
3
paste-1.0.14.tar.gz
Normal file
3
paste-1.0.14.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c
|
||||
size 18157
|
3
proc-macro2-1.0.70.tar.gz
Normal file
3
proc-macro2-1.0.70.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b
|
||||
size 44343
|
3
proc-macro2-1.0.86.tar.gz
Normal file
3
proc-macro2-1.0.86.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77
|
||||
size 48958
|
67
python36-buildfix1.patch
Normal file
67
python36-buildfix1.patch
Normal file
@ -0,0 +1,67 @@
|
||||
Index: mesa-24.1.0/src/nouveau/headers/class_parser.py
|
||||
===================================================================
|
||||
--- mesa-24.1.0.orig/src/nouveau/headers/class_parser.py
|
||||
+++ mesa-24.1.0/src/nouveau/headers/class_parser.py
|
||||
@@ -9,6 +9,16 @@ import sys
|
||||
|
||||
from mako.template import Template
|
||||
|
||||
+def removeprefix(s, prefix):
|
||||
+ if s.startswith(prefix):
|
||||
+ return s[len(prefix):]
|
||||
+ return s
|
||||
+
|
||||
+def removesuffix(s, suffix):
|
||||
+ if s.endswith(suffix):
|
||||
+ return s[:-len(suffix)]
|
||||
+ return s
|
||||
+
|
||||
METHOD_ARRAY_SIZES = {
|
||||
'BIND_GROUP_CONSTANT_BUFFER' : 16,
|
||||
'CALL_MME_DATA' : 256,
|
||||
@@ -293,7 +303,7 @@ def parse_header(nvcl, f):
|
||||
if ":" in list[2]:
|
||||
state = 1
|
||||
elif teststr in list[1]:
|
||||
- curmthd.field_defs[curfield][list[1].removeprefix(teststr)] = list[2]
|
||||
+ curmthd.field_defs[curfield][removeprefix(list[1], teststr)] = list[2]
|
||||
else:
|
||||
state = 1
|
||||
|
||||
@@ -303,7 +313,7 @@ def parse_header(nvcl, f):
|
||||
if ("0x" in list[2]):
|
||||
state = 1
|
||||
else:
|
||||
- field = list[1].removeprefix(teststr)
|
||||
+ field = removeprefix(list[1], teststr)
|
||||
bitfield = list[2].split(":")
|
||||
curmthd.field_name_start[field] = bitfield[1]
|
||||
curmthd.field_name_end[field] = bitfield[0]
|
||||
@@ -324,13 +334,13 @@ def parse_header(nvcl, f):
|
||||
is_array = 0
|
||||
if (':' in list[2]):
|
||||
continue
|
||||
- name = list[1].removeprefix(teststr)
|
||||
+ name = removeprefix(list[1], teststr)
|
||||
if name.endswith("(i)"):
|
||||
is_array = 1
|
||||
- name = name.removesuffix("(i)")
|
||||
+ name = removesuffix(name, "(i)")
|
||||
if name.endswith("(j)"):
|
||||
is_array = 1
|
||||
- name = name.removesuffix("(j)")
|
||||
+ name = removesuffix(name, "(j)")
|
||||
x = method()
|
||||
x.name = name
|
||||
x.addr = list[2]
|
||||
@@ -357,8 +367,8 @@ def main():
|
||||
|
||||
clheader = os.path.basename(args.in_h)
|
||||
nvcl = clheader
|
||||
- nvcl = nvcl.removeprefix("cl")
|
||||
- nvcl = nvcl.removesuffix(".h")
|
||||
+ nvcl = removeprefix(nvcl, "cl")
|
||||
+ nvcl = removesuffix(nvcl, ".h")
|
||||
nvcl = nvcl.upper()
|
||||
nvcl = "NV" + nvcl
|
||||
|
11
python36-buildfix2.patch
Normal file
11
python36-buildfix2.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- mesa-23.3.3/src/freedreno/registers/gen_header.py.orig 2024-01-20 14:01:30.261999839 +0100
|
||||
+++ mesa-23.3.3/src/freedreno/registers/gen_header.py 2024-01-20 14:01:57.678558692 +0100
|
||||
@@ -781,7 +781,7 @@ def main():
|
||||
parser.add_argument('--rnn', type=str, required=True)
|
||||
parser.add_argument('--xml', type=str, required=True)
|
||||
|
||||
- subparsers = parser.add_subparsers(required=True)
|
||||
+ subparsers = parser.add_subparsers()
|
||||
|
||||
parser_c_defines = subparsers.add_parser('c-defines')
|
||||
parser_c_defines.set_defaults(func=dump_c_defines)
|
3
quote-1.0.33.tar.gz
Normal file
3
quote-1.0.33.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae
|
||||
size 28090
|
3
syn-2.0.39.tar.gz
Normal file
3
syn-2.0.39.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a
|
||||
size 244129
|
3
syn-2.0.68.tar.gz
Normal file
3
syn-2.0.68.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9
|
||||
size 265035
|
15
tlsdesc_test.patch
Normal file
15
tlsdesc_test.patch
Normal file
@ -0,0 +1,15 @@
|
||||
LTO defeats the -fpic workaround and enables TLS relaxation anyway
|
||||
|
||||
Index: mesa-24.2.2/meson.build
|
||||
===================================================================
|
||||
--- mesa-24.2.2.orig/meson.build
|
||||
+++ mesa-24.2.2/meson.build
|
||||
@@ -507,7 +507,7 @@ if not have_mtls_dialect
|
||||
foreach tlsdesc_arg : ['-mtls-dialect=gnu2', '-mtls-dialect=desc']
|
||||
# -fpic to force dynamic tls, otherwise TLS relaxation defeats check
|
||||
tlsdesc_test = cc.run('int __thread x; int main() { return x; }',
|
||||
- args: [tlsdesc_arg, '-fpic'],
|
||||
+ args: [tlsdesc_arg, '-fpic', '-fno-lto'],
|
||||
name: tlsdesc_arg)
|
||||
if tlsdesc_test.returncode() == 0 and (
|
||||
# check for lld 13 bug: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5665
|
@ -0,0 +1,54 @@
|
||||
From a14fa9920669c8d6d911e375376f2e45052a31d6 Mon Sep 17 00:00:00 2001
|
||||
From: Jordan Justen <jordan.l.justen@intel.com>
|
||||
Date: Sat, 20 Jan 2024 01:07:23 -0800
|
||||
Subject: [PATCH 1/2] intel/genxml: Drop "from __future__ import annotations"
|
||||
|
||||
This is not supported in Python 3.6, and optional in 3.7+.
|
||||
|
||||
Ref: f1eae2f8bbe ("python: drop python2 support")
|
||||
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
|
||||
---
|
||||
src/intel/genxml/gen_sort_tags.py | 1 -
|
||||
src/intel/genxml/genxml_import.py | 1 -
|
||||
src/intel/genxml/intel_genxml.py | 1 -
|
||||
3 files changed, 3 deletions(-)
|
||||
|
||||
diff --git a/src/intel/genxml/gen_sort_tags.py b/src/intel/genxml/gen_sort_tags.py
|
||||
index dcdba333fe6..44cd152cd11 100755
|
||||
--- a/src/intel/genxml/gen_sort_tags.py
|
||||
+++ b/src/intel/genxml/gen_sort_tags.py
|
||||
@@ -2,7 +2,6 @@
|
||||
# Copyright © 2019, 2022 Intel Corporation
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
-from __future__ import annotations
|
||||
import argparse
|
||||
import copy
|
||||
import intel_genxml
|
||||
diff --git a/src/intel/genxml/genxml_import.py b/src/intel/genxml/genxml_import.py
|
||||
index 76a7c77eb4c..442b4726d08 100755
|
||||
--- a/src/intel/genxml/genxml_import.py
|
||||
+++ b/src/intel/genxml/genxml_import.py
|
||||
@@ -2,7 +2,6 @@
|
||||
# Copyright © 2019, 2022 Intel Corporation
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
-from __future__ import annotations
|
||||
import argparse
|
||||
import copy
|
||||
import intel_genxml
|
||||
diff --git a/src/intel/genxml/intel_genxml.py b/src/intel/genxml/intel_genxml.py
|
||||
index 2b7b4d8391a..9388ebecfce 100755
|
||||
--- a/src/intel/genxml/intel_genxml.py
|
||||
+++ b/src/intel/genxml/intel_genxml.py
|
||||
@@ -2,7 +2,6 @@
|
||||
# Copyright © 2019, 2022 Intel Corporation
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
-from __future__ import annotations
|
||||
from collections import OrderedDict
|
||||
import copy
|
||||
import io
|
||||
--
|
||||
2.35.3
|
||||
|
@ -0,0 +1,78 @@
|
||||
From 89ede5b851a6a15f85e83278257ee4e3783f6bd2 Mon Sep 17 00:00:00 2001
|
||||
From: Jordan Justen <jordan.l.justen@intel.com>
|
||||
Date: Sat, 20 Jan 2024 01:00:56 -0800
|
||||
Subject: [PATCH 2/2] intel/genxml: Add a untyped OrderedDict fallback for
|
||||
Python 3.6
|
||||
|
||||
typing.OrderedDict was introduced in Python 3.7.2.
|
||||
|
||||
Python 3.6 and 3.7 have been deprecated and are no longer supported,
|
||||
but this seems like an easy enough fallback to include for now.
|
||||
|
||||
https://devguide.python.org/versions/
|
||||
|
||||
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
|
||||
---
|
||||
src/intel/genxml/intel_genxml.py | 22 +++++++++++++++++-----
|
||||
1 file changed, 17 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/intel/genxml/intel_genxml.py b/src/intel/genxml/intel_genxml.py
|
||||
index 9388ebecfce..eefd7b44992 100755
|
||||
--- a/src/intel/genxml/intel_genxml.py
|
||||
+++ b/src/intel/genxml/intel_genxml.py
|
||||
@@ -45,10 +45,22 @@ BASE_TYPES = {
|
||||
|
||||
FIXED_PATTERN = re.compile(r"(s|u)(\d+)\.(\d+)")
|
||||
|
||||
+try:
|
||||
+ # Python 3.7 and newer should be able to support strong typing for
|
||||
+ # our OrderedDict usage.
|
||||
+ def typed_ordered_dict(key_ty, val_ty):
|
||||
+ return typing.OrderedDict[str, bool]
|
||||
+ # This will raise an exception on Python 3.6
|
||||
+ typed_ordered_dict(int, int)
|
||||
+except Exception:
|
||||
+ # For Python 3.6 we return an untyped OrderedDict
|
||||
+ def typed_ordered_dict(key_ty, val_ty):
|
||||
+ return OrderedDict
|
||||
+
|
||||
def is_base_type(name: str) -> bool:
|
||||
return name in BASE_TYPES or FIXED_PATTERN.match(name) is not None
|
||||
|
||||
-def add_struct_refs(items: typing.OrderedDict[str, bool], node: et.Element) -> None:
|
||||
+def add_struct_refs(items: typed_ordered_dict(str, bool), node: et.Element) -> None:
|
||||
if node.tag == 'field':
|
||||
if 'type' in node.attrib and not is_base_type(node.attrib['type']):
|
||||
t = node.attrib['type']
|
||||
@@ -64,16 +76,16 @@ class Struct(object):
|
||||
def __init__(self, xml: et.Element):
|
||||
self.xml = xml
|
||||
self.name = xml.attrib['name']
|
||||
- self.deps: typing.OrderedDict[str, Struct] = OrderedDict()
|
||||
+ self.deps: typed_ordered_dict(str, Struct) = OrderedDict()
|
||||
|
||||
def find_deps(self, struct_dict, enum_dict) -> None:
|
||||
- deps: typing.OrderedDict[str, bool] = OrderedDict()
|
||||
+ deps: typed_ordered_dict(str, bool) = OrderedDict()
|
||||
add_struct_refs(deps, self.xml)
|
||||
for d in deps.keys():
|
||||
if d in struct_dict:
|
||||
self.deps[d] = struct_dict[d]
|
||||
|
||||
- def add_xml(self, items: typing.OrderedDict[str, et.Element]) -> None:
|
||||
+ def add_xml(self, items: typed_ordered_dict(str, et.Element)) -> None:
|
||||
for d in self.deps.values():
|
||||
d.add_xml(items)
|
||||
items[self.name] = self.xml
|
||||
@@ -151,7 +163,7 @@ def sort_xml(xml: et.ElementTree) -> None:
|
||||
for ws in wrapped_struct_dict.values():
|
||||
ws.find_deps(wrapped_struct_dict, enum_dict)
|
||||
|
||||
- sorted_structs: typing.OrderedDict[str, et.Element] = OrderedDict()
|
||||
+ sorted_structs: typed_ordered_dict(str, et.Element) = OrderedDict()
|
||||
for s in structs:
|
||||
_s = wrapped_struct_dict[s.attrib['name']]
|
||||
_s.add_xml(sorted_structs)
|
||||
--
|
||||
2.35.3
|
||||
|
16
u_dep_xcb.patch
Normal file
16
u_dep_xcb.patch
Normal file
@ -0,0 +1,16 @@
|
||||
Index: mesa-24.2.2/meson.build
|
||||
===================================================================
|
||||
--- mesa-24.2.2.orig/meson.build
|
||||
+++ mesa-24.2.2/meson.build
|
||||
@@ -2145,9 +2145,11 @@ if with_platform_x11
|
||||
endif
|
||||
endif
|
||||
if with_any_vk or with_egl or (with_glx == 'dri' and with_dri_platform == 'drm')
|
||||
+ dep_x11_xcb = dependency('x11-xcb')
|
||||
dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8')
|
||||
|
||||
if with_dri3
|
||||
+ dep_xcb = dependency('xcb')
|
||||
dep_xcb_dri3 = dependency('xcb-dri3')
|
||||
dep_xcb_present = dependency('xcb-present')
|
||||
# until xcb-dri3 has been around long enough to make a hard-dependency:
|
13
u_mesa-CVE-2023-45913.patch
Normal file
13
u_mesa-CVE-2023-45913.patch
Normal file
@ -0,0 +1,13 @@
|
||||
src/glx/dri2_glx.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
--- a/src/glx/dri2_glx.c
|
||||
+++ b/src/glx/dri2_glx.c
|
||||
@@ -1399,7 +1399,7 @@ dri2GetGlxDrawableFromXDrawableId(Displa
|
||||
struct dri2_display *pdp = (struct dri2_display *) d->dri2Display;
|
||||
__GLXDRIdrawable *pdraw;
|
||||
|
||||
- if (__glxHashLookup(pdp->dri2Hash, id, (void *) &pdraw) == 0)
|
||||
+ if (pdp && __glxHashLookup(pdp->dri2Hash, id, (void *) &pdraw) == 0)
|
||||
return pdraw;
|
||||
|
||||
return NULL;
|
31
u_mesa-CVE-2023-45919.patch
Normal file
31
u_mesa-CVE-2023-45919.patch
Normal file
@ -0,0 +1,31 @@
|
||||
src/glx/glx_query.c | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
--- a/src/glx/glx_query.c
|
||||
+++ b/src/glx/glx_query.c
|
||||
@@ -53,6 +53,13 @@ __glXQueryServerString(Display * dpy, in
|
||||
/* The spec doesn't mention this, but the Xorg server replies with
|
||||
* a string already terminated with '\0'. */
|
||||
uint32_t len = xcb_glx_query_server_string_string_length(reply);
|
||||
+ /* Allow a max of 64kb string length */
|
||||
+ size_t reply_len = strnlen(xcb_glx_query_server_string_string(reply), 64*1024);
|
||||
+ if (reply_len + 1 != len)
|
||||
+ {
|
||||
+ free(reply);
|
||||
+ return(NULL);
|
||||
+ }
|
||||
char *buf = malloc(len);
|
||||
memcpy(buf, xcb_glx_query_server_string_string(reply), len);
|
||||
free(reply);
|
||||
@@ -77,6 +84,12 @@ __glXGetString(Display * dpy, int opcode
|
||||
/* The spec doesn't mention this, but the Xorg server replies with
|
||||
* a string already terminated with '\0'. */
|
||||
uint32_t len = xcb_glx_get_string_string_length(reply);
|
||||
+ size_t reply_len = strnlen(xcb_glx_get_string_string(reply), 64*1024);
|
||||
+ if (reply_len + 1 != len)
|
||||
+ {
|
||||
+ free(reply);
|
||||
+ return(NULL);
|
||||
+ }
|
||||
char *buf = malloc(len);
|
||||
memcpy(buf, xcb_glx_get_string_string(reply), len);
|
||||
free(reply);
|
15
u_mesa-CVE-2023-45922.patch
Normal file
15
u_mesa-CVE-2023-45922.patch
Normal file
@ -0,0 +1,15 @@
|
||||
src/glx/glx_pbuffer.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
Index: mesa-24.2.3/src/glx/glx_pbuffer.c
|
||||
===================================================================
|
||||
--- mesa-24.2.3.orig/src/glx/glx_pbuffer.c
|
||||
+++ mesa-24.2.3/src/glx/glx_pbuffer.c
|
||||
@@ -329,7 +329,7 @@ __glXGetDrawableAttribute(Display * dpy,
|
||||
/* Search the set of returned attributes for the attribute requested by
|
||||
* the caller.
|
||||
*/
|
||||
- for (i = 0; i < num_attributes; i++) {
|
||||
+ for (i = 0; i < num_attributes && i * 2 + 1 < length; i++) {
|
||||
if (data[i * 2] == attribute) {
|
||||
found = 1;
|
||||
*value = data[(i * 2) + 1];
|
3
unicode-ident-1.0.12.tar.gz
Normal file
3
unicode-ident-1.0.12.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
|
||||
size 42168
|
Loading…
Reference in New Issue
Block a user