From 53ae7ad9193ec5c47378e76bb8c20803c033fa90 Mon Sep 17 00:00:00 2001 From: Jocelyn Falempe Date: Mon, 17 Aug 2026 22:52:36 +0200 Subject: [PATCH] Fix s390x regressions Resolves: https://issues.redhat.com/browse/RHEL-223979 Signed-off-by: Jocelyn Falempe --- ..._DRI_IMAGE_FORMAT-to-PIPE_FORMAT-map.patch | 59 +++++++++++++++++++ mesa.spec | 4 ++ 2 files changed, 63 insertions(+) create mode 100644 0001-Revert-dri-fix-__DRI_IMAGE_FORMAT-to-PIPE_FORMAT-map.patch diff --git a/0001-Revert-dri-fix-__DRI_IMAGE_FORMAT-to-PIPE_FORMAT-map.patch b/0001-Revert-dri-fix-__DRI_IMAGE_FORMAT-to-PIPE_FORMAT-map.patch new file mode 100644 index 0000000..cb45b1d --- /dev/null +++ b/0001-Revert-dri-fix-__DRI_IMAGE_FORMAT-to-PIPE_FORMAT-map.patch @@ -0,0 +1,59 @@ +From 102d282d8add081f5f1aab35974218f151744ac5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= +Date: Mon, 23 Feb 2026 08:40:07 +0100 +Subject: [PATCH] Revert "dri: fix __DRI_IMAGE_FORMAT* to PIPE_FORMAT* + mappings" + +This reverts commit 2ae8d0362bec12e84f787f226d2ba7a18130084f. +--- + src/loader/loader_dri_helper.h | 18 ++++++++++-------- + 1 file changed, 10 insertions(+), 8 deletions(-) + +diff --git a/src/loader/loader_dri_helper.h b/src/loader/loader_dri_helper.h +index 169e36b5d80..0d801e99648 100644 +--- a/src/loader/loader_dri_helper.h ++++ b/src/loader/loader_dri_helper.h +@@ -61,8 +61,10 @@ struct loader_screen_resources { + + + /** +- * These formats are endian independent they result in the same layout +- * regradless of a big or little endian cpu. ++ * These formats correspond to the similarly named MESA_FORMAT_* ++ * tokens, except in the native endian of the CPU. For example, on ++ * little endian __DRI_IMAGE_FORMAT_XRGB8888 corresponds to ++ * MESA_FORMAT_XRGB8888, but MESA_FORMAT_XRGB8888_REV on big endian. + * + * __DRI_IMAGE_FORMAT_NONE is for images that aren't directly usable + * by the driver (YUV planar formats) but serve as a base image for +@@ -73,21 +75,21 @@ struct loader_screen_resources { + * createImageFromNames (NONE, see above) and fromPlane (R8 & GR88). + */ + #define __DRI_IMAGE_FORMAT_RGB565 PIPE_FORMAT_B5G6R5_UNORM +-#define __DRI_IMAGE_FORMAT_XRGB8888 PIPE_FORMAT_B8G8R8X8_UNORM +-#define __DRI_IMAGE_FORMAT_ARGB8888 PIPE_FORMAT_B8G8R8A8_UNORM +-#define __DRI_IMAGE_FORMAT_ABGR8888 PIPE_FORMAT_R8G8B8A8_UNORM +-#define __DRI_IMAGE_FORMAT_XBGR8888 PIPE_FORMAT_R8G8B8X8_UNORM ++#define __DRI_IMAGE_FORMAT_XRGB8888 PIPE_FORMAT_BGRX8888_UNORM ++#define __DRI_IMAGE_FORMAT_ARGB8888 PIPE_FORMAT_BGRA8888_UNORM ++#define __DRI_IMAGE_FORMAT_ABGR8888 PIPE_FORMAT_RGBA8888_UNORM ++#define __DRI_IMAGE_FORMAT_XBGR8888 PIPE_FORMAT_RGBX8888_UNORM + #define __DRI_IMAGE_FORMAT_RGB888 PIPE_FORMAT_B8G8R8_UNORM + #define __DRI_IMAGE_FORMAT_BGR888 PIPE_FORMAT_R8G8B8_UNORM + #define __DRI_IMAGE_FORMAT_R8 PIPE_FORMAT_R8_UNORM +-#define __DRI_IMAGE_FORMAT_GR88 PIPE_FORMAT_R8G8_UNORM ++#define __DRI_IMAGE_FORMAT_GR88 PIPE_FORMAT_RG88_UNORM + #define __DRI_IMAGE_FORMAT_NONE PIPE_FORMAT_NONE + #define __DRI_IMAGE_FORMAT_XRGB2101010 PIPE_FORMAT_B10G10R10X2_UNORM + #define __DRI_IMAGE_FORMAT_ARGB2101010 PIPE_FORMAT_B10G10R10A2_UNORM + #define __DRI_IMAGE_FORMAT_SARGB8 PIPE_FORMAT_BGRA8888_SRGB + #define __DRI_IMAGE_FORMAT_ARGB1555 PIPE_FORMAT_B5G5R5A1_UNORM + #define __DRI_IMAGE_FORMAT_R16 PIPE_FORMAT_R16_UNORM +-#define __DRI_IMAGE_FORMAT_GR1616 PIPE_FORMAT_R16G16_UNORM ++#define __DRI_IMAGE_FORMAT_GR1616 PIPE_FORMAT_RG1616_UNORM + #define __DRI_IMAGE_FORMAT_XBGR2101010 PIPE_FORMAT_R10G10B10X2_UNORM + #define __DRI_IMAGE_FORMAT_ABGR2101010 PIPE_FORMAT_R10G10B10A2_UNORM + #define __DRI_IMAGE_FORMAT_SABGR8 PIPE_FORMAT_RGBA8888_SRGB +-- +2.53.0 + diff --git a/mesa.spec b/mesa.spec index dc739ba..812ff47 100644 --- a/mesa.spec +++ b/mesa.spec @@ -134,6 +134,10 @@ Source13: https://crates.io/api/v1/crates/syn/%{rust_syn_ver}/download#/sy Source14: https://crates.io/api/v1/crates/unicode-ident/%{rust_unicode_ident_ver}/download#/unicode-ident-%{rust_unicode_ident_ver}.tar.gz Source15: https://crates.io/api/v1/crates/rustc-hash/%{rustc_hash_ver}/download#/rustc-hash-%{rustc_hash_ver}.tar.gz +# Fix s390x regressions: +# https://issues.redhat.com/browse/RHEL-223979 +Patch10: 0001-Revert-dri-fix-__DRI_IMAGE_FORMAT-to-PIPE_FORMAT-map.patch + BuildRequires: meson BuildRequires: gcc BuildRequires: gcc-c++