Auto-sync with upstream branch master

Upstream-commit: cdf645427d176197b82f44308a5e131d69fb53ad

- glibc-rh741105.patch: Adjust after rebase.
- glibc-fix-float128-benchtests.patch: Add to allow building on armv7hl.
- Update mallinfo2 ABI, and test
- Allow memset local PLT reference for RISC-V.
- powerpc: fix ifunc implementation list for POWER9 strlen and stpcpy
- nscd: bump GC cycle during cache pruning (bug 26130)
- x86: Use HAS_CPU_FEATURE with IBT and SHSTK [BZ #26625]
- <sys/platform/x86.h>: Add Intel Key Locker support
- Fix handling of collating symbols in fnmatch (bug 26620)
- pselect.c: Pass a pointer to SYSCALL_CANCEL [BZ #26606]
- y2038: nptl: Convert sem_{clock|timed}wait to support 64 bit time
- hurd: Add __x86_get_cpu_features to ld.abilist
- x86: Install <sys/platform/x86.h> [BZ #26124]
- linux: Add time64 pselect support
- linux: Add time64 semtimedop support
- linux: Add ppoll time64 optimization
- linux: Simplify clock_getres
- Update sparc libm-test-ulps
- Remove internal usage of extensible stat functions
- Linux: Consolidate xmknod
- linux: Consolidate fxstatat{64}
- linux: Consolidate fxstat{64}
- linux: Consolidate lxstat{64}
- linux: Consolidate xstat{64}
- linux: Define STAT64_IS_KERNEL_STAT64
- linux: Always define STAT_IS_KERNEL_STAT
- Update powerpc libm-test-ulps
- benchtests: Add "workload" traces for sinf128
- benchtests: Add "workload" traces for sinf
- benchtests: Add "workload" traces for sin
- benchtests: Add "workload" traces for powf128
- benchtests: Add "workload" traces for pow
- benchtests: Add "workload" traces for expf128
- benchtests: Add "workload" traces for exp
- nptl: futex: Provide correct indentation for part of
  __futex_abstimed_wait_cancelable64
This commit is contained in:
Arjun Shankar 2020-09-21 12:33:35 +02:00
parent c070d93d64
commit f1c4b3f4bd
4 changed files with 123 additions and 11 deletions

View File

@ -0,0 +1,70 @@
commit 7b7338cd82c8d39993644768752cc656f65adc20
Author: Arjun Shankar <arjun@redhat.com>
Date: Sat Sep 19 00:42:26 2020 +0200
benchtests: Run _Float128 tests only on architectures that support it
__float128 is a non-standard name and is not available on some architectures
(like aarch64 or s390x) even though they may support the standard _Float128
type. Other architectures (like armv7) don't support quad-precision
floating-point operations at all.
This commit replaces benchtests references to __float128 with _Float128 and
runs the corresponding tests only on architectures that support it.
diff --git a/benchtests/Makefile b/benchtests/Makefile
index 3095076055f3c47e..922e2a94b13c4b3c 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -25,7 +25,11 @@ bench-math := acos acosh asin asinh atan atanh cos cosh exp exp2 log log2 \
modf pow rint sin sincos sinh sqrt tan tanh fmin fmax fminf \
fmaxf powf trunc truncf roundeven roundevenf expf exp2f logf \
log2f sincosf sinf cosf isnan isinf isfinite hypot logb logbf \
- exp10f expf128 powf128 sinf128
+ exp10f
+
+ifneq (,$(filter yes,$(float128-fcts) $(float128-alias-fcts)))
+bench-math += expf128 powf128 sinf128
+endif
bench-pthread := pthread_once thread_create
diff --git a/benchtests/expf128-inputs b/benchtests/expf128-inputs
index 5b36f8672a0049f9..5dc0f4e49ba7db48 100644
--- a/benchtests/expf128-inputs
+++ b/benchtests/expf128-inputs
@@ -1,6 +1,6 @@
## includes: math.h
-## args: __float128
-## ret: __float128
+## args: _Float128
+## ret: _Float128
# Random inputs in [-10,10]
## name: workload-random.wrf
0x4.e6f9d6da10d9a422942a89cdfa1p+0L
diff --git a/benchtests/powf128-inputs b/benchtests/powf128-inputs
index 7cbabafff6e058c4..6826266ad58c2196 100644
--- a/benchtests/powf128-inputs
+++ b/benchtests/powf128-inputs
@@ -1,6 +1,6 @@
## includes: math.h
-## args: __float128:__float128
-## ret: __float128
+## args: _Float128:_Float128
+## ret: _Float128
# Random inputs in [-10,10] such that x and y are not both negative
## name: workload-random.wrf
0x8.130b31ed5288656428a29cead83p+0L, -0x6.e7ead09b7877a118813b50cfb3c8p+0L
diff --git a/benchtests/sinf128-inputs b/benchtests/sinf128-inputs
index 9aaf3124131a0439..01b75336800c1e24 100644
--- a/benchtests/sinf128-inputs
+++ b/benchtests/sinf128-inputs
@@ -1,6 +1,6 @@
## includes: math.h
-## args: __float128
-## ret: __float128
+## args: _Float128
+## ret: _Float128
# Random inputs in [-10,10]
## name: workload-random.wrf
0x4.e6f9d6da10d9a422942a89cdfa1p+0

View File

@ -9,11 +9,12 @@ file. This is the wrong fix for this problem and should be dropped.
The correct solution is to mark debuginfo files as new types of The correct solution is to mark debuginfo files as new types of
ELF files. ELF files.
diff --git a/elf/dl-load.c b/elf/dl-load.c diff --git a/elf/dl-load.c b/elf/dl-load.c
index 24e2819345995bd9..007121144e71d9cf 100644 index 646c5dca40efcc9b..1f44ea3744f139f3 100644
--- a/elf/dl-load.c --- a/elf/dl-load.c
+++ b/elf/dl-load.c +++ b/elf/dl-load.c
@@ -880,6 +880,18 @@ _dl_map_object_from_fd (const char *name, const char *origname, int fd, @@ -952,6 +952,18 @@ _dl_map_object_from_fd (const char *name, const char *origname, int fd,
in this information for the executable in case of an explicit in this information for the executable in case of an explicit
loader invocation. */ loader invocation. */
struct r_file_id id; struct r_file_id id;
@ -32,7 +33,7 @@ index 24e2819345995bd9..007121144e71d9cf 100644
if (mode & __RTLD_OPENEXEC) if (mode & __RTLD_OPENEXEC)
{ {
assert (nsid == LM_ID_BASE); assert (nsid == LM_ID_BASE);
@@ -887,16 +899,6 @@ _dl_map_object_from_fd (const char *name, const char *origname, int fd, @@ -959,16 +971,6 @@ _dl_map_object_from_fd (const char *name, const char *origname, int fd,
} }
else else
{ {
@ -49,7 +50,7 @@ index 24e2819345995bd9..007121144e71d9cf 100644
/* Look again to see if the real name matched another already loaded. */ /* Look again to see if the real name matched another already loaded. */
for (l = GL(dl_ns)[nsid]._ns_loaded; l != NULL; l = l->l_next) for (l = GL(dl_ns)[nsid]._ns_loaded; l != NULL; l = l->l_next)
if (!l->l_removed && _dl_file_id_match_p (&l->l_file_id, &id)) if (!l->l_removed && _dl_file_id_match_p (&l->l_file_id, &id))
@@ -1074,6 +1076,16 @@ _dl_map_object_from_fd (const char *name, const char *origname, int fd, @@ -1147,6 +1149,16 @@ _dl_map_object_from_fd (const char *name, const char *origname, int fd,
= N_("ELF load command address/offset not properly aligned"); = N_("ELF load command address/offset not properly aligned");
goto call_lose; goto call_lose;
} }
@ -67,7 +68,7 @@ index 24e2819345995bd9..007121144e71d9cf 100644
struct loadcmd *c = &loadcmds[nloadcmds++]; struct loadcmd *c = &loadcmds[nloadcmds++];
c->mapstart = ALIGN_DOWN (ph->p_vaddr, GLRO(dl_pagesize)); c->mapstart = ALIGN_DOWN (ph->p_vaddr, GLRO(dl_pagesize));
diff --git a/sysdeps/generic/dl-fileid.h b/sysdeps/generic/dl-fileid.h diff --git a/sysdeps/generic/dl-fileid.h b/sysdeps/generic/dl-fileid.h
index 6310d46c2a6efc60..209580b6c0b8524b 100644 index 459328d28c62c8e1..5070580b1b0cc629 100644
--- a/sysdeps/generic/dl-fileid.h --- a/sysdeps/generic/dl-fileid.h
+++ b/sysdeps/generic/dl-fileid.h +++ b/sysdeps/generic/dl-fileid.h
@@ -29,7 +29,8 @@ struct r_file_id @@ -29,7 +29,8 @@ struct r_file_id
@ -81,7 +82,7 @@ index 6310d46c2a6efc60..209580b6c0b8524b 100644
return true; return true;
} }
diff --git a/sysdeps/posix/dl-fileid.h b/sysdeps/posix/dl-fileid.h diff --git a/sysdeps/posix/dl-fileid.h b/sysdeps/posix/dl-fileid.h
index ae88a350788a5999..baa17b90a292a4d9 100644 index b3c8166701650b8b..cd862f511e6e3e94 100644
--- a/sysdeps/posix/dl-fileid.h --- a/sysdeps/posix/dl-fileid.h
+++ b/sysdeps/posix/dl-fileid.h +++ b/sysdeps/posix/dl-fileid.h
@@ -27,18 +27,16 @@ struct r_file_id @@ -27,18 +27,16 @@ struct r_file_id
@ -97,8 +98,8 @@ index ae88a350788a5999..baa17b90a292a4d9 100644
{ {
- struct stat64 st; - struct stat64 st;
- -
- if (__glibc_unlikely (__fxstat64 (_STAT_VER, fd, &st) < 0)) - if (__glibc_unlikely (__fstat64 (fd, &st) < 0))
+ if (__glibc_unlikely (__fxstat64 (_STAT_VER, fd, st) < 0)) + if (__glibc_unlikely (__fstat64 (fd, st) < 0))
return false; return false;
- id->dev = st.st_dev; - id->dev = st.st_dev;

View File

@ -1,4 +1,4 @@
%define glibcsrcdir glibc-2.32.9000-84-ge74b61c09a %define glibcsrcdir glibc-2.32.9000-117-gcdf645427d
%define glibcversion 2.32.9000 %define glibcversion 2.32.9000
# Pre-release tarballs are pulled in from git using a command that is # Pre-release tarballs are pulled in from git using a command that is
# effectively: # effectively:
@ -96,7 +96,7 @@
Summary: The GNU libc libraries Summary: The GNU libc libraries
Name: glibc Name: glibc
Version: %{glibcversion} Version: %{glibcversion}
Release: 6%{?dist} Release: 7%{?dist}
# In general, GPLv2+ is used by programs, LGPLv2+ is used for # In general, GPLv2+ is used by programs, LGPLv2+ is used for
# libraries. # libraries.
@ -169,6 +169,7 @@ Patch29: glibc-fedora-nsswitch.patch
Patch30: glibc-deprecated-selinux-makedb.patch Patch30: glibc-deprecated-selinux-makedb.patch
Patch31: glibc-deprecated-selinux-nscd.patch Patch31: glibc-deprecated-selinux-nscd.patch
Patch32: glibc-rhbz1869030-faccessat2-eperm.patch Patch32: glibc-rhbz1869030-faccessat2-eperm.patch
Patch33: glibc-fix-float128-benchtests.patch
############################################################################## ##############################################################################
# Continued list of core "glibc" package information: # Continued list of core "glibc" package information:
@ -2019,6 +2020,46 @@ fi
%files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared %files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared
%changelog %changelog
* Mon Sep 21 2020 Arjun Shankar <arjun@redhat.com> - 2.32.9000-7
- Adjust glibc-rh741105.patch.
- Add glibc-fix-float128-benchtests.patch to allow building on armv7hl.
- Auto-sync with upstream branch master,
commit cdf645427d176197b82f44308a5e131d69fb53ad:
- Update mallinfo2 ABI, and test
- Allow memset local PLT reference for RISC-V.
- powerpc: fix ifunc implementation list for POWER9 strlen and stpcpy
- nscd: bump GC cycle during cache pruning (bug 26130)
- x86: Use HAS_CPU_FEATURE with IBT and SHSTK [BZ #26625]
- <sys/platform/x86.h>: Add Intel Key Locker support
- Fix handling of collating symbols in fnmatch (bug 26620)
- pselect.c: Pass a pointer to SYSCALL_CANCEL [BZ #26606]
- y2038: nptl: Convert sem_{clock|timed}wait to support 64 bit time
- hurd: Add __x86_get_cpu_features to ld.abilist
- x86: Install <sys/platform/x86.h> [BZ #26124]
- linux: Add time64 pselect support
- linux: Add time64 semtimedop support
- linux: Add ppoll time64 optimization
- linux: Simplify clock_getres
- Update sparc libm-test-ulps
- Remove internal usage of extensible stat functions
- Linux: Consolidate xmknod
- linux: Consolidate fxstatat{64}
- linux: Consolidate fxstat{64}
- linux: Consolidate lxstat{64}
- linux: Consolidate xstat{64}
- linux: Define STAT64_IS_KERNEL_STAT64
- linux: Always define STAT_IS_KERNEL_STAT
- Update powerpc libm-test-ulps
- benchtests: Add "workload" traces for sinf128
- benchtests: Add "workload" traces for sinf
- benchtests: Add "workload" traces for sin
- benchtests: Add "workload" traces for powf128
- benchtests: Add "workload" traces for pow
- benchtests: Add "workload" traces for expf128
- benchtests: Add "workload" traces for exp
- nptl: futex: Provide correct indentation for part of
__futex_abstimed_wait_cancelable64
* Tue Sep 08 2020 DJ Delorie <dj@redhat.com> - 2.32.9000-6 * Tue Sep 08 2020 DJ Delorie <dj@redhat.com> - 2.32.9000-6
- Auto-sync with upstream branch master, - Auto-sync with upstream branch master,
commit e74b61c09a2a2ab52153e731225ccba5078659b1. commit e74b61c09a2a2ab52153e731225ccba5078659b1.

View File

@ -1 +1 @@
SHA512 (glibc-2.32.9000-84-ge74b61c09a.tar.xz) = 5f30c6563a0235d165b566c211aab22747ada9c4359e49f2866d5026c1c3913bb6a47d6821ac602bfe4359df645fa37b952e6f397aa7a63dfd382d925f92c7d7 SHA512 (glibc-2.32.9000-117-gcdf645427d.tar.xz) = 2ff035fbeb08a21ba3c0a015ea460eaa38cfff31ed132266ccce3ea14e695a451420c5dfcda9f257628745fa62593013f521ac1aefd3fefb46b801d97eccf3d6