* [PATCH] glibc: Bump to latest 2.36 branch
@ 2022-08-12 19:27 Khem Raj
2022-08-13 12:38 ` [PATCH 2/2] glibc: apply proposed patch from upstream instead of revert Martin Jansa
0 siblings, 1 reply; 3+ messages in thread
From: Khem Raj @ 2022-08-12 19:27 UTC (permalink / raw)
To: openembedded-core; +Cc: Khem Raj
Drop upstreamed patches
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
meta/recipes-core/glibc/glibc-version.inc | 2 +-
...define-STRCPY-guard-in-strcpy-sse2.S.patch | 28 ----------------
...ace-strcpy-call-with-memcpy-BZ-29454.patch | 32 -------------------
meta/recipes-core/glibc/glibc_2.36.bb | 2 --
4 files changed, 1 insertion(+), 63 deletions(-)
delete mode 100644 meta/recipes-core/glibc/glibc/0026-x86-Fix-define-STRCPY-guard-in-strcpy-sse2.S.patch
delete mode 100644 meta/recipes-core/glibc/glibc/0027-elf-Replace-strcpy-call-with-memcpy-BZ-29454.patch
diff --git a/meta/recipes-core/glibc/glibc-version.inc b/meta/recipes-core/glibc/glibc-version.inc
index f6cdbbf2414..74b48b05f48 100644
--- a/meta/recipes-core/glibc/glibc-version.inc
+++ b/meta/recipes-core/glibc/glibc-version.inc
@@ -1,6 +1,6 @@
SRCBRANCH ?= "release/2.36/master"
PV = "2.36"
-SRCREV_glibc ?= "ac47d8f6cf9744139adb12f540fb9cc610cac579"
+SRCREV_glibc ?= "302bc33bc53c787da6e74162a7092e9c0fb964a8"
SRCREV_localedef ?= "794da69788cbf9bf57b59a852f9f11307663fa87"
GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git"
diff --git a/meta/recipes-core/glibc/glibc/0026-x86-Fix-define-STRCPY-guard-in-strcpy-sse2.S.patch b/meta/recipes-core/glibc/glibc/0026-x86-Fix-define-STRCPY-guard-in-strcpy-sse2.S.patch
deleted file mode 100644
index 2caff3a0d53..00000000000
--- a/meta/recipes-core/glibc/glibc/0026-x86-Fix-define-STRCPY-guard-in-strcpy-sse2.S.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 1d4d09d9dff96f46674262534ce1f0e51a8252cb Mon Sep 17 00:00:00 2001
-From: Noah Goldstein <goldstein.w.n@gmail.com>
-Date: Sun, 7 Aug 2022 22:42:30 +0800
-Subject: [PATCH] x86: Fix `#define STRCPY` guard in strcpy-sse2.S
-
-`#ifndef STPCPY` is incorrect for checking if `STRCPY` is already
-defined. It doesn't end up mattering as the whole check is
-guarded by `#if IS_IN (libc)` but is incorrect none the less.
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=commit;h=312ded0d6339e8c463d0395397b5825401b14f54]
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- sysdeps/x86_64/multiarch/strcpy-sse2.S | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sysdeps/x86_64/multiarch/strcpy-sse2.S b/sysdeps/x86_64/multiarch/strcpy-sse2.S
-index e29b411314..d6b9bae5f8 100644
---- a/sysdeps/x86_64/multiarch/strcpy-sse2.S
-+++ b/sysdeps/x86_64/multiarch/strcpy-sse2.S
-@@ -22,7 +22,7 @@
-
- # include <sysdep.h>
-
--# ifndef STPCPY
-+# ifndef STRCPY
- # define STRCPY __strcpy_sse2
- # endif
-
diff --git a/meta/recipes-core/glibc/glibc/0027-elf-Replace-strcpy-call-with-memcpy-BZ-29454.patch b/meta/recipes-core/glibc/glibc/0027-elf-Replace-strcpy-call-with-memcpy-BZ-29454.patch
deleted file mode 100644
index a2c951ad936..00000000000
--- a/meta/recipes-core/glibc/glibc/0027-elf-Replace-strcpy-call-with-memcpy-BZ-29454.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From f0e36cf0b348dbc990af9f869196710ca89c28c2 Mon Sep 17 00:00:00 2001
-From: Noah Goldstein <goldstein.w.n@gmail.com>
-Date: Sun, 7 Aug 2022 23:54:19 +0800
-Subject: [PATCH] elf: Replace `strcpy` call with `memcpy` [BZ #29454]
-
-GCC normally does this optimization for us in
-strlen_pass::handle_builtin_strcpy but only for optimized
-build. To avoid needing to include strcpy.S in the rtld build to
-support the debug build, just do the optimization by hand.
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=commit;h=483cfe1a6a33d6335b1901581b41040d2d412511]
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- elf/dl-cache.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/elf/dl-cache.c b/elf/dl-cache.c
-index c02a95d9b5..03a6d236e8 100644
---- a/elf/dl-cache.c
-+++ b/elf/dl-cache.c
-@@ -513,8 +513,9 @@ _dl_load_cache_lookup (const char *name)
- we are accessing. Therefore we must make the copy of the
- mapping data without using malloc. */
- char *temp;
-- temp = alloca (strlen (best) + 1);
-- strcpy (temp, best);
-+ size_t best_len = strlen (best) + 1;
-+ temp = alloca (best_len);
-+ memcpy (temp, best, best_len);
- return __strdup (temp);
- }
-
diff --git a/meta/recipes-core/glibc/glibc_2.36.bb b/meta/recipes-core/glibc/glibc_2.36.bb
index 2db3994cf7b..6ccb392f090 100644
--- a/meta/recipes-core/glibc/glibc_2.36.bb
+++ b/meta/recipes-core/glibc/glibc_2.36.bb
@@ -51,8 +51,6 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
file://0023-fix-create-thread-failed-in-unprivileged-process-BZ-.patch \
file://0024-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \
file://0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch \
- file://0026-x86-Fix-define-STRCPY-guard-in-strcpy-sse2.S.patch \
- file://0027-elf-Replace-strcpy-call-with-memcpy-BZ-29454.patch \
"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build-${TARGET_SYS}"
--
2.37.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 2/2] glibc: apply proposed patch from upstream instead of revert
2022-08-12 19:27 [PATCH] glibc: Bump to latest 2.36 branch Khem Raj
@ 2022-08-13 12:38 ` Martin Jansa
2022-08-15 21:17 ` Martin Jansa
0 siblings, 1 reply; 3+ messages in thread
From: Martin Jansa @ 2022-08-13 12:38 UTC (permalink / raw)
To: openembedded-core; +Cc: Martin Jansa
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
...lement-a-useful-version-of-_startup_.patch | 128 ------------------
.../glibc/glibc/0025-startup-Force-O2.patch | 28 ++++
meta/recipes-core/glibc/glibc_2.36.bb | 2 +-
3 files changed, 29 insertions(+), 129 deletions(-)
delete mode 100644 meta/recipes-core/glibc/glibc/0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch
create mode 100644 meta/recipes-core/glibc/glibc/0025-startup-Force-O2.patch
diff --git a/meta/recipes-core/glibc/glibc/0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch b/meta/recipes-core/glibc/glibc/0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch
deleted file mode 100644
index 1982598339..0000000000
--- a/meta/recipes-core/glibc/glibc/0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-From 18b04419d5984f5c6c89fab5e72fcdd1942491cb Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa@gmail.com>
-Date: Sun, 7 Aug 2022 12:51:48 +0200
-Subject: [PATCH] Revert "Linux: Implement a useful version of _startup_fatal"
-
-This reverts commit a2a6bce7d7e52c1c34369a7da62c501cc350bc31.
-
-Upstream-Status: Inappropriate [temporary work around]
-
-Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
----
- sysdeps/unix/sysv/linux/i386/startup.h | 23 ++++++++++++---
- sysdeps/unix/sysv/linux/ia64/startup.h | 22 ---------------
- sysdeps/unix/sysv/linux/startup.h | 39 --------------------------
- 3 files changed, 19 insertions(+), 65 deletions(-)
- delete mode 100644 sysdeps/unix/sysv/linux/ia64/startup.h
- delete mode 100644 sysdeps/unix/sysv/linux/startup.h
-
-diff --git a/sysdeps/unix/sysv/linux/i386/startup.h b/sysdeps/unix/sysv/linux/i386/startup.h
-index 213805d7d2..67c9310f3a 100644
---- a/sysdeps/unix/sysv/linux/i386/startup.h
-+++ b/sysdeps/unix/sysv/linux/i386/startup.h
-@@ -1,5 +1,5 @@
- /* Linux/i386 definitions of functions used by static libc main startup.
-- Copyright (C) 2022 Free Software Foundation, Inc.
-+ Copyright (C) 2017-2022 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
-@@ -16,7 +16,22 @@
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
--/* Can't use "call *%gs:SYSINFO_OFFSET" during startup. */
--#define I386_USE_SYSENTER 0
-+#if BUILD_PIE_DEFAULT
-+/* Can't use "call *%gs:SYSINFO_OFFSET" during statup in static PIE. */
-+# define I386_USE_SYSENTER 0
-
--#include_next <startup.h>
-+# include <sysdep.h>
-+# include <abort-instr.h>
-+
-+__attribute__ ((__noreturn__))
-+static inline void
-+_startup_fatal (const char *message __attribute__ ((unused)))
-+{
-+ /* This is only called very early during startup in static PIE.
-+ FIXME: How can it be improved? */
-+ ABORT_INSTRUCTION;
-+ __builtin_unreachable ();
-+}
-+#else
-+# include_next <startup.h>
-+#endif
-diff --git a/sysdeps/unix/sysv/linux/ia64/startup.h b/sysdeps/unix/sysv/linux/ia64/startup.h
-deleted file mode 100644
-index 77f29f15a2..0000000000
---- a/sysdeps/unix/sysv/linux/ia64/startup.h
-+++ /dev/null
-@@ -1,22 +0,0 @@
--/* Linux/ia64 definitions of functions used by static libc main startup.
-- Copyright (C) 2022 Free Software Foundation, Inc.
-- This file is part of the GNU C Library.
--
-- The GNU C Library is free software; you can redistribute it and/or
-- modify it under the terms of the GNU Lesser General Public
-- License as published by the Free Software Foundation; either
-- version 2.1 of the License, or (at your option) any later version.
--
-- The GNU C Library is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-- Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public
-- License along with the GNU C Library; if not, see
-- <https://www.gnu.org/licenses/>. */
--
--/* This code is used before the TCB is set up. */
--#define IA64_USE_NEW_STUB 0
--
--#include_next <startup.h>
-diff --git a/sysdeps/unix/sysv/linux/startup.h b/sysdeps/unix/sysv/linux/startup.h
-deleted file mode 100644
-index 39859b404a..0000000000
---- a/sysdeps/unix/sysv/linux/startup.h
-+++ /dev/null
-@@ -1,39 +0,0 @@
--/* Linux definitions of functions used by static libc main startup.
-- Copyright (C) 2017-2022 Free Software Foundation, Inc.
-- This file is part of the GNU C Library.
--
-- The GNU C Library is free software; you can redistribute it and/or
-- modify it under the terms of the GNU Lesser General Public
-- License as published by the Free Software Foundation; either
-- version 2.1 of the License, or (at your option) any later version.
--
-- The GNU C Library is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-- Lesser General Public License for more details.
--
-- You should have received a copy of the GNU Lesser General Public
-- License along with the GNU C Library; if not, see
-- <https://www.gnu.org/licenses/>. */
--
--#ifdef SHARED
--# include_next <startup.h>
--#else
--# include <sysdep.h>
--
--/* Avoid a run-time invocation of strlen. */
--#define _startup_fatal(message) \
-- do \
-- { \
-- size_t __message_length = __builtin_strlen (message); \
-- if (! __builtin_constant_p (__message_length)) \
-- { \
-- extern void _startup_fatal_not_constant (void); \
-- _startup_fatal_not_constant (); \
-- } \
-- INTERNAL_SYSCALL_CALL (write, STDERR_FILENO, (message), \
-- __message_length); \
-- INTERNAL_SYSCALL_CALL (exit_group, 127); \
-- } \
-- while (0)
--#endif /* !SHARED */
diff --git a/meta/recipes-core/glibc/glibc/0025-startup-Force-O2.patch b/meta/recipes-core/glibc/glibc/0025-startup-Force-O2.patch
new file mode 100644
index 0000000000..1f3426295a
--- /dev/null
+++ b/meta/recipes-core/glibc/glibc/0025-startup-Force-O2.patch
@@ -0,0 +1,28 @@
+From 5e635e5dc7d1b21a78f38109d4f43a03bec865c8 Mon Sep 17 00:00:00 2001
+From: "H.J. Lu" <hjl.tools@gmail.com>
+Date: Sun, 7 Aug 2022 12:51:48 +0200
+Subject: [PATCH] startup: Force -O2
+
+Upstream-Status: Submitted [https://sourceware.org/bugzilla/show_bug.cgi?id=29249]
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+---
+ sysdeps/unix/sysv/linux/startup.h | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/sysdeps/unix/sysv/linux/startup.h b/sysdeps/unix/sysv/linux/startup.h
+index 39859b404a..e1fc1b682d 100644
+--- a/sysdeps/unix/sysv/linux/startup.h
++++ b/sysdeps/unix/sysv/linux/startup.h
+@@ -21,6 +21,11 @@
+ #else
+ # include <sysdep.h>
+
++# if !defined __OPTIMIZE__ || __OPTIMIZE__ < 2
++/* Force to fold strlen. */
++# pragma GCC optimize(2)
++# endif
++
+ /* Avoid a run-time invocation of strlen. */
+ #define _startup_fatal(message) \
+ do \
diff --git a/meta/recipes-core/glibc/glibc_2.36.bb b/meta/recipes-core/glibc/glibc_2.36.bb
index 6ccb392f09..1cfa8101ef 100644
--- a/meta/recipes-core/glibc/glibc_2.36.bb
+++ b/meta/recipes-core/glibc/glibc_2.36.bb
@@ -50,7 +50,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
file://0022-tzselect.ksh-Use-bin-sh-default-shell-interpreter.patch \
file://0023-fix-create-thread-failed-in-unprivileged-process-BZ-.patch \
file://0024-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \
- file://0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch \
+ file://0025-startup-Force-O2.patch \
"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build-${TARGET_SYS}"
--
2.37.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 2/2] glibc: apply proposed patch from upstream instead of revert
2022-08-13 12:38 ` [PATCH 2/2] glibc: apply proposed patch from upstream instead of revert Martin Jansa
@ 2022-08-15 21:17 ` Martin Jansa
0 siblings, 0 replies; 3+ messages in thread
From: Martin Jansa @ 2022-08-15 21:17 UTC (permalink / raw)
To: openembedded-core
[-- Attachment #1: Type: text/plain, Size: 9078 bytes --]
Another version was proposed upstream
https://sourceware.org/bugzilla/attachment.cgi?id=14283
lets wait a bit more on this one.
On Sat, Aug 13, 2022 at 2:39 PM Martin Jansa <martin.jansa@gmail.com> wrote:
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
> ...lement-a-useful-version-of-_startup_.patch | 128 ------------------
> .../glibc/glibc/0025-startup-Force-O2.patch | 28 ++++
> meta/recipes-core/glibc/glibc_2.36.bb | 2 +-
> 3 files changed, 29 insertions(+), 129 deletions(-)
> delete mode 100644
> meta/recipes-core/glibc/glibc/0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch
> create mode 100644
> meta/recipes-core/glibc/glibc/0025-startup-Force-O2.patch
>
> diff --git
> a/meta/recipes-core/glibc/glibc/0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch
> b/meta/recipes-core/glibc/glibc/0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch
> deleted file mode 100644
> index 1982598339..0000000000
> ---
> a/meta/recipes-core/glibc/glibc/0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch
> +++ /dev/null
> @@ -1,128 +0,0 @@
> -From 18b04419d5984f5c6c89fab5e72fcdd1942491cb Mon Sep 17 00:00:00 2001
> -From: Martin Jansa <Martin.Jansa@gmail.com>
> -Date: Sun, 7 Aug 2022 12:51:48 +0200
> -Subject: [PATCH] Revert "Linux: Implement a useful version of
> _startup_fatal"
> -
> -This reverts commit a2a6bce7d7e52c1c34369a7da62c501cc350bc31.
> -
> -Upstream-Status: Inappropriate [temporary work around]
> -
> -Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ----
> - sysdeps/unix/sysv/linux/i386/startup.h | 23 ++++++++++++---
> - sysdeps/unix/sysv/linux/ia64/startup.h | 22 ---------------
> - sysdeps/unix/sysv/linux/startup.h | 39 --------------------------
> - 3 files changed, 19 insertions(+), 65 deletions(-)
> - delete mode 100644 sysdeps/unix/sysv/linux/ia64/startup.h
> - delete mode 100644 sysdeps/unix/sysv/linux/startup.h
> -
> -diff --git a/sysdeps/unix/sysv/linux/i386/startup.h
> b/sysdeps/unix/sysv/linux/i386/startup.h
> -index 213805d7d2..67c9310f3a 100644
> ---- a/sysdeps/unix/sysv/linux/i386/startup.h
> -+++ b/sysdeps/unix/sysv/linux/i386/startup.h
> -@@ -1,5 +1,5 @@
> - /* Linux/i386 definitions of functions used by static libc main startup.
> -- Copyright (C) 2022 Free Software Foundation, Inc.
> -+ Copyright (C) 2017-2022 Free Software Foundation, Inc.
> - This file is part of the GNU C Library.
> -
> - The GNU C Library is free software; you can redistribute it and/or
> -@@ -16,7 +16,22 @@
> - License along with the GNU C Library; if not, see
> - <https://www.gnu.org/licenses/>. */
> -
> --/* Can't use "call *%gs:SYSINFO_OFFSET" during startup. */
> --#define I386_USE_SYSENTER 0
> -+#if BUILD_PIE_DEFAULT
> -+/* Can't use "call *%gs:SYSINFO_OFFSET" during statup in static PIE. */
> -+# define I386_USE_SYSENTER 0
> -
> --#include_next <startup.h>
> -+# include <sysdep.h>
> -+# include <abort-instr.h>
> -+
> -+__attribute__ ((__noreturn__))
> -+static inline void
> -+_startup_fatal (const char *message __attribute__ ((unused)))
> -+{
> -+ /* This is only called very early during startup in static PIE.
> -+ FIXME: How can it be improved? */
> -+ ABORT_INSTRUCTION;
> -+ __builtin_unreachable ();
> -+}
> -+#else
> -+# include_next <startup.h>
> -+#endif
> -diff --git a/sysdeps/unix/sysv/linux/ia64/startup.h
> b/sysdeps/unix/sysv/linux/ia64/startup.h
> -deleted file mode 100644
> -index 77f29f15a2..0000000000
> ---- a/sysdeps/unix/sysv/linux/ia64/startup.h
> -+++ /dev/null
> -@@ -1,22 +0,0 @@
> --/* Linux/ia64 definitions of functions used by static libc main startup.
> -- Copyright (C) 2022 Free Software Foundation, Inc.
> -- This file is part of the GNU C Library.
> --
> -- The GNU C Library is free software; you can redistribute it and/or
> -- modify it under the terms of the GNU Lesser General Public
> -- License as published by the Free Software Foundation; either
> -- version 2.1 of the License, or (at your option) any later version.
> --
> -- The GNU C Library is distributed in the hope that it will be useful,
> -- but WITHOUT ANY WARRANTY; without even the implied warranty of
> -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> -- Lesser General Public License for more details.
> --
> -- You should have received a copy of the GNU Lesser General Public
> -- License along with the GNU C Library; if not, see
> -- <https://www.gnu.org/licenses/>. */
> --
> --/* This code is used before the TCB is set up. */
> --#define IA64_USE_NEW_STUB 0
> --
> --#include_next <startup.h>
> -diff --git a/sysdeps/unix/sysv/linux/startup.h
> b/sysdeps/unix/sysv/linux/startup.h
> -deleted file mode 100644
> -index 39859b404a..0000000000
> ---- a/sysdeps/unix/sysv/linux/startup.h
> -+++ /dev/null
> -@@ -1,39 +0,0 @@
> --/* Linux definitions of functions used by static libc main startup.
> -- Copyright (C) 2017-2022 Free Software Foundation, Inc.
> -- This file is part of the GNU C Library.
> --
> -- The GNU C Library is free software; you can redistribute it and/or
> -- modify it under the terms of the GNU Lesser General Public
> -- License as published by the Free Software Foundation; either
> -- version 2.1 of the License, or (at your option) any later version.
> --
> -- The GNU C Library is distributed in the hope that it will be useful,
> -- but WITHOUT ANY WARRANTY; without even the implied warranty of
> -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> -- Lesser General Public License for more details.
> --
> -- You should have received a copy of the GNU Lesser General Public
> -- License along with the GNU C Library; if not, see
> -- <https://www.gnu.org/licenses/>. */
> --
> --#ifdef SHARED
> --# include_next <startup.h>
> --#else
> --# include <sysdep.h>
> --
> --/* Avoid a run-time invocation of strlen. */
> --#define _startup_fatal(message) \
> -- do \
> -- { \
> -- size_t __message_length = __builtin_strlen (message); \
> -- if (! __builtin_constant_p (__message_length)) \
> -- { \
> -- extern void _startup_fatal_not_constant (void); \
> -- _startup_fatal_not_constant (); \
> -- } \
> -- INTERNAL_SYSCALL_CALL (write, STDERR_FILENO, (message), \
> -- __message_length); \
> -- INTERNAL_SYSCALL_CALL (exit_group, 127); \
> -- } \
> -- while (0)
> --#endif /* !SHARED */
> diff --git a/meta/recipes-core/glibc/glibc/0025-startup-Force-O2.patch
> b/meta/recipes-core/glibc/glibc/0025-startup-Force-O2.patch
> new file mode 100644
> index 0000000000..1f3426295a
> --- /dev/null
> +++ b/meta/recipes-core/glibc/glibc/0025-startup-Force-O2.patch
> @@ -0,0 +1,28 @@
> +From 5e635e5dc7d1b21a78f38109d4f43a03bec865c8 Mon Sep 17 00:00:00 2001
> +From: "H.J. Lu" <hjl.tools@gmail.com>
> +Date: Sun, 7 Aug 2022 12:51:48 +0200
> +Subject: [PATCH] startup: Force -O2
> +
> +Upstream-Status: Submitted [
> https://sourceware.org/bugzilla/show_bug.cgi?id=29249]
> +
> +Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> +---
> + sysdeps/unix/sysv/linux/startup.h | 5 +++++
> + 1 file changed, 5 insertions(+)
> +
> +diff --git a/sysdeps/unix/sysv/linux/startup.h
> b/sysdeps/unix/sysv/linux/startup.h
> +index 39859b404a..e1fc1b682d 100644
> +--- a/sysdeps/unix/sysv/linux/startup.h
> ++++ b/sysdeps/unix/sysv/linux/startup.h
> +@@ -21,6 +21,11 @@
> + #else
> + # include <sysdep.h>
> +
> ++# if !defined __OPTIMIZE__ || __OPTIMIZE__ < 2
> ++/* Force to fold strlen. */
> ++# pragma GCC optimize(2)
> ++# endif
> ++
> + /* Avoid a run-time invocation of strlen. */
> + #define _startup_fatal(message) \
> + do \
> diff --git a/meta/recipes-core/glibc/glibc_2.36.bb
> b/meta/recipes-core/glibc/glibc_2.36.bb
> index 6ccb392f09..1cfa8101ef 100644
> --- a/meta/recipes-core/glibc/glibc_2.36.bb
> +++ b/meta/recipes-core/glibc/glibc_2.36.bb
> @@ -50,7 +50,7 @@ SRC_URI =
> "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
>
> file://0022-tzselect.ksh-Use-bin-sh-default-shell-interpreter.patch \
>
> file://0023-fix-create-thread-failed-in-unprivileged-process-BZ-.patch \
>
> file://0024-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \
> -
> file://0025-Revert-Linux-Implement-a-useful-version-of-_startup_.patch \
> + file://0025-startup-Force-O2.patch \
> "
> S = "${WORKDIR}/git"
> B = "${WORKDIR}/build-${TARGET_SYS}"
> --
> 2.37.2
>
>
[-- Attachment #2: Type: text/html, Size: 11712 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-08-15 21:18 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-12 19:27 [PATCH] glibc: Bump to latest 2.36 branch Khem Raj
2022-08-13 12:38 ` [PATCH 2/2] glibc: apply proposed patch from upstream instead of revert Martin Jansa
2022-08-15 21:17 ` Martin Jansa
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).