Compare commits
6 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| 43c1fe8b71 | |||
| ee94553242 | |||
| 6dac0d5e86 | |||
| 5c2919cc51 | |||
| 9f6f456758 | |||
| e98e17d3d3 |
31
Mesa.changes
31
Mesa.changes
@@ -1,3 +1,34 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 24 07:00:09 UTC 2025 - Antonio Larrosa <alarrosa@suse.com>
|
||||
|
||||
- U_loader_wayland-Fix-missing-timespec.h-include.patch
|
||||
* fixes build with wayland-protocols 1.45
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 4 08:56:49 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
- U_0001-svga-add-svga_resource_create_with_modifiers-functio.patch
|
||||
U_0002-svga-fix-printing-64-bit-value-for-32-bit-build.patch
|
||||
* fixes Wayland session when using SP7 as vmware guest (bsc#1245034)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat May 24 09:34:58 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
- U_gbm-fix-get_back_bo-failure-with-gbm_surface-and-imp.patch
|
||||
* should fix hangup on "Started GNOME Display Manager" in a VM
|
||||
on VMware Fusion Pro (bsc#1241370)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri May 16 12:22:03 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
- aarch64: enable panfrost vulkan driver on Leap 16.0
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Apr 25 10:39:34 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
- U_egl-never-select-swrast-for-vmwgfx.patch
|
||||
* fixes crash in libgallium on virtualbox (bsc#1241701)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 20 14:54:39 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
|
||||
|
||||
|
||||
28
Mesa.spec
28
Mesa.spec
@@ -89,9 +89,13 @@
|
||||
%ifarch %{arm} aarch64
|
||||
%define with_vulkan 1
|
||||
%if 0%{?suse_version} > 1600
|
||||
%define vulkan_drivers swrast,amd,broadcom,freedreno,intel,intel_hasvk,nouveau
|
||||
%define vulkan_drivers swrast,amd,broadcom,freedreno,intel,intel_hasvk,nouveau,panfrost
|
||||
%else
|
||||
%define vulkan_drivers swrast,amd,broadcom,freedreno,intel,intel_hasvk
|
||||
%if 0%{?suse_version} == 1600 && 0%{?is_opensuse}
|
||||
%define vulkan_drivers swrast,amd,broadcom,freedreno,intel,intel_hasvk,panfrost
|
||||
%else
|
||||
%define vulkan_drivers swrast,amd,broadcom,freedreno,intel,intel_hasvk
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
%ifarch riscv64
|
||||
@@ -199,6 +203,7 @@ Patch13: python36-buildfix1-s390x.patch
|
||||
%endif
|
||||
Patch14: python36-buildfix2.patch
|
||||
Patch17: tlsdesc_test.patch
|
||||
Patch18: U_loader_wayland-Fix-missing-timespec.h-include.patch
|
||||
# never to be upstreamed
|
||||
Patch54: n_drirc-disable-rgb10-for-chromium-on-amd.patch
|
||||
Patch100: U_fix-mpeg1_2-decode-mesa-20.2.patch
|
||||
@@ -209,6 +214,12 @@ Patch500: u_dep_xcb.patch
|
||||
Patch500: u_dep_xcb-s390x.patch
|
||||
%endif
|
||||
%ifnarch s390x
|
||||
Patch600: U_egl-never-select-swrast-for-vmwgfx.patch
|
||||
Patch700: U_gbm-fix-get_back_bo-failure-with-gbm_surface-and-imp.patch
|
||||
Patch801: U_0001-svga-add-svga_resource_create_with_modifiers-functio.patch
|
||||
Patch802: U_0002-svga-fix-printing-64-bit-value-for-32-bit-build.patch
|
||||
%endif
|
||||
%ifnarch s390x
|
||||
Patch1222040: u_mesa-CVE-2023-45913.patch
|
||||
%else
|
||||
Patch1222040: u_mesa-CVE-2023-45913-s390x.patch
|
||||
@@ -311,9 +322,9 @@ BuildRequires: libelf-devel
|
||||
%endif
|
||||
%endif
|
||||
# Requirements for wayland bumped up from 17.0
|
||||
BuildRequires: pkgconfig(wayland-client) >= 1.11
|
||||
BuildRequires: pkgconfig(wayland-protocols) >= 1.8
|
||||
BuildRequires: pkgconfig(wayland-server) >= 1.11
|
||||
BuildRequires: pkgconfig(wayland-client) >= 1.18
|
||||
BuildRequires: pkgconfig(wayland-protocols) >= 1.38
|
||||
BuildRequires: pkgconfig(wayland-server) >= 1.18
|
||||
%if 0%{with_llvm}
|
||||
%if 0%{?suse_version} >= 1550
|
||||
BuildRequires: llvm-devel >= 15
|
||||
@@ -871,6 +882,7 @@ cp %{SOURCE6} subprojects/packagecache/
|
||||
%patch -P 14 -p1
|
||||
%endif
|
||||
%patch -P 17 -p1
|
||||
%patch -P 18 -p1
|
||||
# no longer needed since gstreamer-plugins-vaapi 1.18.4
|
||||
%if 0%{?suse_version} < 1550
|
||||
%patch -P 54 -p1
|
||||
@@ -878,6 +890,12 @@ cp %{SOURCE6} subprojects/packagecache/
|
||||
%patch -P 100 -p1
|
||||
%patch -P 400 -p1
|
||||
%patch -P 500 -p1
|
||||
%ifnarch s390x
|
||||
%patch -P 600 -p1
|
||||
%patch -P 700 -p1
|
||||
%patch -P 801 -p1
|
||||
%patch -P 802 -p1
|
||||
%endif
|
||||
%patch -P 1222040 -p1
|
||||
%patch -P 1222041 -p1
|
||||
%patch -P 1222042 -p1
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
From b13e2a495e9e3da56add7d852ca01b2cd7eef52d Mon Sep 17 00:00:00 2001
|
||||
From: Brian Paul <brian.paul@broadcom.com>
|
||||
Date: Thu, 9 Jan 2025 22:45:34 -0700
|
||||
Subject: [PATCH] svga: add svga_resource_create_with_modifiers() function
|
||||
|
||||
The dri_create_image() function returns early if the gallium
|
||||
driver does not implement this function. Surface creation has
|
||||
been broken for some time up to this fix.
|
||||
|
||||
Signed-off-by: Brian Paul <brian.paul@broadcom.com>
|
||||
Reviewed-by: Neha Bhende <neha.Bhende@broadcom.com>
|
||||
Reviewed-by: Neha Bhende <None>
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32976>
|
||||
---
|
||||
src/gallium/drivers/svga/svga_resource.c | 17 +++++++++++++++++
|
||||
1 file changed, 17 insertions(+)
|
||||
|
||||
diff --git a/src/gallium/drivers/svga/svga_resource.c b/src/gallium/drivers/svga/svga_resource.c
|
||||
index 80a4311854e..1775b65fab1 100644
|
||||
--- a/src/gallium/drivers/svga/svga_resource.c
|
||||
+++ b/src/gallium/drivers/svga/svga_resource.c
|
||||
@@ -52,6 +52,22 @@ svga_resource_from_handle(struct pipe_screen * screen,
|
||||
}
|
||||
|
||||
|
||||
+static struct pipe_resource *
|
||||
+svga_resource_create_with_modifiers(struct pipe_screen *screen,
|
||||
+ const struct pipe_resource *templat,
|
||||
+ const uint64_t *modifiers, int count)
|
||||
+{
|
||||
+ /* Not sure, but it seems there's no format modifiers
|
||||
+ * to deal with here.
|
||||
+ */
|
||||
+ if (count > 0 && modifiers != NULL && modifiers[0] != 0) {
|
||||
+ debug_printf("vmware: unexpected format modifier 0x%lx\n",
|
||||
+ modifiers[0]);
|
||||
+ }
|
||||
+ return svga_resource_create(screen, templat);
|
||||
+}
|
||||
+
|
||||
+
|
||||
/**
|
||||
* Check if a resource (texture, buffer) of the given size
|
||||
* and format can be created.
|
||||
@@ -121,6 +137,7 @@ void
|
||||
svga_init_screen_resource_functions(struct svga_screen *is)
|
||||
{
|
||||
is->screen.resource_create = svga_resource_create;
|
||||
+ is->screen.resource_create_with_modifiers = svga_resource_create_with_modifiers;
|
||||
is->screen.resource_from_handle = svga_resource_from_handle;
|
||||
is->screen.resource_get_handle = svga_resource_get_handle;
|
||||
is->screen.resource_destroy = svga_resource_destroy;
|
||||
--
|
||||
2.43.0
|
||||
|
||||
39
U_0002-svga-fix-printing-64-bit-value-for-32-bit-build.patch
Normal file
39
U_0002-svga-fix-printing-64-bit-value-for-32-bit-build.patch
Normal file
@@ -0,0 +1,39 @@
|
||||
From 24107f2f67aab1e7304c0bbff77b1cef014673b9 Mon Sep 17 00:00:00 2001
|
||||
From: Brian Paul <brian.paul@broadcom.com>
|
||||
Date: Mon, 13 Jan 2025 06:36:48 -0700
|
||||
Subject: [PATCH] svga: fix printing 64-bit value for 32-bit build
|
||||
|
||||
Closes: #12449, #12451
|
||||
Fixes: b13e2a495e ("svga: add svga_resource_create_with_modifiers() function")
|
||||
Signed-off-by: Brian Paul <brian.paul@broadcom.com>
|
||||
Reviewed-by: Neha Bhende <neha.Bhende@broadcom.com>
|
||||
Reviewed-by: Neha Bhende <None>
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32995>
|
||||
---
|
||||
src/gallium/drivers/svga/svga_resource.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/gallium/drivers/svga/svga_resource.c b/src/gallium/drivers/svga/svga_resource.c
|
||||
index 1775b65fab1..aa145de9ffe 100644
|
||||
--- a/src/gallium/drivers/svga/svga_resource.c
|
||||
+++ b/src/gallium/drivers/svga/svga_resource.c
|
||||
@@ -5,6 +5,7 @@
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
+#include <inttypes.h>
|
||||
#include "util/u_debug.h"
|
||||
|
||||
#include "svga_resource.h"
|
||||
@@ -61,7 +62,7 @@ svga_resource_create_with_modifiers(struct pipe_screen *screen,
|
||||
* to deal with here.
|
||||
*/
|
||||
if (count > 0 && modifiers != NULL && modifiers[0] != 0) {
|
||||
- debug_printf("vmware: unexpected format modifier 0x%lx\n",
|
||||
+ debug_printf("vmware: unexpected format modifier 0x%" PRIx64 "\n",
|
||||
modifiers[0]);
|
||||
}
|
||||
return svga_resource_create(screen, templat);
|
||||
--
|
||||
2.43.0
|
||||
|
||||
30
U_egl-never-select-swrast-for-vmwgfx.patch
Normal file
30
U_egl-never-select-swrast-for-vmwgfx.patch
Normal file
@@ -0,0 +1,30 @@
|
||||
From f3b8d7da46a6ab2e63589bede37b35b0ae861af9 Mon Sep 17 00:00:00 2001
|
||||
From: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
|
||||
Date: Mon, 20 Jan 2025 09:06:03 -0500
|
||||
Subject: [PATCH] egl: never select swrast for vmwgfx
|
||||
|
||||
ForceSoftware will be true in this case from the high-level fallback,
|
||||
but this isn't really swrast
|
||||
|
||||
Fixes: 1de7c86bc1a ("dri: pass through a type enum for creating screen instead of driver_extensions")
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33123>
|
||||
---
|
||||
src/egl/drivers/dri2/egl_dri2.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c
|
||||
index 6a43ad73d21..e813aa61f52 100644
|
||||
--- a/src/egl/drivers/dri2/egl_dri2.c
|
||||
+++ b/src/egl/drivers/dri2/egl_dri2.c
|
||||
@@ -592,7 +592,7 @@ dri2_load_driver(_EGLDisplay *disp)
|
||||
|
||||
dri2_dpy->kopper = disp->Options.Zink && !debug_get_bool_option("LIBGL_KOPPER_DISABLE", false);
|
||||
dri2_dpy->kopper_without_modifiers = dri2_dpy->kopper && debug_get_bool_option("LIBGL_KOPPER_DRI2", false);
|
||||
- dri2_dpy->swrast = (disp->Options.ForceSoftware && !dri2_dpy->kopper) ||
|
||||
+ dri2_dpy->swrast = (disp->Options.ForceSoftware && !dri2_dpy->kopper && strcmp(dri2_dpy->driver_name, "vmwgfx")) ||
|
||||
!dri2_dpy->driver_name || strstr(dri2_dpy->driver_name, "swrast");
|
||||
dri2_dpy->swrast_not_kms = dri2_dpy->swrast && (!dri2_dpy->driver_name || strcmp(dri2_dpy->driver_name, "kms_swrast"));
|
||||
|
||||
--
|
||||
2.43.0
|
||||
|
||||
47
U_gbm-fix-get_back_bo-failure-with-gbm_surface-and-imp.patch
Normal file
47
U_gbm-fix-get_back_bo-failure-with-gbm_surface-and-imp.patch
Normal file
@@ -0,0 +1,47 @@
|
||||
From 5a19323d0e3969de24ea6bd89ba62f2a5c37296e Mon Sep 17 00:00:00 2001
|
||||
From: Simon Ser <contact@emersion.fr>
|
||||
Date: Thu, 19 Dec 2024 17:35:46 +0100
|
||||
Subject: [PATCH] gbm: fix get_back_bo() failure with gbm_surface and implicit
|
||||
modifiers
|
||||
|
||||
Before 361f3622587e ("dri: Unify createImage and
|
||||
createImageWithModifiers"), gbm_surface_create_with_modifiers() would
|
||||
fail with ENOSYS on drivers missing explicit modifiers support. After
|
||||
that commit, it succeeds and fails later when it tries to allocate a
|
||||
new back buffer.
|
||||
|
||||
Restore the previous behavior.
|
||||
|
||||
Signed-off-by: Simon Ser <contact@emersion.fr>
|
||||
Fixes: 105fcb9cfdb4 ("dri: revert INVALID modifier special-casing")
|
||||
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12283
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32726>
|
||||
---
|
||||
src/gbm/backends/dri/gbm_dri.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/src/gbm/backends/dri/gbm_dri.c b/src/gbm/backends/dri/gbm_dri.c
|
||||
index 9e2761c33b0..316b251dd74 100644
|
||||
--- a/src/gbm/backends/dri/gbm_dri.c
|
||||
+++ b/src/gbm/backends/dri/gbm_dri.c
|
||||
@@ -1078,11 +1078,17 @@ gbm_dri_surface_create(struct gbm_device *gbm,
|
||||
uint32_t format, uint32_t flags,
|
||||
const uint64_t *modifiers, const unsigned count)
|
||||
{
|
||||
+ struct gbm_dri_device *dri = gbm_dri_device(gbm);
|
||||
struct gbm_dri_surface *surf;
|
||||
|
||||
if (count)
|
||||
assert(modifiers);
|
||||
|
||||
+ if (count > 0 && !dri->screen->base.screen->resource_create_with_modifiers) {
|
||||
+ errno = ENOSYS;
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
/* It's acceptable to create an image with INVALID modifier in the list,
|
||||
* but it cannot be on the only modifier (since it will certainly fail
|
||||
* later). While we could easily catch this after modifier creation, doing
|
||||
--
|
||||
2.43.0
|
||||
|
||||
38
U_loader_wayland-Fix-missing-timespec.h-include.patch
Normal file
38
U_loader_wayland-Fix-missing-timespec.h-include.patch
Normal file
@@ -0,0 +1,38 @@
|
||||
From 54928d643ec0d201bf0101d67437b53d7fdbafad Mon Sep 17 00:00:00 2001
|
||||
From: Karmjit Mahil <karmjit.mahil@igalia.com>
|
||||
Date: Thu, 6 Feb 2025 10:34:49 +0100
|
||||
Subject: [PATCH] loader/wayland: Fix missing timespec.h include
|
||||
|
||||
`loader_wayland_dispatch()` also makes use of `timespec` so we
|
||||
need `timespec.h`. Otherwise it fails to build due to
|
||||
`timespec_sub_saturate()` missing.
|
||||
|
||||
Signed-off-by: Karmjit Mahil <karmjit.mahil@igalia.com>
|
||||
Fixes: 90effcceab7 ("wsi/wayland: refactor wayland dispatch")
|
||||
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12580
|
||||
Reviewed-by: Eric Engestrom <None>
|
||||
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33423>
|
||||
---
|
||||
src/loader/loader_wayland_helper.h | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/loader/loader_wayland_helper.h b/src/loader/loader_wayland_helper.h
|
||||
index 45f412a6c7ba1..0d7c49a15f246 100644
|
||||
--- a/src/loader/loader_wayland_helper.h
|
||||
+++ b/src/loader/loader_wayland_helper.h
|
||||
@@ -23,11 +23,10 @@
|
||||
#ifndef LOADER_WAYLAND_HELPER_HEADER_H
|
||||
#define LOADER_WAYLAND_HELPER_HEADER_H
|
||||
|
||||
+#include <util/timespec.h>
|
||||
#include <wayland-client.h>
|
||||
|
||||
#ifndef HAVE_WL_DISPATCH_QUEUE_TIMEOUT
|
||||
-
|
||||
-#include <util/timespec.h>
|
||||
int
|
||||
wl_display_dispatch_queue_timeout(struct wl_display *display,
|
||||
struct wl_event_queue *queue,
|
||||
--
|
||||
GitLab
|
||||
|
||||
Reference in New Issue
Block a user