All of lore.kernel.org
 help / color / mirror / Atom feed
From: Khem Raj <raj.khem@gmail.com>
To: Alexander Kanavin <alex.kanavin@gmail.com>
Cc: openembedded-core@lists.openembedded.org,
	 Alexander Kanavin <alex@linutronix.de>
Subject: Re: [OE-core] [PATCH 6/6] mesa: update 22.3.5 -> 23.0.0
Date: Fri, 17 Mar 2023 19:47:32 -0700	[thread overview]
Message-ID: <CAMKF1sqhwupoW0kV7ao94DvdbxTH4B5i3HfMwOnp6M+g0g85Sg@mail.gmail.com> (raw)
In-Reply-To: <20230316094102.2628727-6-alex@linutronix.de>

mesa 23.x fails to build with default gcc ( 7.5.0 ) Ubuntu
7.5.0-3ubuntu1~18.04, it ends up with

../mesa-23.0.0/src/intel/compiler/brw_simd_selection.cpp: In function
‘int brw_simd_select_for_workgroup_size(const intel_device_info*,
const brw_cs_prog_data*, const unsigned int*)’:
../mesa-23.0.0/src/intel/compiler/brw_simd_selection.cpp:205:7: sorry,
unimplemented: non-trivial designated initializers not supported
       };
       ^

see mesa-native failure

https://errors.yoctoproject.org/Errors/Details/698144/

I wonder how it works on AB nodes running Ubuntu 18.04. Do we enforce
gcc from buildtools tarball there ?

