clang 23 is getting into an infinite loop compiling dovecot. On Wed, Sep 2, 2026 at 6:10 PM Khem Raj <[email protected]> wrote:
> > > On Mon, Aug 31, 2026 at 9:59 PM Dora, Sunil Kumar < > [email protected]> wrote: > >> On 8/31/2026 1:23 AM, Khem Raj via lists.openembedded.org wrote: >> >> *CAUTION: This email comes from a non Wind River email account!* >> Do not click links or open attachments unless you recognize the sender >> and know the content is safe. >> Looks pretty good to me. I have few feedback comments, not a merge >> blocker but good to consider for future ease of porting. >> >> Thanks Khem. >> >> Quick update on the upstream side since the series went out. >> >> The clang half of the ssp_nonshared patch (0004 in the stack) was *merged >> *into llvm main yesterday, commit fd974c429301 >> <https://github.com/llvm/llvm-project/commit/fd974c4293015388337e2f66f817a23e5873389f>, >> reviewed by >> MaskRay (Original PR #219828 >> <https://github.com/llvm/llvm-project/pull/219828> ). A backport to >> release/23.x is open as PR #220136 >> <https://github.com/llvm/llvm-project/pull/220136>. >> If that lands I will flip 0004 to Upstream-Status: Backport, and at the >> next upgrade the patch goes away entirely. >> > > Thanks for following up on these patches, its really long time that we > clear this debt. > > >> >> The gcc half is on gcc-patches >> <https://gcc.gnu.org/pipermail/gcc-patches/2026-August/729351.html> as >> v2 with bugzilla PR 127138 >> <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127138>. Sam James >> mentioned Gentoo has carried the same fix downstream for years. >> > > yes, I know, again same, it will be nicer to get this list down as well. > Somethings are due to how OE has customized stuff so it will > be hard to get rid of but anything that gets upstreamed is a bonus. > > >> >> Thanks, >> Sunil Dora >> >> >> On Sun, Aug 30, 2026 at 5:59 AM <[email protected]> wrote: >> >>> From: Sunil Dora <[email protected]> >>> >>> This upgrades clang/llvm from 22.1.8 to 23.1.0 and fixes the fallout >>> found while testing the result. >>> >>> The carried LLVM patch stack goes from 41 to 35: seven dropped >>> because 23.1.0 already contains the fix or the code they patched no >>> longer exists, three reworked for LLVM 23, and one added for a 32-bit >>> x86 build break, already merged in llvm-project. >>> >>> Please apply with git am --keep-cr: patch 8 fixes an ovmf file that >>> uses CRLF line endings, and plain git am corrupts the patch. >>> >>> I have also reported the underlying bugs upstream: >>> llvm float16 fix, merged: >>> https://github.com/llvm/llvm-project/pull/219675 >>> ovmf fix, sent to edk2: >>> https://github.com/tianocore/edk2/pull/13038 >>> pango warning, the root cause is in GLib, reported to both: >>> https://gitlab.gnome.org/GNOME/glib/-/issues/4038 >>> https://gitlab.gnome.org/GNOME/pango/-/issues/900 >>> vulkan-samples warning, which is a real bug in their code: >>> https://github.com/KhronosGroup/Vulkan-Samples/issues/1570 >>> >>> Tested: oe-selftest clang suites on qemuarm, qemuarm64, qemux86, >>> qemux86-64 and qemuriscv64 on the autobuilder, musl images on qemux86 >>> and qemuarm64, a qemux86 world build with TOOLCHAIN=clang, 32-bit >>> multilib, and core-image-minimal testimage runs. >>> >>> Deepesh Varatharajan (2): >>> rust: Fix build and oe-selftest failures with LLVM 23 >>> clang/llvm: Ignore tests fail with clang/llvm 23 upgrade >>> >>> Sunil Dora (9): >>> clang/llvm: Upgrade to 23.1.0 release >>> spirv-llvm-translator: Upgrade to 23.1.0 >>> openmp: Build via the LLVM runtimes entry point >>> rust: Do not pass the removed x86 amx-tf32 feature to LLVM 23 >>> clang: Disable clangd's decision-forest completion model on powerpc >>> pango: Don't turn clang 23's -Wunused-but-set-global into an error >>> ovmf: Fix memcpy alias prototype for clang 23 >>> vulkan-samples: Don't turn clang 23's -Wdangling-gsl into an error >>> gettext: Export a fully-flagged Objective-C compiler >>> >>> meta/conf/distro/include/maintainers.inc | 2 +- >>> meta/lib/oeqa/selftest/cases/clang.py | 10 + >>> meta/lib/oeqa/selftest/cases/rust.py | 1 + >>> ...t-env.in-do-not-add-C-CXX-parameters.patch | 17 +- >>> meta/recipes-core/gettext/gettext_1.0.bb | 5 + >>> ...sicLib-fix-memcpy-alias-prototype-fo.patch | 35 + >>> meta/recipes-core/ovmf/ovmf_git.bb | 1 + >>> ...ify-cross-compilation.-Don-t-use-na.patch} | 6 +- >>> ...ibunwind-headers-when-LIBCXXABI_LIBU.patch | 60 -- >>> ...-support-a-new-embedded-linux-target.patch | 309 -------- >>> ...env-override-of-exe-and-libdir-path.patch} | 4 +- >>> ...-driver-Check-sysroot-for-ldso-path.patch} | 14 +- >>> ...ools.cpp-Add-lssp_nonshared-on-musl.patch} | 6 +- >>> ...5-clang-Prepend-trailing-to-sysroot.patch} | 10 +- >>> ...fine-releative-gcc-installation-dir.patch} | 10 +- >>> ...d-and-ldl-along-with-lunwind-for-st.patch} | 10 +- >>> ...-Check-for-atomic-double-intrinsics.patch} | 4 +- >>> ...ure-for-packages-using-find_package.patch} | 20 +- >>> ...e-dir-location-for-cross-toolchains.patch} | 4 +- >>> ...dyld-prefix-when-checking-sysroot-f.patch} | 18 +- >>> ...clang-Use-python3-in-python-scripts.patch} | 6 +- >>> ...-anchor-for-adding-OE-distro-vendor.patch} | 37 +- >>> ...ple-for-non-debian-multiarch-linux-.patch} | 9 +- >>> ...ibunwind-Added-unw_backtrace-method.patch} | 8 +- >>> ...016-lldb-Link-with-libatomic-on-x86.patch} | 4 +- >>> ...ot-use-backtrace-APIs-on-non-glibc-l.patch | 68 -- >>> ...mpiler-rt-Enable-__int128-for-ppc32.patch} | 26 +- >>> ...t-use-cmake-infra-to-detect-libzstd.patch} | 8 +- >>> ...-Fix-stat-struct-s-size-for-O32-ABI.patch} | 6 +- >>> ...cpp-ARMLibDirs-search-also-in-lib32.patch} | 10 +- >>> ...-OE-specific-ABI-triple-for-N32-ABI.patch} | 63 +- >>> ...nwind.pc.in-and-llvm-config-scripts.patch} | 12 +- >>> ...pect-LLVM_LIBDIR_SUFFIX-like-other-.patch} | 17 +- >>> ...o-not-pass-target-to-clang-compiler.patch} | 4 +- >>> ...-sort-ClassInfo-lists-by-name-as-we.patch} | 4 +- >>> ...ve-LLVM_LDFLAGS-from-ldflags-output.patch} | 4 +- >>> ...de-sync_fetch_and_-for-any-pre-ARMv.patch} | 6 +- >>> ...de-uptr-sptr-typedefs-on-Mips-Linux.patch} | 8 +- >>> ...-headers-in-the-debug-info-when-bui.patch} | 6 +- >>> ..._HAVE_OPT_VIEWER_MODULES-externally.patch} | 6 +- >>> ...ang-tblgen-if-it-is-actually-needed.patch} | 8 +- >>> ...ymlink-path-for-libcc-when-LLVM_ENA.patch} | 8 +- >>> ...ix-sysroot-based-compiler-rt-search.patch} | 15 +- >>> ...> 0034-guard-clang-tools-extra-test.patch} | 47 +- >>> ...ng-block-when-searching-for-noreturn.patch | 41 -- >>> ...e-float16-on-32-bit-x86-without-SSE2.patch | 36 + >>> ...UNKNOWN-elements-of-OffloadArch-enum.patch | 274 -------- >>> ...e-__gnu_unwind_frame-in-cxa_personal.patch | 33 - >>> ...te-exit-fold-candidates-in-determini.patch | 71 -- >>> meta/recipes-devtools/clang/clang_git.bb | 4 + >>> meta/recipes-devtools/clang/common-clang.inc | 4 +- >>> meta/recipes-devtools/clang/common.inc | 78 +-- >>> meta/recipes-devtools/clang/openmp_git.bb | 5 +- >>> ...ommits-from-rust-Fix-selftest-llvm23.patch | 661 ++++++++++++++++++ >>> ...llvm-Do-not-pass-amx-tf32-to-LLVM-23.patch | 38 + >>> meta/recipes-devtools/rust/rust-source.inc | 2 + >>> ...ror-on-clang-s-unused-but-set-global.patch | 28 + >>> meta/recipes-graphics/pango/pango_1.58.0.bb | 1 + >>> ...1.5.bb => spirv-llvm-translator_23.1.0.bb} | 6 +- >>> .../vulkan/vulkan-samples_git.bb | 4 +- >>> 60 files changed, 1109 insertions(+), 1113 deletions(-) >>> create mode 100644 >>> meta/recipes-core/ovmf/ovmf/0005-CryptoPkg-IntrinsicLib-fix-memcpy-alias-prototype-fo.patch >>> rename >>> meta/recipes-devtools/clang/clang/{0003-compiler-rt-Simplify-cross-compilation.-Don-t-use-na.patch >>> => 0001-compiler-rt-Simplify-cross-compilation.-Don-t-use-na.patch} (90%) >>> delete mode 100644 >>> meta/recipes-devtools/clang/clang/0001-libcxxabi-Find-libunwind-headers-when-LIBCXXABI_LIBU.patch >>> delete mode 100644 >>> meta/recipes-devtools/clang/clang/0002-compiler-rt-support-a-new-embedded-linux-target.patch >>> rename >>> meta/recipes-devtools/clang/clang/{0004-llvm-allow-env-override-of-exe-and-libdir-path.patch >>> => 0002-llvm-allow-env-override-of-exe-and-libdir-path.patch} (96%) >>> rename >>> meta/recipes-devtools/clang/clang/{0005-clang-driver-Check-sysroot-for-ldso-path.patch >>> => 0003-clang-driver-Check-sysroot-for-ldso-path.patch} (87%) >>> rename >>> meta/recipes-devtools/clang/clang/{0006-clang-Driver-tools.cpp-Add-lssp_nonshared-on-musl.patch >>> => 0004-clang-Driver-tools.cpp-Add-lssp_nonshared-on-musl.patch} (86%) >>> rename >>> meta/recipes-devtools/clang/clang/{0007-clang-Prepend-trailing-to-sysroot.patch >>> => 0005-clang-Prepend-trailing-to-sysroot.patch} (81%) >>> rename >>> meta/recipes-devtools/clang/clang/{0009-clang-Define-releative-gcc-installation-dir.patch >>> => 0006-clang-Define-releative-gcc-installation-dir.patch} (94%) >>> rename >>> meta/recipes-devtools/clang/clang/{0010-clang-Add-lpthread-and-ldl-along-with-lunwind-for-st.patch >>> => 0007-clang-Add-lpthread-and-ldl-along-with-lunwind-for-st.patch} (86%) >>> rename >>> meta/recipes-devtools/clang/clang/{0011-Check-for-atomic-double-intrinsics.patch >>> => 0008-Check-for-atomic-double-intrinsics.patch} (91%) >>> rename >>> meta/recipes-devtools/clang/clang/{0012-cmake-Fix-configure-for-packages-using-find_package.patch >>> => 0009-cmake-Fix-configure-for-packages-using-find_package.patch} (89%) >>> rename >>> meta/recipes-devtools/clang/clang/{0013-clang-Fix-resource-dir-location-for-cross-toolchains.patch >>> => 0010-clang-Fix-resource-dir-location-for-cross-toolchains.patch} (95%) >>> rename >>> meta/recipes-devtools/clang/clang/{0014-clang-driver-Add-dyld-prefix-when-checking-sysroot-f.patch >>> => 0011-clang-driver-Add-dyld-prefix-when-checking-sysroot-f.patch} (88%) >>> rename >>> meta/recipes-devtools/clang/clang/{0015-clang-Use-python3-in-python-scripts.patch >>> => 0012-clang-Use-python3-in-python-scripts.patch} (90%) >>> rename >>> meta/recipes-devtools/clang/clang/{0016-llvm-clang-Insert-anchor-for-adding-OE-distro-vendor.patch >>> => 0013-llvm-clang-Insert-anchor-for-adding-OE-distro-vendor.patch} (91%) >>> rename >>> meta/recipes-devtools/clang/clang/{0018-clang-Fix-x86-triple-for-non-debian-multiarch-linux-.patch >>> => 0014-clang-Fix-x86-triple-for-non-debian-multiarch-linux-.patch} (86%) >>> rename >>> meta/recipes-devtools/clang/clang/{0019-libunwind-Added-unw_backtrace-method.patch >>> => 0015-libunwind-Added-unw_backtrace-method.patch} (89%) >>> rename >>> meta/recipes-devtools/clang/clang/{0020-lldb-Link-with-libatomic-on-x86.patch >>> => 0016-lldb-Link-with-libatomic-on-x86.patch} (92%) >>> delete mode 100644 >>> meta/recipes-devtools/clang/clang/0017-compiler-rt-Do-not-use-backtrace-APIs-on-non-glibc-l.patch >>> rename >>> meta/recipes-devtools/clang/clang/{0021-compiler-rt-Enable-__int128-for-ppc32.patch >>> => 0017-compiler-rt-Enable-__int128-for-ppc32.patch} (77%) >>> rename >>> meta/recipes-devtools/clang/clang/{0022-llvm-Do-not-use-cmake-infra-to-detect-libzstd.patch >>> => 0018-llvm-Do-not-use-cmake-infra-to-detect-libzstd.patch} (91%) >>> rename >>> meta/recipes-devtools/clang/clang/{0023-compiler-rt-Fix-stat-struct-s-size-for-O32-ABI.patch >>> => 0019-compiler-rt-Fix-stat-struct-s-size-for-O32-ABI.patch} (91%) >>> rename >>> meta/recipes-devtools/clang/clang/{0024-ToolChains-Gnu.cpp-ARMLibDirs-search-also-in-lib32.patch >>> => 0020-ToolChains-Gnu.cpp-ARMLibDirs-search-also-in-lib32.patch} (98%) >>> rename >>> meta/recipes-devtools/clang/clang/{0025-clang-llvm-Add-OE-specific-ABI-triple-for-N32-ABI.patch >>> => 0021-clang-llvm-Add-OE-specific-ABI-triple-for-N32-ABI.patch} (60%) >>> rename >>> meta/recipes-devtools/clang/clang/{0026-llvm-Add-libunwind.pc.in-and-llvm-config-scripts.patch >>> => 0022-llvm-Add-libunwind.pc.in-and-llvm-config-scripts.patch} (84%) >>> rename >>> meta/recipes-devtools/clang/clang/{0027-scan-build-py-respect-LLVM_LIBDIR_SUFFIX-like-other-.patch >>> => 0023-scan-build-py-respect-LLVM_LIBDIR_SUFFIX-like-other-.patch} (90%) >>> rename >>> meta/recipes-devtools/clang/clang/{0028-compiler-rt-Do-not-pass-target-to-clang-compiler.patch >>> => 0024-compiler-rt-Do-not-pass-target-to-clang-compiler.patch} (91%) >>> rename >>> meta/recipes-devtools/clang/clang/{0029-AsmMatcherEmitter-sort-ClassInfo-lists-by-name-as-we.patch >>> => 0025-AsmMatcherEmitter-sort-ClassInfo-lists-by-name-as-we.patch} (92%) >>> rename >>> meta/recipes-devtools/clang/clang/{0030-llvm-config-remove-LLVM_LDFLAGS-from-ldflags-output.patch >>> => 0026-llvm-config-remove-LLVM_LDFLAGS-from-ldflags-output.patch} (92%) >>> rename >>> meta/recipes-devtools/clang/clang/{0031-compiler-rt-Exclude-sync_fetch_and_-for-any-pre-ARMv.patch >>> => 0027-compiler-rt-Exclude-sync_fetch_and_-for-any-pre-ARMv.patch} (95%) >>> rename >>> meta/recipes-devtools/clang/clang/{0032-compiler-rt-Hardcode-uptr-sptr-typedefs-on-Mips-Linu.patch >>> => 0028-Hardcode-uptr-sptr-typedefs-on-Mips-Linux.patch} (86%) >>> rename >>> meta/recipes-devtools/clang/clang/{0034-Revert-libc-Remap-headers-in-the-debug-info-when-bui.patch >>> => 0029-Revert-libc-Remap-headers-in-the-debug-info-when-bui.patch} (89%) >>> rename >>> meta/recipes-devtools/clang/clang/{0036-Don-t-expose-LLVM_HAVE_OPT_VIEWER_MODULES-externally.patch >>> => 0030-Don-t-expose-LLVM_HAVE_OPT_VIEWER_MODULES-externally.patch} (86%) >>> rename >>> meta/recipes-devtools/clang/clang/{0037-clang-Only-build-clang-tblgen-if-it-is-actually-need.patch >>> => 0031-Only-build-clang-tblgen-if-it-is-actually-needed.patch} (81%) >>> rename >>> meta/recipes-devtools/clang/clang/{0038-llvm-libgcc-Fix-symlink-path-for-libcc-when-LLVM_ENA.patch >>> => 0032-llvm-libgcc-Fix-symlink-path-for-libcc-when-LLVM_ENA.patch} (93%) >>> rename >>> meta/recipes-devtools/clang/clang/{0041-Consolidate-and-fix-sysroot-based-compiler-rt-search.patch >>> => 0033-Consolidate-and-fix-sysroot-based-compiler-rt-search.patch} (91%) >>> rename >>> meta/recipes-devtools/clang/clang/{0042-guard-clang-tools-extra-test.patch >>> => 0034-guard-clang-tools-extra-test.patch} (83%) >>> delete mode 100644 >>> meta/recipes-devtools/clang/clang/0035-Prevent-revisiting-block-when-searching-for-noreturn.patch >>> create mode 100644 >>> meta/recipes-devtools/clang/clang/0035-libc-Disable-float16-on-32-bit-x86-without-SSE2.patch >>> delete mode 100644 >>> meta/recipes-devtools/clang/clang/0039-Rename-UNUSED-and-UNKNOWN-elements-of-OffloadArch-enum.patch >>> delete mode 100644 >>> meta/recipes-devtools/clang/clang/0040-libcxxabi-declare-__gnu_unwind_frame-in-cxa_personal.patch >>> delete mode 100644 >>> meta/recipes-devtools/clang/clang/0043-LoopUnroll-Iterate-exit-fold-candidates-in-determini.patch >>> create mode 100644 >>> meta/recipes-devtools/rust/files/0004-Backport-commits-from-rust-Fix-selftest-llvm23.patch >>> create mode 100644 >>> meta/recipes-devtools/rust/files/0005-rustc_codegen_llvm-Do-not-pass-amx-tf32-to-LLVM-23.patch >>> create mode 100644 >>> meta/recipes-graphics/pango/pango/0001-meson-don-t-error-on-clang-s-unused-but-set-global.patch >>> rename meta/recipes-graphics/spir/{spirv-llvm-translator_22.1.5.bb => >>> spirv-llvm-translator_23.1.0.bb} (87%) >>> >>> -- >>> 2.43.0 >>> >>> >> >> >> >> >>
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#245051): https://lists.openembedded.org/g/openembedded-core/message/245051 Mute This Topic: https://lists.openembedded.org/mt/120998127/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
