diff mbox series

clang: drop obsolete patch D144514

Message ID 20250911115835.1885519-1-sunilkumar.dora@windriver.com
State New
Headers show
Series clang: drop obsolete patch D144514 | expand

Commit Message

Sunil Kumar Dora Sept. 11, 2025, 11:58 a.m. UTC
From: Sunil Dora <sunilkumar.dora@windriver.com>

The upstream fix for the TIMEBITS=64 error was committed in LLVM
D140812 (commit 26800a2) in sanitizer_platform_limits_posix.cpp,
which addresses the issue for Linux builds.

Our patch D144514 (#undef TIMEBITS in sanitizer_platform.h) is no
longer needed. Testing compiler-rt-sanitizers for arm32 also
succeeded without this patch, confirming it is safe to drop.

Upstream fix:
https://github.com/llvm/llvm-project/commit/26800a2c7e7996dc773b4e990dd5cca41c45e1a9

Signed-off-by: Sunil Dora <sunilkumar.dora@windriver.com>
---
 ...f-_TIME_BITS-along-with-_FILE_OFFSET.patch | 43 -------------------
 meta/recipes-devtools/clang/common.inc        |  1 -
 2 files changed, 44 deletions(-)
 delete mode 100644 meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch

Comments

Khem Raj Sept. 11, 2025, 2:26 p.m. UTC | #1
On Thu, Sep 11, 2025 at 4:59 AM <sunilkumar.dora@windriver.com> wrote:

> From: Sunil Dora <sunilkumar.dora@windriver.com>
>
> The upstream fix for the TIMEBITS=64 error was committed in LLVM
> D140812 (commit 26800a2) in sanitizer_platform_limits_posix.cpp,
> which addresses the issue for Linux builds.
>
> Our patch D144514 (#undef TIMEBITS in sanitizer_platform.h) is no
> longer needed. Testing compiler-rt-sanitizers for arm32 also
> succeeded without this patch, confirming it is safe to drop.


This is already squashed into 21.1.1 upgrade patch


>
> Upstream fix:
>
> https://github.com/llvm/llvm-project/commit/26800a2c7e7996dc773b4e990dd5cca41c45e1a9
>
> Signed-off-by: Sunil Dora <sunilkumar.dora@windriver.com>
> ---
>  ...f-_TIME_BITS-along-with-_FILE_OFFSET.patch | 43 -------------------
>  meta/recipes-devtools/clang/common.inc        |  1 -
>  2 files changed, 44 deletions(-)
>  delete mode 100644
> meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
>
> diff --git
> a/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
> b/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
> deleted file mode 100644
> index e129aa245d..0000000000
> ---
> a/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
> +++ /dev/null
> @@ -1,43 +0,0 @@
> -From 6b6a518bc7686af7680f45fcdea7c414a22a2f53 Mon Sep 17 00:00:00 2001
> -From: Khem Raj <raj.khem@gmail.com>
> -Date: Tue, 21 Feb 2023 12:46:10 -0800
> -Subject: [PATCH] compiler-rt: Undef _TIME_BITS along with
> _FILE_OFFSET_BITS in
> - sanitizers
> -
> -On 32bit systems using 64bit time_t build fails because
> -_FILE_OFFSET_BITS is undefined here but _TIME_BITS is still set to 64
> -
> -Fixes
> -In file included from
> compiler-rt/lib/sanitizer_common/sanitizer_procmaps_solaris.cpp:17:
> -In file included from
> compiler-rt/lib/sanitizer_common/sanitizer_platform.h:25:
> -In file included from /usr/include/features.h:393:
> -/usr/include/features-time64.h:26:5: error: "_TIME_BITS=64 is allowed
> only with _FILE_OFFSET_BITS=64"
> -    ^
> -1 error generated.
> -
> -Upstream-Status: Submitted [https://reviews.llvm.org/D144514]
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ----
> - compiler-rt/lib/sanitizer_common/sanitizer_platform.h | 9 +++++++++
> - 1 file changed, 9 insertions(+)
> -
> -diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
> b/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
> -index 57966403c92a..efa83f30eca0 100644
> ---- a/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
> -+++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
> -@@ -22,6 +22,15 @@
> - // function declarations into a .S file which doesn't compile.
> - // https://crbug.com/1162741
> - #if __has_include(<features.h>) && !defined(__ANDROID__)
> -+// Some sources undefine _FILE_OFFSET_BITS deliberately e.g.
> -+// sanitizer_procmaps_solaris.cpp. This is problematic on glibc systems
> with
> -+// 32-bit architectures using 64-bit time_t and users passing
> _TIME_BITS=64
> -+// from build environment, therefore both _FILE_OFFSET_BITS and
> _TIME_BITS
> -+// need to be undefined together since features.h will check for both
> being 64
> -+// if one is set to 64.
> -+#  if !defined(_FILE_OFFSET_BITS)
> -+#    undef _TIME_BITS
> -+#  endif
> - #  include <features.h>
> - #endif
> -
> diff --git a/meta/recipes-devtools/clang/common.inc
> b/meta/recipes-devtools/clang/common.inc
> index cbcc4feded..9f8daad9f1 100644
> --- a/meta/recipes-devtools/clang/common.inc
> +++ b/meta/recipes-devtools/clang/common.inc
> @@ -46,7 +46,6 @@ SRC_URI = "\
>      file://0023-compiler-rt-Enable-__int128-for-ppc32.patch \
>      file://0024-llvm-Do-not-use-cmake-infra-to-detect-libzstd.patch \
>      file://0025-compiler-rt-Fix-stat-struct-s-size-for-O32-ABI.patch \
> -
> file://0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch \
>      file://0027-ToolChains-Gnu.cpp-ARMLibDirs-search-also-in-lib32.patch \
>      file://0028-clang-llvm-Add-OE-specific-ABI-triple-for-N32-ABI.patch \
>      file://0029-llvm-Add-libunwind.pc.in-and-llvm-config-scripts.patch \
> --
> 2.49.0
>
>
Sunil Kumar Dora Sept. 11, 2025, 2:34 p.m. UTC | #2
On 9/11/2025 7:56 PM, Khem Raj 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.
>
> On Thu, Sep 11, 2025 at 4:59 AM <sunilkumar.dora@windriver.com> wrote:
>
>     From: Sunil Dora <sunilkumar.dora@windriver.com>
>
>     The upstream fix for the TIMEBITS=64 error was committed in LLVM
>     D140812 (commit 26800a2) in sanitizer_platform_limits_posix.cpp,
>     which addresses the issue for Linux builds.
>
>     Our patch D144514 (#undef TIMEBITS in sanitizer_platform.h) is no
>     longer needed. Testing compiler-rt-sanitizers for arm32 also
>     succeeded without this patch, confirming it is safe to drop.
>
>
> This is already squashed into 21.1.1 upgrade patch
Thank you for pointing this out. I had missed the upstream commit.
>
>
>
>     Upstream fix:
>     https://github.com/llvm/llvm-project/commit/26800a2c7e7996dc773b4e990dd5cca41c45e1a9
>     <https://urldefense.com/v3/__https://github.com/llvm/llvm-project/commit/26800a2c7e7996dc773b4e990dd5cca41c45e1a9__;!!AjveYdw8EvQ!eH7j8lFciVtBqvBrcvyjLNTqhg2-u8hxvOdA-U0Nwk7r6hHDXmFOkNZ5A_aexDXqJIPJXbC63Z5viALlFnThCUo$>
>
>     Signed-off-by: Sunil Dora <sunilkumar.dora@windriver.com>
>     ---
>      ...f-_TIME_BITS-along-with-_FILE_OFFSET.patch | 43
>     -------------------
>      meta/recipes-devtools/clang/common.inc
>     <https://urldefense.com/v3/__http://common.inc__;!!AjveYdw8EvQ!eH7j8lFciVtBqvBrcvyjLNTqhg2-u8hxvOdA-U0Nwk7r6hHDXmFOkNZ5A_aexDXqJIPJXbC63Z5viALl54Mv2h0$> 
>           |  1 -
>      2 files changed, 44 deletions(-)
>      delete mode 100644
>     meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
>
>     diff --git
>     a/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
>     b/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
>     deleted file mode 100644
>     index e129aa245d..0000000000
>     ---
>     a/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
>     +++ /dev/null
>     @@ -1,43 +0,0 @@
>     -From 6b6a518bc7686af7680f45fcdea7c414a22a2f53 Mon Sep 17 00:00:00
>     2001
>     -From: Khem Raj <raj.khem@gmail.com>
>     -Date: Tue, 21 Feb 2023 12:46:10 -0800
>     -Subject: [PATCH] compiler-rt: Undef _TIME_BITS along with
>     _FILE_OFFSET_BITS in
>     - sanitizers
>     -
>     -On 32bit systems using 64bit time_t build fails because
>     -_FILE_OFFSET_BITS is undefined here but _TIME_BITS is still set to 64
>     -
>     -Fixes
>     -In file included from
>     compiler-rt/lib/sanitizer_common/sanitizer_procmaps_solaris.cpp:17:
>     -In file included from
>     compiler-rt/lib/sanitizer_common/sanitizer_platform.h:25:
>     -In file included from /usr/include/features.h:393:
>     -/usr/include/features-time64.h:26:5: error: "_TIME_BITS=64 is
>     allowed only with _FILE_OFFSET_BITS=64"
>     -    ^
>     -1 error generated.
>     -
>     -Upstream-Status: Submitted [https://reviews.llvm.org/D144514
>     <https://urldefense.com/v3/__https://reviews.llvm.org/D144514__;!!AjveYdw8EvQ!eH7j8lFciVtBqvBrcvyjLNTqhg2-u8hxvOdA-U0Nwk7r6hHDXmFOkNZ5A_aexDXqJIPJXbC63Z5viALlIvqlFpA$>]
>     -Signed-off-by: Khem Raj <raj.khem@gmail.com>
>     ----
>     - compiler-rt/lib/sanitizer_common/sanitizer_platform.h | 9 +++++++++
>     - 1 file changed, 9 insertions(+)
>     -
>     -diff --git
>     a/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
>     b/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
>     -index 57966403c92a..efa83f30eca0 100644
>     ---- a/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
>     -+++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
>     -@@ -22,6 +22,15 @@
>     - // function declarations into a .S file which doesn't compile.
>     - // https://crbug.com/1162741
>     <https://urldefense.com/v3/__https://crbug.com/1162741__;!!AjveYdw8EvQ!eH7j8lFciVtBqvBrcvyjLNTqhg2-u8hxvOdA-U0Nwk7r6hHDXmFOkNZ5A_aexDXqJIPJXbC63Z5viALlPH0CaKY$>
>     - #if __has_include(<features.h>) && !defined(__ANDROID__)
>     -+// Some sources undefine _FILE_OFFSET_BITS deliberately e.g.
>     -+// sanitizer_procmaps_solaris.cpp. This is problematic on glibc
>     systems with
>     -+// 32-bit architectures using 64-bit time_t and users passing
>     _TIME_BITS=64
>     -+// from build environment, therefore both _FILE_OFFSET_BITS and
>     _TIME_BITS
>     -+// need to be undefined together since features.h will check for
>     both being 64
>     -+// if one is set to 64.
>     -+#  if !defined(_FILE_OFFSET_BITS)
>     -+#    undef _TIME_BITS
>     -+#  endif
>     - #  include <features.h>
>     - #endif
>     -
>     diff --git a/meta/recipes-devtools/clang/common.inc
>     <https://urldefense.com/v3/__http://common.inc__;!!AjveYdw8EvQ!eH7j8lFciVtBqvBrcvyjLNTqhg2-u8hxvOdA-U0Nwk7r6hHDXmFOkNZ5A_aexDXqJIPJXbC63Z5viALl54Mv2h0$>
>     b/meta/recipes-devtools/clang/common.inc
>     <https://urldefense.com/v3/__http://common.inc__;!!AjveYdw8EvQ!eH7j8lFciVtBqvBrcvyjLNTqhg2-u8hxvOdA-U0Nwk7r6hHDXmFOkNZ5A_aexDXqJIPJXbC63Z5viALl54Mv2h0$>
>     index cbcc4feded..9f8daad9f1 100644
>     --- a/meta/recipes-devtools/clang/common.inc
>     <https://urldefense.com/v3/__http://common.inc__;!!AjveYdw8EvQ!eH7j8lFciVtBqvBrcvyjLNTqhg2-u8hxvOdA-U0Nwk7r6hHDXmFOkNZ5A_aexDXqJIPJXbC63Z5viALl54Mv2h0$>
>     +++ b/meta/recipes-devtools/clang/common.inc
>     <https://urldefense.com/v3/__http://common.inc__;!!AjveYdw8EvQ!eH7j8lFciVtBqvBrcvyjLNTqhg2-u8hxvOdA-U0Nwk7r6hHDXmFOkNZ5A_aexDXqJIPJXbC63Z5viALl54Mv2h0$>
>     @@ -46,7 +46,6 @@ SRC_URI = "\
>     file://0023-compiler-rt-Enable-__int128-for-ppc32.patch \
>     file://0024-llvm-Do-not-use-cmake-infra-to-detect-libzstd.patch \
>     file://0025-compiler-rt-Fix-stat-struct-s-size-for-O32-ABI.patch \
>     -
>     file://0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
>     \
>     file://0027-ToolChains-Gnu.cpp-ARMLibDirs-search-also-in-lib32.patch \
>     file://0028-clang-llvm-Add-OE-specific-ABI-triple-for-N32-ABI.patch \
>     file://0029-llvm-Add-libunwind.pc.in-and-llvm-config-scripts.patch \
>     -- 
>     2.49.0
>
diff mbox series

Patch

diff --git a/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch b/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
deleted file mode 100644
index e129aa245d..0000000000
--- a/meta/recipes-devtools/clang/clang/0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch
+++ /dev/null
@@ -1,43 +0,0 @@ 
-From 6b6a518bc7686af7680f45fcdea7c414a22a2f53 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 21 Feb 2023 12:46:10 -0800
-Subject: [PATCH] compiler-rt: Undef _TIME_BITS along with _FILE_OFFSET_BITS in
- sanitizers
-
-On 32bit systems using 64bit time_t build fails because
-_FILE_OFFSET_BITS is undefined here but _TIME_BITS is still set to 64
-
-Fixes
-In file included from compiler-rt/lib/sanitizer_common/sanitizer_procmaps_solaris.cpp:17:
-In file included from compiler-rt/lib/sanitizer_common/sanitizer_platform.h:25:
-In file included from /usr/include/features.h:393:
-/usr/include/features-time64.h:26:5: error: "_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64"
-    ^
-1 error generated.
-
-Upstream-Status: Submitted [https://reviews.llvm.org/D144514]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- compiler-rt/lib/sanitizer_common/sanitizer_platform.h | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform.h b/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
-index 57966403c92a..efa83f30eca0 100644
---- a/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
-+++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform.h
-@@ -22,6 +22,15 @@
- // function declarations into a .S file which doesn't compile.
- // https://crbug.com/1162741
- #if __has_include(<features.h>) && !defined(__ANDROID__)
-+// Some sources undefine _FILE_OFFSET_BITS deliberately e.g.
-+// sanitizer_procmaps_solaris.cpp. This is problematic on glibc systems with
-+// 32-bit architectures using 64-bit time_t and users passing _TIME_BITS=64
-+// from build environment, therefore both _FILE_OFFSET_BITS and _TIME_BITS
-+// need to be undefined together since features.h will check for both being 64
-+// if one is set to 64.
-+#  if !defined(_FILE_OFFSET_BITS)
-+#    undef _TIME_BITS
-+#  endif
- #  include <features.h>
- #endif
- 
diff --git a/meta/recipes-devtools/clang/common.inc b/meta/recipes-devtools/clang/common.inc
index cbcc4feded..9f8daad9f1 100644
--- a/meta/recipes-devtools/clang/common.inc
+++ b/meta/recipes-devtools/clang/common.inc
@@ -46,7 +46,6 @@  SRC_URI = "\
     file://0023-compiler-rt-Enable-__int128-for-ppc32.patch \
     file://0024-llvm-Do-not-use-cmake-infra-to-detect-libzstd.patch \
     file://0025-compiler-rt-Fix-stat-struct-s-size-for-O32-ABI.patch \
-    file://0026-compiler-rt-Undef-_TIME_BITS-along-with-_FILE_OFFSET.patch \
     file://0027-ToolChains-Gnu.cpp-ARMLibDirs-search-also-in-lib32.patch \
     file://0028-clang-llvm-Add-OE-specific-ABI-triple-for-N32-ABI.patch \
     file://0029-llvm-Add-libunwind.pc.in-and-llvm-config-scripts.patch \