On Thu, Mar 16, 2023 at 2:41 AM Alexander Kanavin
<alex.kanavin@gmail.com> wrote:
>
> Drop patches:
> 0001-gbm-backend-fix-gbm-compile-without-dri.patch
> 0001-freedreno-pm4-Use-unsigned-instead-of-uint-to-fix-mu.patch
> (backports)
>
> 0001-util-format-Check-for-NEON-before-using-it.patch
> (upstream submission has stalled with unanswered concerns from upstream;
> patch no longer applies; issue does not reproduce with 'raspberrypi0-wifi' MACHINE)
>
> Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> ---
>  ...e-unsigned-instead-of-uint-to-fix-mu.patch | 44 -------------
>  ...-backend-fix-gbm-compile-without-dri.patch | 65 -------------------
>  ...ormat-Check-for-NEON-before-using-it.patch | 47 --------------
>  .../{mesa-gl_22.3.5.bb => mesa-gl_23.0.0.bb}  |  0
>  meta/recipes-graphics/mesa/mesa.inc           |  5 +-
>  .../mesa/{mesa_22.3.5.bb => mesa_23.0.0.bb}   |  0
>  6 files changed, 1 insertion(+), 160 deletions(-)
>  delete mode 100644 meta/recipes-graphics/mesa/files/0001-freedreno-pm4-Use-unsigned-instead-of-uint-to-fix-mu.patch
>  delete mode 100644 meta/recipes-graphics/mesa/files/0001-gbm-backend-fix-gbm-compile-without-dri.patch
>  delete mode 100644 meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch
>  rename meta/recipes-graphics/mesa/{mesa-gl_22.3.5.bb => mesa-gl_23.0.0.bb} (100%)
>  rename meta/recipes-graphics/mesa/{mesa_22.3.5.bb => mesa_23.0.0.bb} (100%)
>
> diff --git a/meta/recipes-graphics/mesa/files/0001-freedreno-pm4-Use-unsigned-instead-of-uint-to-fix-mu.patch b/meta/recipes-graphics/mesa/files/0001-freedreno-pm4-Use-unsigned-instead-of-uint-to-fix-mu.patch
> deleted file mode 100644
> index 3ab22889bf..0000000000
> --- a/meta/recipes-graphics/mesa/files/0001-freedreno-pm4-Use-unsigned-instead-of-uint-to-fix-mu.patch
> +++ /dev/null
> @@ -1,44 +0,0 @@
> -From 8a5de0b6cf1090d7f29f3974ec79c32776cf2745 Mon Sep 17 00:00:00 2001
> -From: Jami Kettunen <jami.kettunen@protonmail.com>
> -Date: Tue, 31 Aug 2021 00:15:58 +0300
> -Subject: [PATCH] freedreno/pm4: Use unsigned instead of uint to fix musl build
> -
> -Upstream-Status: Backport
> -
> -Fixes the following error I noticed when building against aarch64 with
> -musl libc:
> -
> -  In file included from ../src/freedreno/decode/crashdec.h:38,
> -                   from ../src/freedreno/decode/crashdec.c:40:
> -  ../src/freedreno/common/freedreno_pm4.h:104:15: error: unknown type name 'uint'
> -    104 | static inline uint
> -        |               ^~~~
> -  ../src/freedreno/common/freedreno_pm4.h:105:25: error: unknown type name 'uint'; did you mean 'int'?
> -    105 | pm4_calc_odd_parity_bit(uint val)
> -        |                         ^~~~
> -        |                         int
> -
> -Signed-off-by: Jami Kettunen <jami.kettunen@protonmail.com>
> -Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19665>
> ----
> - src/freedreno/common/freedreno_pm4.h | 4 ++--
> - 1 file changed, 2 insertions(+), 2 deletions(-)
> -
> -diff --git a/src/freedreno/common/freedreno_pm4.h b/src/freedreno/common/freedreno_pm4.h
> -index 8f958953d693..091247e709a0 100644
> ---- a/src/freedreno/common/freedreno_pm4.h
> -+++ b/src/freedreno/common/freedreno_pm4.h
> -@@ -105,8 +105,8 @@ pm4_pkt7_hdr(uint8_t opcode, uint16_t cnt)
> - #define cp_type3_opcode(pkt) (((pkt) >> 8) & 0xFF)
> - #define type3_pkt_size(pkt)  ((((pkt) >> 16) & 0x3FFF) + 1)
> -
> --static inline uint
> --pm4_calc_odd_parity_bit(uint val)
> -+static inline unsigned
> -+pm4_calc_odd_parity_bit(unsigned val)
> - {
> -    return (0x9669 >> (0xf & ((val) ^ ((val) >> 4) ^ ((val) >> 8) ^
> -                              ((val) >> 12) ^ ((val) >> 16) ^ ((val) >> 20) ^
> ---
> -2.39.2
> -
> diff --git a/meta/recipes-graphics/mesa/files/0001-gbm-backend-fix-gbm-compile-without-dri.patch b/meta/recipes-graphics/mesa/files/0001-gbm-backend-fix-gbm-compile-without-dri.patch
> deleted file mode 100644
> index 6541671b7a..0000000000
> --- a/meta/recipes-graphics/mesa/files/0001-gbm-backend-fix-gbm-compile-without-dri.patch
> +++ /dev/null
> @@ -1,65 +0,0 @@
> -From 25946100e21cf2095bea334e8d7096798561d0b7 Mon Sep 17 00:00:00 2001
> -From: Vincent Davis Jr <vince@underview.tech>
> -Date: Wed, 28 Dec 2022 16:28:01 -0600
> -Subject: [PATCH] gbm/backend: fix gbm compile without dri
> -
> -Upstream-Status: Backport
> -
> -https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20447
> -https://gitlab.freedesktop.org/mesa/mesa/-/commit/842ca284650f066e58706741a7d22d67b5088e60
> -
> -At mesa version 22.2.3 patch wasn't introduced until after.
> -
> -Commit introduces a fix that allows for gbm to be built with an empty
> -backend. There are situation especially in a Yocto/OE cross compilation
> -environment where you want to build with an empty backend. The particular
> -situation is as such:
> -
> -The mesa-gl recipe is the preferred provider for virtual/libgbm, virtual/libgl,
> -virtual/mesa, etc... But the x11 DISTRO_FEATURE in't included this leads to build
> -errors such as:
> -
> -| /../../../ld: src/gbm/libgbm.so.1.0.0.p/main_backend.c.o: in function `find_backend':
> -| backend.c:(.text.find_backend+0xa4): undefined reference to `gbm_dri_backend'
> -| /../../../ld: src/gbm/libgbm.so.1.0.0.p/main_backend.c.o:(.data.rel.ro.builtin_backends+0x4):
> -                undefined reference to `gbm_dri_backend'
> -| collect2: error: ld returned 1 exit status
> -
> -Issue should be replicable by setting -Ddri3=disabled and -Dgbm=enabled
> -
> -Add fix to bypasses compilation issue by excluding gbm dri backend. If
> -HAVE_DRI || HAVE_DRIX not specified.
> -
> -Acked-by: David Heidelberg <david.heidelberg@collabora.com>
> -Signed-off-by: Vincent Davis Jr <vince@underview.tech>
> ----
> - src/gbm/main/backend.c | 4 ++++
> - 1 file changed, 4 insertions(+)
> -
> -diff --git a/src/gbm/main/backend.c b/src/gbm/main/backend.c
> -index 974d0a76a4e..feee0703495 100644
> ---- a/src/gbm/main/backend.c
> -+++ b/src/gbm/main/backend.c
> -@@ -42,7 +42,9 @@
> - #define ARRAY_SIZE(a) (sizeof(a)/sizeof((a)[0]))
> - #define VER_MIN(a, b) ((a) < (b) ? (a) : (b))
> -
> -+#if defined(HAVE_DRI) || defined(HAVE_DRI2) || defined(HAVE_DRI3)
> - extern const struct gbm_backend gbm_dri_backend;
> -+#endif
> -
> - struct gbm_backend_desc {
> -    const char *name;
> -@@ -51,7 +53,9 @@ struct gbm_backend_desc {
> - };
> -
> - static const struct gbm_backend_desc builtin_backends[] = {
> -+#if defined(HAVE_DRI) || defined(HAVE_DRI2) || defined(HAVE_DRI3)
> -    { "dri", &gbm_dri_backend },
> -+#endif
> - };
> -
> - #define BACKEND_LIB_SUFFIX "_gbm"
> ---
> -2.34.1
> -
> diff --git a/meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch b/meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch
> deleted file mode 100644
> index d22ff3c8a8..0000000000
> --- a/meta/recipes-graphics/mesa/files/0001-util-format-Check-for-NEON-before-using-it.patch
> +++ /dev/null
> @@ -1,47 +0,0 @@
> -From f17e836ef9b1bbc6056790596420b699e48128c2 Mon Sep 17 00:00:00 2001
> -From: Khem Raj <raj.khem@gmail.com>
> -Date: Thu, 2 Dec 2021 19:57:42 -0800
> -Subject: [PATCH] util/format: Check for NEON before using it
> -
> -This fixes build on rpi0-w and any other machine which does not have
> -neon unit and is not used as FPU unit
> -
> -Fixes errors e.g.
> -
> -In file included from ../mesa-21.3.0/src/util/format/u_format_unpack_neon.c:35:
> -/mnt/b/yoe/master/build/tmp/work/arm1176jzfshf-vfp-yoe-linux-gnueabi/mesa/2_21.3.0-r0/recipe-sysroot-native/usr/lib/clang/13.0.1/include/arm_neon.h:32:2: error: "NEON support not enabled"
> -
> -Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14032]
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> -
> ----
> - src/util/format/u_format.c             | 2 +-
> - src/util/format/u_format_unpack_neon.c | 2 +-
> - 2 files changed, 2 insertions(+), 2 deletions(-)
> -
> -diff --git a/src/util/format/u_format.c b/src/util/format/u_format.c
> -index c071250..0880984 100644
> ---- a/src/util/format/u_format.c
> -+++ b/src/util/format/u_format.c
> -@@ -1184,7 +1184,7 @@ static void
> - util_format_unpack_table_init(void)
> - {
> -    for (enum pipe_format format = PIPE_FORMAT_NONE; format < PIPE_FORMAT_COUNT; format++) {
> --#if (defined(PIPE_ARCH_AARCH64) || defined(PIPE_ARCH_ARM)) && !defined(NO_FORMAT_ASM) && !defined(__SOFTFP__)
> -+#if (defined(PIPE_ARCH_AARCH64) || (defined(__ARM_NEON) && defined(PIPE_ARCH_ARM))) && !defined(NO_FORMAT_ASM)
> -       const struct util_format_unpack_description *unpack = util_format_unpack_description_neon(format);
> -       if (unpack) {
> -          util_format_unpack_table[format] = unpack;
> -diff --git a/src/util/format/u_format_unpack_neon.c b/src/util/format/u_format_unpack_neon.c
> -index a4a5cb1..1e4f794 100644
> ---- a/src/util/format/u_format_unpack_neon.c
> -+++ b/src/util/format/u_format_unpack_neon.c
> -@@ -23,7 +23,7 @@
> -
> - #include <u_format.h>
> -
> --#if (defined(PIPE_ARCH_AARCH64) || defined(PIPE_ARCH_ARM)) && !defined(NO_FORMAT_ASM) && !defined(__SOFTFP__)
> -+#if (defined(PIPE_ARCH_AARCH64) || (defined(__ARM_NEON) && defined(PIPE_ARCH_ARM))) && !defined(NO_FORMAT_ASM)
> -
> - /* armhf builds default to vfp, not neon, and refuses to compile neon intrinsics
> -  * unless you tell it "no really".
> diff --git a/meta/recipes-graphics/mesa/mesa-gl_22.3.5.bb b/meta/recipes-graphics/mesa/mesa-gl_23.0.0.bb
> similarity index 100%
> rename from meta/recipes-graphics/mesa/mesa-gl_22.3.5.bb
> rename to meta/recipes-graphics/mesa/mesa-gl_23.0.0.bb
> diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
> index b082b49400..8f72f25c17 100644
> --- a/meta/recipes-graphics/mesa/mesa.inc
> +++ b/meta/recipes-graphics/mesa/mesa.inc
> @@ -17,12 +17,9 @@ PE = "2"
>  SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
>             file://0001-meson.build-check-for-all-linux-host_os-combinations.patch \
>             file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
> -           file://0001-util-format-Check-for-NEON-before-using-it.patch \
> -           file://0001-gbm-backend-fix-gbm-compile-without-dri.patch \
> -           file://0001-freedreno-pm4-Use-unsigned-instead-of-uint-to-fix-mu.patch \
>             "
>
> -SRC_URI[sha256sum] = "3eed2ecae2bc674494566faab9fcc9beb21cd804c7ba2b59a1694f3d7236e6a9"
> +SRC_URI[sha256sum] = "01f3cff3763f09e0adabcb8011e4aebc6ad48f6a4dd4bae904fe918707d253e4"
>
>  UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
>
> diff --git a/meta/recipes-graphics/mesa/mesa_22.3.5.bb b/meta/recipes-graphics/mesa/mesa_23.0.0.bb
> similarity index 100%
> rename from meta/recipes-graphics/mesa/mesa_22.3.5.bb
> rename to meta/recipes-graphics/mesa/mesa_23.0.0.bb
> --
> 2.30.2
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#178696): https://lists.openembedded.org/g/openembedded-core/message/178696
> Mute This Topic: https://lists.openembedded.org/mt/97647023/1997914
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


  reply	other threads:[~2023-03-18  2:48 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-16  9:40 [PATCH 1/6] runqemu: direct mesa to use its own drivers, rather than ones provided by host distro Alexander Kanavin
2023-03-16  9:40 ` [PATCH 2/6] mesa: allow mesa-native/nativesdk only subject to opengl/vulkan DISTRO_FEATURE Alexander Kanavin
2023-03-16  9:40 ` [PATCH 3/6] mesa: enable a rich set of drivers for native builds Alexander Kanavin
2023-03-20 17:10   ` [OE-core] " Ross Burton
2023-03-20 17:41     ` Alexander Kanavin
2023-03-16  9:41 ` [PATCH 4/6] llvm: allow building libllvm in native builds, subject to PACKAGECONFIG Alexander Kanavin
2023-03-20 16:20   ` [OE-core] " Ross Burton
2023-03-20 17:36     ` Alexander Kanavin
2023-03-16  9:41 ` [PATCH 5/6] mesa: do not strip rpaths from dri drivers Alexander Kanavin
2023-03-16  9:41 ` [PATCH 6/6] mesa: update 22.3.5 -> 23.0.0 Alexander Kanavin
2023-03-18  2:47   ` Khem Raj [this message]
2023-03-18  8:01     ` [OE-core] " Alexander Kanavin
2023-03-18 18:37       ` Khem Raj
2023-03-18 18:57         ` Martin Jansa
2023-03-20  7:09         ` Alexander Kanavin
2023-03-20 10:01           ` Richard Purdie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAMKF1sqhwupoW0kV7ao94DvdbxTH4B5i3HfMwOnp6M+g0g85Sg@mail.gmail.com \
    --to=raj.khem@gmail.com \
    --cc=alex.kanavin@gmail.com \
    --cc=alex@linutronix.de \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.