Auto-sync with upstream branch master,

Upstream commit: ffb17e7ba3a5ba9632cee97330b325072fbe41dd

- rtld: Avoid using up static TLS surplus for optimizations [BZ #25051]
- rtld: Account static TLS surplus for audit modules
- rtld: Add rtld.nns tunable for the number of supported namespaces
- Remove --enable-obsolete-nsl configure flag
- Move non-deprecated RPC-related functions from sunrpc to inet
- aarch64: add NEWS entry about branch protection support
- aarch64: redefine RETURN_ADDRESS to strip PAC
- aarch64: fix pac-ret support in _mcount
- aarch64: Add pac-ret support to assembly files
- aarch64: configure check for pac-ret code generation
- aarch64: ensure objects are BTI compatible
- aarch64: enable BTI at runtime
- aarch64: fix RTLD_START for BTI
- aarch64: fix swapcontext for BTI
- aarch64: Add BTI support to assembly files
- aarch64: Rename place holder .S files to .c
- aarch64: configure test for BTI support
- Rewrite abi-note.S in C.
- rtld: Clean up PT_NOTE and add PT_GNU_PROPERTY handling
- string: Move tst-strsignal tst-strerror to tests-container
- string: Fix prototype mismatch in sigabbrev_np, __sigdescr_np
- arm: CVE-2020-6096: Fix multiarch memcpy for negative length (#1820332)
- arm: CVE-2020-6096: fix memcpy and memmove for negative length (#1820332)
- sunrpc: Remove hidden aliases for global data symbols (bug 26210)
- hurd: Fix strerror not setting errno
- tst-strsignal: fix checking for RT signals support
- hurd: Evaluate fd before entering the critical section
- CVE-2016-10228: Rewrite iconv option parsing (#1428292)
- nss: Remove cryptographic key support from nss_files, nss_nis, nss_nisplus
- sunrpc: Do not export getrpcport by default
- sunrpc: Do not export key handling hooks by default
- sunrpc: Turn clnt_sperrno into a libc_hidden_nolink_sunrpc symbol
- string: Add strerrorname_np and strerrordesc_np
- string: Add sigabbrev_np and sigdescr_np
- string: Add strerror_l on test-strerror-errno
- string: Add strerror, strerror_r, and strerror_l test
- string: Add strsignal test
- string: Simplify strerror_r
- string: Use tls-internal on strerror_l
- string: Implement strerror in terms of strerror_l
- string: Remove old TLS usage on strsignal
- linux: Fix __NSIG_WORDS and add __NSIG_BYTES
- signal: Move sys_errlist to a compat symbol
- signal: Move sys_siglist to a compat symbol
- signal: Add signum-{generic,arch}.h
- Remove most vfprintf width/precision-dependent allocations (bug 14231, bug 26211).
- elf: Do not signal LA_ACT_CONSISTENT for an empty namespace [BZ #26076]
- Fix stringop-overflow errors from gcc 10 in iconv.
- x86: Add thresholds for "rep movsb/stosb" to tunables
- Use C2x return value from getpayload of non-NaN (bug 26073).
- x86: Detect Extended Feature Disable (XFD)
- x86: Correct bit_cpu_CLFSH [BZ #26208]
- manual: Document __libc_single_threaded
- Add the __libc_single_threaded variable
- Linux: rseq registration tests
- Linux: Use rseq in sched_getcpu if available
- Linux: Perform rseq registration at C startup and thread creation
- tst-cancel4: deal with ENOSYS errors
- manual: Show copyright information not just in the printed manual
This commit is contained in:
Florian Weimer 2020-07-10 12:56:47 +02:00
parent 94cfd27bd1
commit 0aab7eb585
3 changed files with 75 additions and 20 deletions

View File

@ -31,10 +31,10 @@ analysis of the GNU/Hurd parts of the change and that stalled out, but
perhaps with build-many-glibcs we can now test these changes more easily. perhaps with build-many-glibcs we can now test these changes more easily.
diff --git a/elf/dl-init.c b/elf/dl-init.c diff --git a/elf/dl-init.c b/elf/dl-init.c
index 1234611a1c89532e..abd1913fb8de9caf 100644 index 518824e8a5826314..66c395474a57c1fd 100644
--- a/elf/dl-init.c --- a/elf/dl-init.c
+++ b/elf/dl-init.c +++ b/elf/dl-init.c
@@ -114,8 +114,6 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env) @@ -120,8 +120,6 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env)
while (i-- > 0) while (i-- > 0)
call_init (main_map->l_initfini[i], argc, argv, env); call_init (main_map->l_initfini[i], argc, argv, env);
@ -59,18 +59,18 @@ index 7704c101c5a543a1..ffa235c78df8481f 100644
/* Random data provided by the kernel. */ /* Random data provided by the kernel. */
void *_dl_random; void *_dl_random;
diff --git a/elf/rtld.c b/elf/rtld.c diff --git a/elf/rtld.c b/elf/rtld.c
index b2ea21c98b89831e..f3c37875f4f4dba7 100644 index 5b882163fae5ea8a..f93adf017c9d2110 100644
--- a/elf/rtld.c --- a/elf/rtld.c
+++ b/elf/rtld.c +++ b/elf/rtld.c
@@ -298,7 +298,6 @@ audit_list_next (struct audit_list *list) @@ -316,7 +316,6 @@ audit_list_count (struct audit_list *list)
} return naudit;
} }
-#ifndef HAVE_INLINED_SYSCALLS -#ifndef HAVE_INLINED_SYSCALLS
/* Set nonzero during loading and initialization of executable and /* Set nonzero during loading and initialization of executable and
libraries, cleared before the executable's entry point runs. This libraries, cleared before the executable's entry point runs. This
must not be initialized to nonzero, because the unused dynamic must not be initialized to nonzero, because the unused dynamic
@@ -308,7 +307,6 @@ audit_list_next (struct audit_list *list) @@ -326,7 +325,6 @@ audit_list_count (struct audit_list *list)
never be called. */ never be called. */
int _dl_starting_up = 0; int _dl_starting_up = 0;
rtld_hidden_def (_dl_starting_up) rtld_hidden_def (_dl_starting_up)
@ -78,7 +78,7 @@ index b2ea21c98b89831e..f3c37875f4f4dba7 100644
/* This is the structure which defines all variables global to ld.so /* This is the structure which defines all variables global to ld.so
(except those which cannot be added for some reason). */ (except those which cannot be added for some reason). */
@@ -1155,10 +1153,8 @@ dl_main (const ElfW(Phdr) *phdr, @@ -1178,10 +1176,8 @@ dl_main (const ElfW(Phdr) *phdr,
/* Process the environment variable which control the behaviour. */ /* Process the environment variable which control the behaviour. */
process_envvars (&mode, &audit_list); process_envvars (&mode, &audit_list);

View File

@ -1,4 +1,4 @@
%define glibcsrcdir glibc-2.31.9000-624-gc6aac3bf36 %define glibcsrcdir glibc-2.31.9000-683-gffb17e7ba3
%define glibcversion 2.31.9000 %define glibcversion 2.31.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: 17%{?dist} Release: 18%{?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.
@ -922,15 +922,6 @@ build
# Remove existing file lists. # Remove existing file lists.
find . -type f -name '*.filelist' -exec rm -rf {} \; find . -type f -name '*.filelist' -exec rm -rf {} \;
# Ensure the permissions of errlist.c do not change. When the file is
# regenerated the Makefile sets the permissions to 444. We set it to 644
# to match what comes out of git. The tarball of the git archive won't have
# correct permissions because git doesn't track all of the permissions
# accurately (see git-cache-meta if you need that). We also set it to 644 to
# match pre-existing rpms. We do this *after* the build because the build
# might regenerate the file and set the permissions to 444.
chmod 644 sysdeps/gnu/errlist.c
# Reload compiler and build options that were used during %%build. # Reload compiler and build options that were used during %%build.
GCC=`cat Gcc` GCC=`cat Gcc`
@ -1150,7 +1141,7 @@ rm -rf %{glibc_sysroot}%{_prefix}/share/zoneinfo
# which is to at least keep the timestamp consistent. The choice of using # which is to at least keep the timestamp consistent. The choice of using
# SOURCE0 is arbitrary. # SOURCE0 is arbitrary.
touch -r %{SOURCE0} %{glibc_sysroot}/etc/ld.so.conf touch -r %{SOURCE0} %{glibc_sysroot}/etc/ld.so.conf
touch -r sunrpc/etc.rpc %{glibc_sysroot}/etc/rpc touch -r inet/etc.rpc %{glibc_sysroot}/etc/rpc
# Lastly copy some additional documentation for the packages. # Lastly copy some additional documentation for the packages.
rm -rf documentation rm -rf documentation
@ -2026,6 +2017,70 @@ fi
%files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared %files -f compat-libpthread-nonshared.filelist -n compat-libpthread-nonshared
%changelog %changelog
* Thu Jul 09 2020 Florian Weimer <fweimer@redhat.com> - 2.31.9000-18
- Auto-sync with upstream branch master,
commit ffb17e7ba3a5ba9632cee97330b325072fbe41dd:
- rtld: Avoid using up static TLS surplus for optimizations [BZ #25051]
- rtld: Account static TLS surplus for audit modules
- rtld: Add rtld.nns tunable for the number of supported namespaces
- Remove --enable-obsolete-nsl configure flag
- Move non-deprecated RPC-related functions from sunrpc to inet
- aarch64: add NEWS entry about branch protection support
- aarch64: redefine RETURN_ADDRESS to strip PAC
- aarch64: fix pac-ret support in _mcount
- aarch64: Add pac-ret support to assembly files
- aarch64: configure check for pac-ret code generation
- aarch64: ensure objects are BTI compatible
- aarch64: enable BTI at runtime
- aarch64: fix RTLD_START for BTI
- aarch64: fix swapcontext for BTI
- aarch64: Add BTI support to assembly files
- aarch64: Rename place holder .S files to .c
- aarch64: configure test for BTI support
- Rewrite abi-note.S in C.
- rtld: Clean up PT_NOTE and add PT_GNU_PROPERTY handling
- string: Move tst-strsignal tst-strerror to tests-container
- string: Fix prototype mismatch in sigabbrev_np, __sigdescr_np
- arm: CVE-2020-6096: Fix multiarch memcpy for negative length (#1820332)
- arm: CVE-2020-6096: fix memcpy and memmove for negative length (#1820332)
- sunrpc: Remove hidden aliases for global data symbols (bug 26210)
- hurd: Fix strerror not setting errno
- tst-strsignal: fix checking for RT signals support
- hurd: Evaluate fd before entering the critical section
- CVE-2016-10228: Rewrite iconv option parsing (#1428292)
- nss: Remove cryptographic key support from nss_files, nss_nis, nss_nisplus
- sunrpc: Do not export getrpcport by default
- sunrpc: Do not export key handling hooks by default
- sunrpc: Turn clnt_sperrno into a libc_hidden_nolink_sunrpc symbol
- string: Add strerrorname_np and strerrordesc_np
- string: Add sigabbrev_np and sigdescr_np
- string: Add strerror_l on test-strerror-errno
- string: Add strerror, strerror_r, and strerror_l test
- string: Add strsignal test
- string: Simplify strerror_r
- string: Use tls-internal on strerror_l
- string: Implement strerror in terms of strerror_l
- string: Remove old TLS usage on strsignal
- linux: Fix __NSIG_WORDS and add __NSIG_BYTES
- signal: Move sys_errlist to a compat symbol
- signal: Move sys_siglist to a compat symbol
- signal: Add signum-{generic,arch}.h
- Remove most vfprintf width/precision-dependent allocations (bug 14231, bug 26211).
- elf: Do not signal LA_ACT_CONSISTENT for an empty namespace [BZ #26076]
- Fix stringop-overflow errors from gcc 10 in iconv.
- x86: Add thresholds for "rep movsb/stosb" to tunables
- Use C2x return value from getpayload of non-NaN (bug 26073).
- x86: Detect Extended Feature Disable (XFD)
- x86: Correct bit_cpu_CLFSH [BZ #26208]
- manual: Document __libc_single_threaded
- Add the __libc_single_threaded variable
- Linux: rseq registration tests
- Linux: Use rseq in sched_getcpu if available
- Linux: Perform rseq registration at C startup and thread creation
- tst-cancel4: deal with ENOSYS errors
- manual: Show copyright information not just in the printed manual
* Thu Jul 02 2020 Carlos O'Donell <carlos@redhat.com> - 2.31.9000-17 * Thu Jul 02 2020 Carlos O'Donell <carlos@redhat.com> - 2.31.9000-17
- Auto-sync with upstream branch master, - Auto-sync with upstream branch master,
commit c6aac3bf3663709cdefde5f5d5e9e875d607be5e. commit c6aac3bf3663709cdefde5f5d5e9e875d607be5e.

View File

@ -1 +1 @@
SHA512 (glibc-2.31.9000-624-gc6aac3bf36.tar.xz) = 8020c0bdf3c27f3774ead7c51c978f7c61bbe5dac8e6706312b0aa41641e57091e4354cb6f1e6ca376127c5027831e99c6f94a4ffee4d8bd022f6d6b1c0c9257 SHA512 (glibc-2.31.9000-683-gffb17e7ba3.tar.xz) = 103ff3c04de5dc149df93e5399de1630f6fff1b8d7f127881d6e530492b8b953a8064205ceecb311a77c0a10de3a5ab2056121fd1fa833a30327c6b1f08beacc