forked from rpms/glibc
42eb238e49
* Tue Mar 15 2022 Florian Weimer <fweimer@redhat.com> - 2.34-29 - Sync with upstream branch release/2.34/master, commit 224d8c1890b6c57c7e4e8ddbb792dd9552086704: - debug: Synchronize feature guards in fortified functions [BZ #28746] - debug: Autogenerate _FORTIFY_SOURCE tests - Enable _FORTIFY_SOURCE=3 for gcc 12 and above - fortify: Fix spurious warning with realpath - __glibc_unsafe_len: Fix comment - debug: Add tests for _FORTIFY_SOURCE=3 - Make sure that the fortified function conditionals are constant - Don't add access size hints to fortifiable functions - nss: Protect against errno changes in function lookup (bug 28953) - nss: Do not mention NSS test modules in <gnu/lib-names.h> - io: Add fsync call in tst-stat - hppa: Fix warnings from _dl_lookup_address - nptl: Fix cleanups for stack grows up [BZ# 28899] - hppa: Revise gettext trampoline design - hppa: Fix swapcontext - Fix elf/tst-audit2 on hppa - localedef: Handle symbolic links when generating locale-archive - NEWS: Add a bug fix entry for BZ #28896 - x86: Fix TEST_NAME to make it a string in tst-strncmp-rtm.c - x86: Test wcscmp RTM in the wcsncmp overflow case [BZ #28896] - x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896] - string: Add a testcase for wcsncmp with SIZE_MAX [BZ #28755] - linux: fix accuracy of get_nprocs and get_nprocs_conf [BZ #28865] - Add reference to BZ#28860 on NEWS - linux: Fix missing __convert_scm_timestamps (BZ #28860) Resolves: #2063230 Resolves: #2033683 Resolves: #2063041 Resolves: #2063142
28 lines
964 B
Diff
28 lines
964 B
Diff
commit 40fc6a74ee3dd600c84d311d91cbb16962f11a71
|
|
Author: John David Anglin <danglin@gcc.gnu.org>
|
|
Date: Mon Feb 28 15:47:38 2022 +0000
|
|
|
|
nptl: Fix cleanups for stack grows up [BZ# 28899]
|
|
|
|
_STACK_GROWS_DOWN is defined to 0 when the stack grows up. The
|
|
code in unwind.c used `#ifdef _STACK_GROWS_DOWN' to selct the
|
|
stack grows down define for FRAME_LEFT. As a result, the
|
|
_STACK_GROWS_DOWN define was always selected and cleanups were
|
|
incorrectly sequenced when the stack grows up.
|
|
|
|
(cherry picked from commit 2bbc694df279020a6620096d31c1e05c93966f9b)
|
|
|
|
diff --git a/nptl/unwind.c b/nptl/unwind.c
|
|
index f50997f728ccde0d..404fab46d00e9f10 100644
|
|
--- a/nptl/unwind.c
|
|
+++ b/nptl/unwind.c
|
|
@@ -27,7 +27,7 @@
|
|
#include <jmpbuf-unwind.h>
|
|
#include <shlib-compat.h>
|
|
|
|
-#ifdef _STACK_GROWS_DOWN
|
|
+#if _STACK_GROWS_DOWN
|
|
# define FRAME_LEFT(frame, other, adj) \
|
|
((uintptr_t) frame - adj >= (uintptr_t) other - adj)
|
|
#elif _STACK_GROWS_UP
|