Auto-sync with upstream master

Upstream commit: de895ddcd7fc45caeeeb0ae312311b8bd31d82c5:

- Added Fiji Hindi language locale for Fiji (swbz#21694).
- Added yesstr/nostr for nds_DE and nds_NL (swbz#21756).
- Added yesstr and nostr for Tigrinya (swbz#21759).
- Fix LC_MESSAGES and LC_ADDRESS for anp_IN (swbz#21760).
- Added yesstr/nostr and fix yesexpr for pap_AW and pap_CW (swbz#21757).
- Added Tongan language locale for Tonga (swbz#21728).
- [ARM] Fix ld.so crash when built using Binutils 2.29.
- Added yesstr and nostr for aa_ET (swbz#21768).
- New locale for bi_VU (swbz#21767).
- Disable single thread optimization for open_memstream

Dropped patches:

- armv7hl: Drop 32-bit ARM build fix, already in upstream master.
- s390x: Apply glibc fix again, removing PTRACE_GETREGS etc. (#1469536).
This commit is contained in:
Carlos O'Donell 2017-07-14 21:36:54 -04:00
parent 44f4cf77e9
commit 705ca30d3e
5 changed files with 22 additions and 161 deletions

View File

@ -66,6 +66,7 @@ bg_BG.UTF-8/UTF-8 \
bg_BG/CP1251 \
bhb_IN.UTF-8/UTF-8 \
bho_IN/UTF-8 \
bi_VU/UTF-8 \
bn_BD/UTF-8 \
bn_IN/UTF-8 \
bo_CN/UTF-8 \
@ -251,6 +252,7 @@ hak_TW/UTF-8 \
he_IL.UTF-8/UTF-8 \
he_IL/ISO-8859-8 \
hi_IN/UTF-8 \
hif_FJ/UTF-8 \
hne_IN/UTF-8 \
hr_HR.UTF-8/UTF-8 \
hr_HR/ISO-8859-2 \
@ -431,6 +433,7 @@ tk_TM/UTF-8 \
tl_PH.UTF-8/UTF-8 \
tl_PH/ISO-8859-1 \
tn_ZA/UTF-8 \
to_TO/UTF-8 \
tpi_PG/UTF-8 \
tr_CY.UTF-8/UTF-8 \
tr_CY/ISO-8859-9 \

View File

@ -1,58 +0,0 @@
https://www.sourceware.org/ml/libc-alpha/2017-07/msg00518.html
To: libc-alpha at sourceware dot org
From: Jiong Wang <jiong dot wang at foss dot arm dot com>
Subject: [ARM] Fix ld.so crash when built using Binutils 2.29
Hi,
There is bug report that ld.so in GLIBC 2.24 built by Binutils 2.29 will crash
on arm-linux-gnueabihf. This is confirmed, and the details is at:
https://sourceware.org/bugzilla/show_bug.cgi?id=21725.
And I could also reproduce this crash using GLIBC master.
As analyzed in the PR, the old code was with the assumption that assembler
won't set bit0 of thumb function address if it comes from PC-relative
instructions and the calculation can be finished during assembling. This
assumption however does not hold after PR gas/21458.
I think ARM backend in GLIBC should be fix to be more portable so it could
work with various combinations of GLIBC and Binutils.
OK for master and backport to all release branches?
2017-07-12 Jiong Wang <jiong.wang@arm.com>
* sysdeps/arm/dl-machine.h (elf_machine_load_address): Also strip bit 0
of pcrel_address under Thumb mode.
diff --git a/sysdeps/arm/dl-machine.h b/sysdeps/arm/dl-machine.h
index 7053ead16ed0e7dac182660f7d88fa21f2b4799a..5b67e3d004818308d9bf93effb13d23a762e160f 100644
--- a/sysdeps/arm/dl-machine.h
+++ b/sysdeps/arm/dl-machine.h
@@ -56,11 +56,19 @@ elf_machine_load_address (void)
extern Elf32_Addr internal_function __dl_start (void *) asm ("_dl_start");
Elf32_Addr got_addr = (Elf32_Addr) &__dl_start;
Elf32_Addr pcrel_addr;
+ asm ("adr %0, _dl_start" : "=r" (pcrel_addr));
#ifdef __thumb__
- /* Clear the low bit of the funciton address. */
+ /* Clear the low bit of the funciton address.
+
+ NOTE: got_addr is from GOT table whose lsb is always set by linker if it's
+ Thumb function address. PCREL_ADDR comes from PC-relative calculation
+ which will finish during assembling. GAS assembler before the fix for
+ PR gas/21458 was not setting the lsb but does after that. Always do the
+ strip for both, so the code works with various combinations of glibc and
+ Binutils. */
got_addr &= ~(Elf32_Addr) 1;
+ pcrel_addr &= ~(Elf32_Addr) 1;
#endif
- asm ("adr %0, _dl_start" : "=r" (pcrel_addr));
return pcrel_addr - got_addr;
}

View File

@ -1,94 +0,0 @@
commit 8c2c51115bc19b18491b3decf99db460ea378730
Author: Florian Weimer <fweimer@redhat.com>
Date: Tue Jul 11 14:50:46 2017 +0200
Revert "S390: Sync ptrace.h with kernel. [BZ #21539]"
This reverts commit b08a6a0dea63742313ed3d9577c1e2d83436b196.
diff --git a/sysdeps/s390/fpu/fesetenv.c b/sysdeps/s390/fpu/fesetenv.c
index 0f64a3f..4c9bcf0 100644
--- a/sysdeps/s390/fpu/fesetenv.c
+++ b/sysdeps/s390/fpu/fesetenv.c
@@ -20,6 +20,8 @@
#include <fenv_libc.h>
#include <fpu_control.h>
#include <stddef.h>
+#include <asm/ptrace.h>
+#include <sys/ptrace.h>
#include <unistd.h>
int
diff --git a/sysdeps/unix/sysv/linux/s390/Makefile b/sysdeps/unix/sysv/linux/s390/Makefile
index f30a6bb..3867c33 100644
--- a/sysdeps/unix/sysv/linux/s390/Makefile
+++ b/sysdeps/unix/sysv/linux/s390/Makefile
@@ -29,7 +29,3 @@ CFLAGS-elision-trylock.c = $(elision-CFLAGS)
CFLAGS-elision-unlock.c = $(elision-CFLAGS)
endif
endif
-
-ifeq ($(subdir),misc)
-tests += tst-ptrace-singleblock
-endif
diff --git a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
index 88079fc..7caf101 100644
--- a/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
+++ b/sysdeps/unix/sysv/linux/s390/sys/ptrace.h
@@ -89,9 +89,25 @@ enum __ptrace_request
PTRACE_SINGLESTEP = 9,
#define PT_STEP PTRACE_SINGLESTEP
- /* Execute process until next taken branch. */
- PTRACE_SINGLEBLOCK = 12,
-#define PT_STEPBLOCK PTRACE_SINGLEBLOCK
+ /* Get all general purpose registers used by a processes.
+ This is not supported on all machines. */
+ PTRACE_GETREGS = 12,
+#define PT_GETREGS PTRACE_GETREGS
+
+ /* Set all general purpose registers used by a processes.
+ This is not supported on all machines. */
+ PTRACE_SETREGS = 13,
+#define PT_SETREGS PTRACE_SETREGS
+
+ /* Get all floating point registers used by a processes.
+ This is not supported on all machines. */
+ PTRACE_GETFPREGS = 14,
+#define PT_GETFPREGS PTRACE_GETFPREGS
+
+ /* Set all floating point registers used by a processes.
+ This is not supported on all machines. */
+ PTRACE_SETFPREGS = 15,
+#define PT_SETFPREGS PTRACE_SETFPREGS
/* Attach to a process that is already running. */
PTRACE_ATTACH = 16,
@@ -151,26 +167,8 @@ enum __ptrace_request
PTRACE_SETSIGMASK = 0x420b,
#define PTRACE_SETSIGMASK PTRACE_SETSIGMASK
- PTRACE_SECCOMP_GET_FILTER = 0x420c,
+ PTRACE_SECCOMP_GET_FILTER = 0x420c
#define PTRACE_SECCOMP_GET_FILTER PTRACE_SECCOMP_GET_FILTER
-
- PTRACE_PEEKUSR_AREA = 0x5000,
-#define PTRACE_PEEKUSR_AREA PTRACE_PEEKUSR_AREA
-
- PTRACE_POKEUSR_AREA = 0x5001,
-#define PTRACE_POKEUSR_AREA PTRACE_POKEUSR_AREA
-
- PTRACE_GET_LAST_BREAK = 0x5006,
-#define PTRACE_GET_LAST_BREAK PTRACE_GET_LAST_BREAK
-
- PTRACE_ENABLE_TE = 0x5009,
-#define PTRACE_ENABLE_TE PTRACE_ENABLE_TE
-
- PTRACE_DISABLE_TE = 0x5010,
-#define PTRACE_DISABLE_TE PTRACE_DISABLE_TE
-
- PTRACE_TE_ABORT_RAND = 0x5011
-#define PTRACE_TE_ABORT_RAND PTRACE_TE_ABORT_RAND
};

View File

@ -1,6 +1,6 @@
%define glibcsrcdir glibc-2.25-717-g3020042
%define glibcsrcdir glibc-2.25-732-gde895dd
%define glibcversion 2.25.90
%define glibcrelease 24%{?dist}
%define glibcrelease 25%{?dist}
# Pre-release tarballs are pulled in from git using a command that is
# effectively:
#
@ -295,12 +295,8 @@ Patch2037: glibc-rh1315108.patch
# sln implemented by ldconfig, to conserve disk space.
Patch2112: glibc-rh1315476-2.patch
Patch2113: glibc-rh1469536.patch
Patch2114: glibc-rh1470060.patch
# upstream arm7hl fix for the dynamic linker not yet committed.
Patch2115: glibc-fix-arm32.patch
##############################################################################
# End of glibc patches.
##############################################################################
@ -860,7 +856,6 @@ microbenchmark tests on the system.
%patch0060 -p1
%patch2037 -p1
%patch2112 -p1
%patch2113 -p1
%patch2114 -p1
%patch0061 -p1
# TODO: Remove before F27 release.
@ -870,7 +865,6 @@ microbenchmark tests on the system.
%ifarch ppc64le
%patch0062 -p1
%endif
%patch2115 -p1
##############################################################################
# %%prep - Additional prep required...
@ -2283,6 +2277,22 @@ rm -f *.filelist*
%endif
%changelog
* Fri Jul 14 2017 Carlos O'Donell <carlos@systemhalted.org> - 2.25.90-25
- armv7hl: Drop 32-bit ARM build fix, already in upstream master.
- s390x: Apply glibc fix again, removing PTRACE_GETREGS etc. (#1469536).
- Auto-sync with upstream master,
commit de895ddcd7fc45caeeeb0ae312311b8bd31d82c5:
- Added Fiji Hindi language locale for Fiji (swbz#21694).
- Added yesstr/nostr for nds_DE and nds_NL (swbz#21756).
- Added yesstr and nostr for Tigrinya (swbz#21759).
- Fix LC_MESSAGES and LC_ADDRESS for anp_IN (swbz#21760).
- Added yesstr/nostr and fix yesexpr for pap_AW and pap_CW (swbz#21757).
- Added Tongan language locale for Tonga (swbz#21728).
- [ARM] Fix ld.so crash when built using Binutils 2.29.
- Added yesstr and nostr for aa_ET (swbz#21768).
- New locale for bi_VU (swbz#21767).
- Disable single thread optimization for open_memstream
* Wed Jul 12 2017 Carlos O'Donell <carlos@redhat.com> - 2.25.90-24
- Fix IFUNC crash in early startup for ppc64le static binaries (#1467518).
- Enable building with BIND_NOW on ppc64le (#1467518).

View File

@ -1 +1 @@
SHA512 (glibc-2.25-717-g3020042.tar.gz) = 7d9de98eb321928332e7f3c1c695451c651b4b947a701754d072cc0cdb664336f4a75f24643bab5d023f3ec207d3ef1bf070ab86b781d2517a58b3267371b1bd
SHA512 (glibc-2.25-732-gde895dd.tar.gz) = 3582d489fda2b12af65e9bfec168c002ee8fdab6a61d99749e9b776adb4943f7b8f6ab88db74288f3d1f53dd803cbfb79a344da5ede2c3f0c61d97a8dd5c5365