Szabolcs Nagy [Tue, 18 Jul 2017 10:15:12 +0000 (11:15 +0100)]
[AArch64] Update dl-procinfo for new HWCAP flags in Linux 4.12
Follow up to commit
512d245bc30cca893db6979f42f058e734f345c3.
* sysdeps/unix/sysv/linux/aarch64/dl-procinfo.c:
(_dl_aarch64_cap_flags): Update.
* sysdeps/unix/sysv/linux/aarch64/dl-procinfo.h
(_DL_HWCAP_COUNT, _DL_HWCAP_LAST): Update.
Akhilesh Kumar [Tue, 18 Jul 2017 06:21:48 +0000 (11:51 +0530)]
Fix or add int_select international_call_prefixes
[BZ #21783 ]
* locales/ar_AE (LC_TELEPHONE): Add int_select.
* locales/ar_BH (LC_TELEPHONE): Fix int_select.
* locales/ar_IQ (LC_TELEPHONE): Add int_select.
* locales/es_CU (LC_TELEPHONE): Add int_select.
* locales/ja_JP (LC_TELEPHONE): Add int_select.
* locales/lg_UG (LC_TELEPHONE): Fix int_select.
* locales/mn_MN (LC_TELEPHONE): Fix int_select.
* locales/om_KE (LC_TELEPHONE): Add int_select.
* locales/sm_WS (LC_TELEPHONE): Fix int_select.
Szabolcs Nagy [Mon, 17 Jul 2017 08:58:29 +0000 (09:58 +0100)]
[AArch64] Fix out of bound array access regression
Partially revert
ea01a4da219011f4a4db97eef3c5bfc2f6e8fc6b
"aarch64: Add hwcap string routines" because _dl_procinfo cannot
be future proof and avoid oob access in _dl_hwcap_string.
Tulio Magno Quites Machado Filho [Mon, 17 Jul 2017 20:48:59 +0000 (17:48 -0300)]
powerpc: Fix float128 IFUNC relocations [BZ #21707]
The patch proposed by Peter Bergner [1] to libgcc in order to fix
[BZ #21707] adds a dependency on a symbol provided by the loader,
forcing the loader to be linked to tests after libgcc was linked.
It also requires to read the thread pointer during IRELA relocations.
Tested on powerpc, powerpc64, powerpc64le, s390x and x86_64.
[1] https://sourceware.org/ml/libc-alpha/2017-06/msg01383.html
[BZ #21707]
* csu/libc-start.c (LIBC_START_MAIN): Perform IREL{,A}
relocations before or after initializing the TCB on statically
linked executables. That's a per-architecture definition.
* elf/rtld.c (dl_main): Add a comment about thread-local
variables initialization.
* sysdeps/generic/libc-start.h: New file. Define
ARCH_APPLY_IREL and ARCH_SETUP_IREL.
* sysdeps/powerpc/Makefile:
[$(subdir) = elf && $(multi-arch) != no] (tests-static-internal): Add tst-tlsifunc-static.
[$(subdir) = elf && $(multi-arch) != no && $(build-shared) == yes]
(tests-internal): Add tst-tlsifunc.
* sysdeps/powerpc/tst-tlsifunc.c: New file.
* sysdeps/powerpc/tst-tlsifunc-static.c: Likewise.
* sysdeps/powerpc/powerpc64le/Makefile (f128-loader-link): New
variable.
[$(subdir) = math] (test-float128% test-ifloat128%): Force
linking to the loader after linking to libgcc.
[$(subdir) = wcsmbs || $(subdir) = stdlib] (bug-strtod bug-strtod2)
(bug-strtod2 tst-strtod-round tst-wcstod-round tst-strtod6 tst-strrom)
(tst-strfrom-locale strfrom-skeleton): Likewise.
* sysdeps/unix/sysv/linux/powerpc/libc-start.h: New file. Define
ARCH_APPLY_IREL and ARCH_SETUP_IREL.
DJ Delorie [Mon, 17 Jul 2017 19:50:43 +0000 (15:50 -0400)]
Extend NSS test suite
* nss/nss_test.h: New.
* nss/nss_test1.h: Rewrite to use test-provided data. Add group
tests. Parameterize to allow multiple instances.
* nss/nss_test2.h: New. Second instance.
* nss/nss_test.ver: New.
* nss/nss_test1.c: Update to use new framework.
* nss/nss_test2.c: New.
* nss/nss_test3.c: New.
* nss/nss_test4.c: New.
* nss/nss_test5.c: New.
* nss/Makefile: Build new tests.
* shlib-versions: Add libnss_test2.
Adhemerval Zanella [Mon, 17 Jul 2017 14:46:00 +0000 (11:46 -0300)]
hppa: Fix clone exit syscall argument passing (BZ#21512)
This patch fixes the argument passing for exit syscall after
the clone function returns on hppa. This fixes misc/tst-clone2
on hppa-linux-gnu.
Checked misc/tst-clone2 on hppa-linux-gnu.
[BZ #21512]
* sysdeps/unix/sysv/linux/hppa/clone.S (__clone): Fix argument
passing to syscall exit.
Akhilesh Kumar [Mon, 17 Jul 2017 12:19:42 +0000 (14:19 +0200)]
Fix country_name in li_NL
[BZ #21770]
* locales/li_NL: Fix country_name.
Mike FABIAN [Mon, 17 Jul 2017 14:18:10 +0000 (16:18 +0200)]
Use U+02BB MODIFIER LETTER TURNED COMMA instead of U+0027 APOSTROPHE in yesstr and nostr for to_TO locale
Suggested by Rafał Lużyński.
* locales/to_TO (LC_MESSAGES): Use U+02BB instead of U+0027 in yesstr and nostr
Mike FABIAN [Mon, 17 Jul 2017 12:31:11 +0000 (14:31 +0200)]
Fix yesexpr in new agr_PE locale
yY should be added there as in (almost) all other locales
(Suggested by Rafał Lużyński).
* locales/agr_PE (LC_MESSAGES): Add yY to yesexpr.
Mike FABIAN [Mon, 17 Jul 2017 12:26:43 +0000 (14:26 +0200)]
Write "Latin" in title case in "title" in hif_FJ locale
* locales/hif_FJ: Write "Latin" in title case in "title"
Szabolcs Nagy [Tue, 4 Jul 2017 10:54:51 +0000 (11:54 +0100)]
Add HWCAP_ macros from Linux 4.12 to AArch64 bits/hwcap.h.
This patch adds the HWCAP_JSCVT, HWCAP_FCMA and HWCAP_LRCPC macros
from Linux 4.12 to the AArch64 bits/hwcap.h.
* sysdeps/unix/sysv/linux/aarch64/bits/hwcap.h (HWCAP_FCMA): New macro.
(HWCAP_JSCVT, HWCAP_LRCPC): Likewise.
John David Anglin [Sun, 16 Jul 2017 16:59:00 +0000 (12:59 -0400)]
Return to caller if dl_fixup fails to resolve callee on hppa.
John David Anglin [Sun, 16 Jul 2017 16:46:50 +0000 (12:46 -0400)]
Add CFI annotation.
John David Anglin [Sun, 16 Jul 2017 16:24:30 +0000 (12:24 -0400)]
Fix stack offset for r19 load in __getcontext.
John David Anglin [Sun, 16 Jul 2017 16:13:14 +0000 (12:13 -0400)]
Fix __setcontext return value on hppa.
John David Anglin [Sun, 16 Jul 2017 15:58:01 +0000 (11:58 -0400)]
Fix syscall cancellation on hppa.
John David Anglin [Sun, 16 Jul 2017 15:28:02 +0000 (11:28 -0400)]
Remove _exit entry from sysdeps/unix/sysv/linux/hppa/localplt.data.
John David Anglin [Sun, 16 Jul 2017 15:11:31 +0000 (11:11 -0400)]
Remove extra braces from sysdeps/hppa/__longjmp.c.
John David Anglin [Sun, 16 Jul 2017 14:51:13 +0000 (10:51 -0400)]
Fix [BZ 20098].
Siddhesh Poyarekar [Sun, 16 Jul 2017 10:00:27 +0000 (15:30 +0530)]
Regenerate libc.pot
John David Anglin [Sat, 15 Jul 2017 16:54:14 +0000 (12:54 -0400)]
Fix [BZ locale/19838].
John David Anglin [Sat, 15 Jul 2017 16:40:13 +0000 (12:40 -0400)]
Fix guard alignment in allocate_stack when stack grows up.
John David Anglin [Sat, 15 Jul 2017 16:18:03 +0000 (12:18 -0400)]
Fix failing sNaN tests on hppa.
DJ Delorie [Sat, 15 Jul 2017 01:46:42 +0000 (21:46 -0400)]
Fix BZ #21654 - grp-merge.c alignment
* grp/grp_merge.c (__copy_grp): Align char** to minimum pointer
alignment not char alignment.
(__merge_grp): Likewise.
Szabolcs Nagy [Wed, 12 Jul 2017 09:53:13 +0000 (10:53 +0100)]
Disable single thread optimization for open_memstream
Single thread optimization is valid if at thread creation time the
optimization can be disabled. This is in principle true for all
stream objects that user code can access (and thus needs locking),
using the same internal list as fflush(0) uses. However in glibc
open_memstream is not on that list (BZ 21735) so the optimization
has to be disabled.
* libio/memstream.c (__open_memstream): Set _IO_FLAGS2_NEED_LOCK.
* libio/wmemstream.c (open_wmemstream): Likewise.
* nptl/tst-memstream.c: New.
Mike FABIAN [Fri, 14 Jul 2017 07:24:50 +0000 (09:24 +0200)]
Fix country name in li_BE and encoding problem in abday in li_BE and li_NL
* locales/li_BE: Fix country name and encoding problem in abday.
* locales/li_NL: Fix encoding problem in abday.
Akhilesh Kumar [Thu, 13 Jul 2017 09:43:46 +0000 (15:13 +0530)]
New locale for bi_VU
[BZ #21767]
* locales/bi_VU: new file.
* localedata/SUPPORTED: Add bi_VU/UTF-8.
Akhilesh Kumar [Thu, 13 Jul 2017 10:17:18 +0000 (15:47 +0530)]
Added yesstr and nostr for aa_ET
[BZ #21768]
* locales/aa_ET (LC_MESSAGES): Added yesstr and nostr.
Mike FABIAN [Thu, 13 Jul 2017 13:59:10 +0000 (15:59 +0200)]
Fix wrong bug number in localedata/ChangeLog
The commit to add the Fiji Hindi locale mentioned
Bug 21207 - ce_RU: update weekdays from CLDR
which was wrong, correct is:
Bug 21694 - Current Glibc Locale Does Not Support Tok-Pisin and Fiji Hindi Locale
Jiong Wang [Thu, 13 Jul 2017 14:48:41 +0000 (15:48 +0100)]
[ARM] Fix ld.so crash when built using Binutils 2.29
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.
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.
* sysdeps/arm/dl-machine.h (elf_machine_load_address): Also strip bit 0
of pcrel_address under Thumb mode.
Akhilesh Kumar [Wed, 12 Jul 2017 10:47:11 +0000 (16:17 +0530)]
Added Tongan language locale for Tonga
[BZ #21728]
* localedata/locales/to_TO: new file
* localedata/SUPPORTED: added to_TO/UTF-8
Akhilesh Kumar [Wed, 12 Jul 2017 08:06:38 +0000 (13:36 +0530)]
Added yesstr/nostr and fix yesexpr for pap_AW and pap_CW
[BZ #21757]
* locales/pap_AW (LC_MESSAGES): add yesstr and nostr, fix yesexpr
* locales/pap_CW (LC_MESSAGES): add yesstr and nostr, fix yesexpr
Akhilesh Kumar [Wed, 12 Jul 2017 13:38:15 +0000 (19:08 +0530)]
Fix LC_MESSAGES and LC_ADDRESS for anp_IN
[BZ #21760]
* locales/anp_IN (LC_MESSAGES): add yesstr and nostr.
* locales/anp_IN (LC_ADDRESS): add country_name
Akhilesh Kumar [Wed, 12 Jul 2017 11:51:25 +0000 (17:21 +0530)]
Added yesstr and nostr for Tigrinya
[BZ #21759]
* locales/ti_ER (LC_MESSAGES): Add yesstr and nostr.
* locales/ti_ET (LC_MESSAGES): Add yesstr and nostr.
Mike FABIAN [Wed, 12 Jul 2017 20:01:47 +0000 (22:01 +0200)]
locales/om_ET (LC_MESSAGES): add yesstr and nostr.
Akhilesh Kumar [Wed, 12 Jul 2017 09:47:09 +0000 (15:17 +0530)]
Added yesstr/nostr for nds_DE and nds_NL
[BZ #21756]
* locales/nds_DE (LC_MESSAGES): Add yesstr and nostr.
* locales/nds_NL (LC_MESSAGES): Add yesstr and nostr.
Akhilesh Kumar [Tue, 11 Jul 2017 08:55:43 +0000 (14:25 +0530)]
Added Fiji Hindi language locale for Fiji
[BZ #21207]
* locales/hif_FJ: New file.
* SUPPORTED: Add hif_FJ/UTF-8.
* locale/iso-639.def: Add Fiji Hindi (hif).
John David Anglin [Thu, 13 Jul 2017 00:02:45 +0000 (20:02 -0400)]
Fix type in sysdeps/hppa/dl-machine.h.
H.J. Lu [Tue, 11 Jul 2017 20:40:56 +0000 (13:40 -0700)]
Compile tst-ssp-1.c with -fstack-protector-all
Compile tst-ssp-1.c with -fstack-protector-all in case the the stack
protector heuristics do not instrument a thirty-byte array.
* debug/Makefile (CFLAGS-tst-ssp-1.c): Set to
-fstack-protector-all.
Chris Leonard [Mon, 22 Aug 2016 23:26:41 +0000 (19:26 -0400)]
New locale for agr_PE.
[BZ #20496]
* locale/iso-639.def: Add Awajún / Aguaruna (agr).
[BZ #20496]
* SUPPORTED: Add agr_PE.
* locales/agr_PE: New file, Awajún / Aguaruna locale for Peru.
Akhilesh Kumar [Tue, 11 Jul 2017 10:52:29 +0000 (16:22 +0530)]
Added Samoan language locale for Samoa
[BZ #21710]
* locales/sm_WS: New file.
* SUPPORTED: Add sm_WS/UTF-8.
Gabriel F. T. Gomes [Tue, 27 Jun 2017 18:41:12 +0000 (15:41 -0300)]
powerpc64le: Iterate over all object suffixes when appending -mfloat128
On powerpc64le, the compilation of the files related to float128 support
requires the option -mfloat128 to be passed to gcc. However, not all
possible object suffixes were covered in the Makefile. This patch uses
$(all-object-suffixes) in all remaining rules.
Tested for powerpc64le.
* sysdeps/powerpc/powerpc64le/Makefile: Use $(all-object-suffixes)
to iterate over all possible object suffixes. Add a comment
explaining the use of sysdep-CFLAGS instead of CFLAGS.
H.J. Lu [Tue, 11 Jul 2017 14:44:01 +0000 (07:44 -0700)]
Avoid backtrace from __stack_chk_fail [BZ #12189]
__stack_chk_fail is called on corrupted stack. Stack backtrace is very
unreliable against corrupted stack. __libc_message is changed to accept
enum __libc_message_action and call BEFORE_ABORT only if action includes
do_backtrace. __fortify_fail_abort is added to avoid backtrace from
__stack_chk_fail.
[BZ #12189]
* debug/Makefile (CFLAGS-tst-ssp-1.c): New.
(tests): Add tst-ssp-1 if -fstack-protector works.
* debug/fortify_fail.c: Include <stdbool.h>.
(_fortify_fail_abort): New function.
(__fortify_fail): Call _fortify_fail_abort.
(__fortify_fail_abort): Add a hidden definition.
* debug/stack_chk_fail.c: Include <stdbool.h>.
(__stack_chk_fail): Call __fortify_fail_abort, instead of
__fortify_fail.
* debug/tst-ssp-1.c: New file.
* include/stdio.h (__libc_message_action): New enum.
(__libc_message): Replace int with enum __libc_message_action.
(__fortify_fail_abort): New hidden prototype.
* malloc/malloc.c (malloc_printerr): Update __libc_message calls.
* sysdeps/posix/libc_fatal.c (__libc_message): Replace int
with enum __libc_message_action. Call BEFORE_ABORT only if
action includes do_backtrace.
(__libc_fatal): Update __libc_message call.
Adhemerval Zanella [Mon, 10 Jul 2017 18:53:32 +0000 (15:53 -0300)]
posix: Add p{read,write}v2 RWF_NOWAIT flag (BZ#21738)
Linux 4.12 (
b745fafaf70c0a98a2e1e7ac8cb14542889ceb0e) adds a new
p{read,write}v2 flag RWF_NOWAIT. This patch adds it for linux
uio-ext.h header.
Checked on x86_64-linux-gnu (on a 4.10 kernel).
[BZ #21738]
* manual/llio.texi (RWF_NOWAIT): New item.
* misc/tst-preadvwritev2-common.c (do_test_with_invalid_flags):
Add RWF_NOWAIT check.
* sysdeps/unix/sysv/linux/bits/uio-ext.h (RWF_NOWAIT): New flag.
Akhilesh Kumar [Tue, 11 Jul 2017 08:19:17 +0000 (13:49 +0530)]
Fixed abday for ar_JO/ar_LB/ar_SY
[BZ #21749]
* locales/ar_JO (LC_TIME): Fix abday
* locales/ar_LB (LC_TIME): Fix abday
* locales/ar_SY (LC_TIME): Fix abday
Akhilesh Kumar [Tue, 11 Jul 2017 10:46:39 +0000 (12:46 +0200)]
Fix abday for ar_SA
[BZ #21748, BZ #19066]
* locales/ar_SA (LC_TIME): Fix abday
Stefan Liebler [Tue, 11 Jul 2017 08:37:03 +0000 (10:37 +0200)]
S390: Fix tst-ptrace-singleblock if kernel does not support PTRACE_SINGLEBLOCK.
The request PTRACE_SINGLEBLOCK was introduced in Linux 3.15. Thus the ptrace call
will fail on older kernels.
Thus the test is now testing PTRACE_SINGLEBLOCK with data argument pointing to a
buffer on stack which is assumed to fail. If the request would be interpreted as
PTRACE_GETREGS, then the ptrace call will not fail and the regs are written to buf.
If we run with a kernel with support for PTRACE_SINGLEBLOCK a ptrace call with
data=NULL, returns zero with no error. If we run with a kernel without support for
PTRACE_SINGLEBLOCK a ptrace call with data=NULL reports an error.
In the latter case, the test is just continuing with PTRACE_CONT.
ChangeLog:
* sysdeps/unix/sysv/linux/s390/tst-ptrace-singleblock.c:
Support running on kernels without PTRACE_SINGLEBLOCK.
Eyolf Østrem [Fri, 10 Jun 2016 16:11:04 +0000 (12:11 -0400)]
localedata: da_DK: set date_fmt [BZ #17297]
The default setting is slightly off for Danish users -- the day and
month displays should be swapped: "Jun 10" -> "10 Jun".
Akhilesh Kumar [Mon, 10 Jul 2017 03:41:56 +0000 (09:11 +0530)]
Added yesstr and nostr to zh_HK locale
yesstr and nostr are missing for zh_HK language locale
[BZ #21733]
* locales/zh_HK (LC_MESSAGES): add yesstr and nostr
Akhilesh Kumar [Mon, 10 Jul 2017 03:27:28 +0000 (08:57 +0530)]
Fix abday strings for ks_IN@devanagari to match the day strings
Hindi language is similar to Kashmiri(devanagari) language.
[BZ #21743]
* locales/ks_IN@devanagari (LC_TIME): Fixed abday strings
H.J. Lu [Sun, 9 Jul 2017 18:52:33 +0000 (11:52 -0700)]
Don't include _dl_resolve_conflicts in libc.a [BZ #21742]
Since _dl_resolve_conflicts is only used in elf/rtld.c, don't include
it in libc.a.
[BZ #21742]
* elf/Makefile (dl-routines): Move dl-conflict to ...
(rtld-routines): Here.
H.J. Lu [Mon, 10 Jul 2017 11:44:24 +0000 (04:44 -0700)]
x86-64: Test memmove_chk and memset_chk only in libc.so [BZ #21741]
Since there are no multiarch versions of memmove_chk and memset_chk,
test multiarch versions of memmove_chk and memset_chk only in libc.so.
[BZ #21741]
* sysdeps/x86_64/multiarch/ifunc-impl-list.c
(__libc_ifunc_impl_list): Test memmove_chk and memset_chk only
in libc.so.
Mike FABIAN [Mon, 10 Jul 2017 07:00:45 +0000 (09:00 +0200)]
Add iI and eE to yesexpr and noexpr respectively for ts_ZA
John David Anglin [Sun, 9 Jul 2017 19:22:41 +0000 (15:22 -0400)]
Update hppa ulps.
John David Anglin [Sun, 9 Jul 2017 19:01:11 +0000 (15:01 -0400)]
Use generic pthread support on hppa.
H.J. Lu [Sun, 9 Jul 2017 18:42:50 +0000 (11:42 -0700)]
x86-64: Update comments in IFUNC selectors
* sysdeps/x86_64/multiarch/memcmp.c: Update comments.
* sysdeps/x86_64/multiarch/memmove.c: Likewise.
* sysdeps/x86_64/multiarch/memrchr.c: Likewise.
* sysdeps/x86_64/multiarch/memset.c: Likewise.
* sysdeps/x86_64/multiarch/rawmemchr.c: Likewise.
* sysdeps/x86_64/multiarch/strchrnul.c: Likewise.
* sysdeps/x86_64/multiarch/strlen.c: Likewise.
* sysdeps/x86_64/multiarch/strnlen.c: Likewise.
* sysdeps/x86_64/multiarch/wcschr.c: Likewise.
* sysdeps/x86_64/multiarch/wcscpy.c: Likewise.
* sysdeps/x86_64/multiarch/wcslen.c: Likewise.
* sysdeps/x86_64/multiarch/wcsnlen.c: Likewise.
* sysdeps/x86_64/multiarch/wmemchr.c: Likewise.
* sysdeps/x86_64/multiarch/wmemcmp.c: Likewise.
* sysdeps/x86_64/multiarch/wmemset.c: Likewise.
* sysdeps/x86_64/multiarch/wmemset_chk.c: Likewise.
H.J. Lu [Sun, 9 Jul 2017 18:38:37 +0000 (11:38 -0700)]
x86-64: Update comments in ifunc-impl-list.c
All x86-64 IFUNC selectors are written in C now. Update comments to
reflect it.
* sysdeps/x86_64/multiarch/ifunc-impl-list.c: Update comments.
John David Anglin [Sun, 9 Jul 2017 17:48:04 +0000 (13:48 -0400)]
Fix BZ #21049.
Andreas Schwab [Sat, 8 Jul 2017 19:08:34 +0000 (21:08 +0200)]
build-many-glibcs.py: also build profiled objects
Akhilesh Kumar [Fri, 7 Jul 2017 12:31:49 +0000 (18:01 +0530)]
Added yesstr/nostr for kw_GB
[BZ #21734]
* locales/kw_GB (LC_MESSAGES): add yesstr and nostr
Akhilesh Kumar [Fri, 7 Jul 2017 03:58:53 +0000 (09:28 +0530)]
Added missing yesstr and nostr for Tsonga language locale [LC_MESSAGES]
[BZ #21727]
* locales/ts_ZA(LC_MESSAGES): add yesstr and nostr
Signed-off-by: Akhilesh Kumar <akhilesh.k@samsung.com>
Akhilesh Kumar [Fri, 7 Jul 2017 07:24:22 +0000 (12:54 +0530)]
Fix LC_NAME for hi_IN
During Hindi Locale review I found many fields are incorrect
[BZ #21729]
* locales/hi_IN (LC_NAME): Fix name_mr, name_mrs, name_miss, name_ms
Signed-off-by: Akhilesh Kumar <akhilesh.k@samsung.com>
Akhilesh Kumar [Thu, 6 Jul 2017 09:31:17 +0000 (15:01 +0530)]
yesstr/nostr missing for Xhosa language locale
During Locale verification I observed that
yesstr and nostr are missing for Xhosa language locale
for South Africa
[BZ #21724]
* locales/xh_ZA (LC_MESSAGES): add yesstr and nostr
Signed-off-by: Akhilesh Kumar <akhilesh.k@samsung.com>
Peng Wu [Thu, 6 Jul 2017 09:03:56 +0000 (14:33 +0530)]
Add yesstr and nostr to zh_CN locale
[BZ #21723]
* locales/zh_CN (LC_MESSAGES): add yesstr and nostr
Akhilesh Kumar [Thu, 6 Jul 2017 08:06:35 +0000 (13:36 +0530)]
Incorrect Full Weekday names for ks_IN@devanagari
During Locale verification I observed that
Incorrect Full Weekday names for ks_IN@devanagari
Reference is taken from
http://www.mkraina.com/PDF/3-Self-authored%20Works%20(English)/15.pdf
And kashmiri devanagari travel book and other sources
[BZ #21721]
* locales/ks_IN@devanagari: Full weekday name Fix.
Signed-off-by: Akhilesh Kumar <akhilesh.k@samsung.com>
DJ Delorie [Thu, 6 Jul 2017 23:54:13 +0000 (19:54 -0400)]
* manual/tunables.texi: Add missing @end deftp.
Florian Weimer [Thu, 6 Jul 2017 12:03:39 +0000 (14:03 +0200)]
resolv: Deal with non-deterministic address order in tst-resolv-basic
DJ Delorie [Thu, 6 Jul 2017 17:37:30 +0000 (13:37 -0400)]
Add per-thread cache to malloc
* config.make.in: Enable experimental malloc option.
* configure.ac: Likewise.
* configure: Regenerate.
* manual/install.texi: Document it.
* INSTALL: Regenerate.
* malloc/Makefile: Likewise.
* malloc/malloc.c: Add per-thread cache (tcache).
(tcache_put): New.
(tcache_get): New.
(tcache_thread_freeres): New.
(tcache_init): New.
(__libc_malloc): Use cached chunks if available.
(__libc_free): Initialize tcache if needed.
(__libc_realloc): Likewise.
(__libc_calloc): Likewise.
(_int_malloc): Prefill tcache when appropriate.
(_int_free): Likewise.
(do_set_tcache_max): New.
(do_set_tcache_count): New.
(do_set_tcache_unsorted_limit): New.
* manual/probes.texi: Document new probes.
* malloc/arena.c: Add new tcache tunables.
* elf/dl-tunables.list: Likewise.
* manual/tunables.texi: Document them.
* NEWS: Mention the per-thread cache.
Joseph Myers [Thu, 6 Jul 2017 17:01:03 +0000 (17:01 +0000)]
Increase some test timeouts.
This patch increases the timeouts for some tests that I've seen timing
out on slow systems in my 2.26 release testing. (In the case of
tst-tsearch.c, increasing the timeout means removing a setting of 10
that was put there before the default timeout was increased to 20
seconds, so putting the default into effect.)
* iconvdata/tst-loading.c (TIMEOUT): Define to 30.
* misc/tst-tsearch.c (TIMEOUT): Remove.
* nptl/tst-create-detached.c (TIMEOUT): Define to 100.
* nptl/tst-robust-fork.c (TIMEOUT): Likewise.
* nptl/tst-rwlock19.c (TIMEOUT): Likewise.
* string/tst-cmp.c (TIMEOUT): Define to 600.
Rafal Luzynski [Sat, 1 Jul 2017 00:22:37 +0000 (02:22 +0200)]
Arabic scripts: More fixes after the recent import.
After the recent import of month names from CLDRv31 (bug 21217,
commit c853f14) more imports are also needed, mostly abbreviated month
names.
This patch also updates May (full month name) in ps_AF which was
skipped in the previous patch.
Incidentally, this import fixes bug 17225 (ar_SY) and partially
bug 19066 (ar_SA).
CLDR currently has a bug in the full month name for October for ar_IQ, see
http://unicode.org/cldr/trac/ticket/10460
* localedata/locales/ar_DZ (abmon): Full import from CLDR, abmon
is no longer abbreviated.
* localedata/locales/ar_IQ (abmon): Likewise.
* localedata/locales/ar_MA (abmon): Likewise.
* localedata/locales/ar_TN (abmon): Likewise.
* localedata/locales/ps_AF (abmon): Likewise.
* localedata/locales/ug_CN (abmon): Likewise.
* localedata/locales/ar_SA (abmon): Likewise, partially
fixes bug 19066.
* localedata/locales/ks_IN (abmon): A copy of mon.
* localedata/locales/ur_IN (abmon): Oct reworded "اكتوبر" to
"اکتوبر" (same change as mon).
* localedata/locales/ur_PK (abmon): Same changes as mon applied.
* localedata/locales/ps_AF (mon): May reworded "می" to "مۍ".
[BZ #17225]
* localedata/locales/ar_SY (abmon): May reworded "نوار" to
"أيار", this closes bug 17225.
* localedata/locales/ar_JO (abmon): Likewise.
* localedata/locales/ar_LB (abmon): Likewise.
Matthew Krupcale [Thu, 6 Jul 2017 13:22:20 +0000 (10:22 -0300)]
nptl: Fix typo on __have_pthread_attr_t (BZ#21715)
This patch fixes some build issues when including types/sigevent_t.h
along with bits/pthreadtypes.h.
Checked on x86_64-linux-gnu and on a build on supported major ABIs.
[BZ #21715]
* sysdeps/nptl/bits/pthreadtypes.h (__have_pthread_attr_t): Fix typo
on definition.
H.J. Lu [Thu, 6 Jul 2017 11:43:06 +0000 (04:43 -0700)]
x86-64: Align the stack in __tls_get_addr [BZ #21609]
This change forces realignment of the stack pointer in __tls_get_addr, so
that binaries compiled by GCCs older than GCC 4.9:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066
continue to work even if vector instructions are used in glibc which
require the ABI stack realignment.
__tls_get_addr_slow is added to handle the slow paths in the default
implementation of__tls_get_addr in elf/dl-tls.c. The new __tls_get_addr
calls __tls_get_addr_slow after realigning the stack. Internal calls
within ld.so go directly to the default implementation of __tls_get_addr
because they do not need stack realignment.
[BZ #21609]
* sysdeps/x86_64/Makefile (sysdep-dl-routines): Add tls_get_addr.
(gen-as-const-headers): Add rtld-offsets.sym.
* sysdeps/x86_64/dl-tls.c: New file.
* sysdeps/x86_64/rtld-offsets.sym: Likwise.
* sysdeps/x86_64/tls_get_addr.S: Likewise.
* sysdeps/x86_64/dl-tls.h: Add multiple inclusion guards.
* sysdeps/x86_64/tlsdesc.sym (TI_MODULE_OFFSET): New.
(TI_OFFSET_OFFSET): Likwise.
Akhilesh Kumar [Wed, 5 Jul 2017 06:47:26 +0000 (12:17 +0530)]
Pashto yesstr/nostr locale are missing
[BZ #21711]
During Locale verification I observed that
yesstr and nostr are missing for Pashto [LC_MESSAGES] Locale
For Afghanistan reference google translate and Pashto travel book.
Adhemerval Zanella [Thu, 29 Jun 2017 15:05:01 +0000 (12:05 -0300)]
posix: Fix default posix_spawn return value
This patch fix the return value for error conditions for default
posix_spawn (where the errno is expected). It also avoid clobber
errno on fork call.
Checked on x86_64 (with Linux implementation removed).
[BZ# 21697]
* sysdeps/posix/spawni.c (__spawni_child): Fix return value.
(__spawnix): Do not clober errno.
Carlos O'Donell [Wed, 5 Jul 2017 18:14:44 +0000 (14:14 -0400)]
Fixup localedata/ChangeLog.
- Rewrite recent entry to follow GNU ChangeLog format.
- Convert spaces to tabs in one case.
Joseph Myers [Wed, 5 Jul 2017 17:43:58 +0000 (17:43 +0000)]
Edit and shorten float128 NEWS item.
Florian Weimer [Wed, 5 Jul 2017 15:39:33 +0000 (17:39 +0200)]
support: Add resolver testing mode which does not patch _res
Florian Weimer [Wed, 5 Jul 2017 13:38:42 +0000 (15:38 +0200)]
support: Add support_chroot_create and support_chroot_free
Florian Weimer [Wed, 5 Jul 2017 10:53:14 +0000 (12:53 +0200)]
support: Check isolation of loopback addresses in tst-support-namespace
Akhilesh Kumar [Wed, 5 Jul 2017 11:52:43 +0000 (17:22 +0530)]
Added Tok-Pisin locale.
[BZ #21694]
Added tok-pisin language locale for Papua New Guinea.
Signed-off-by: Akhilesh Kumar <akhilesh.k@samsung.com>
Joseph Myers [Wed, 5 Jul 2017 13:46:57 +0000 (13:46 +0000)]
Consistently say "GNU C Library" in NEWS, not "glibc".
Zack Weinberg [Wed, 5 Jul 2017 13:03:00 +0000 (09:03 -0400)]
Reorganize and revise NEWS for 2.26.
Akhilesh Kumar [Tue, 4 Jul 2017 05:24:08 +0000 (10:54 +0530)]
For Breton yesstr/nostr locale are missing
[BZ #21706]
During Locale verification i observed that
yesstr and nostr are missing for Breton [LC_MESSAGES] locale
Signed-off-by: Akhilesh Kumar <akhilesh.k@samsung.com>
Szabolcs Nagy [Tue, 4 Jul 2017 15:05:12 +0000 (16:05 +0100)]
Single threaded stdio optimization
Locking overhead can be significant in some stdio operations
that are common in single threaded applications.
This patch adds the _IO_FLAGS2_NEED_LOCK flag to indicate if
an _IO_FILE object needs to be locked and some of the stdio
functions just jump to their _unlocked variant when not. The
flag is set on all _IO_FILE objects when the first thread is
created. A new GLIBC_PRIVATE libc symbol, _IO_enable_locks,
was added to do this from libpthread.
The optimization can be applied to more stdio functions,
currently it is only applied to single flag check or single
non-wide-char standard operations. The flag should probably
be never set for files with _IO_USER_LOCK, but that's just a
further optimization, not a correctness requirement.
The optimization is valid in a single thread because stdio
operations are non-as-safe (so lock state is not observable
from a signal handler) and stdio locks are recursive (so lock
state is not observable via deadlock). The optimization is not
valid if a thread may be created while an stdio lock is taken
and thus it should be disabled if any user code may run during
an stdio operation (interposed malloc, printf hooks, etc).
This makes the optimization more complicated for some stdio
operations (e.g. printf), but those are bigger and thus less
important to optimize so this patch does not try to do that.
* libio/libio.h (_IO_FLAGS2_NEED_LOCK, _IO_need_lock): Define.
* libio/libioP.h (_IO_enable_locks): Declare.
* libio/Versions (_IO_enable_locks): New symbol.
* libio/genops.c (_IO_enable_locks): Define.
(_IO_old_init): Initialize flags2.
* libio/feof.c.c (_IO_feof): Avoid locking when not needed.
* libio/ferror.c (_IO_ferror): Likewise.
* libio/fputc.c (fputc): Likewise.
* libio/putc.c (_IO_putc): Likewise.
* libio/getc.c (_IO_getc): Likewise.
* libio/getchar.c (getchar): Likewise.
* libio/ioungetc.c (_IO_ungetc): Likewise.
* nptl/pthread_create.c (__pthread_create_2_1): Enable stdio locks.
* libio/iofopncook.c (_IO_fopencookie): Enable locking for the file.
* sysdeps/pthread/flockfile.c (__flockfile): Likewise.
Florian Weimer [Tue, 4 Jul 2017 14:12:46 +0000 (16:12 +0200)]
sysconf: Use conservative default for _SC_NPROCESSORS_ONLN [BZ #21542]
Florian Weimer [Tue, 4 Jul 2017 12:47:29 +0000 (14:47 +0200)]
resolv: Fix resolv_conf _res matching
A dot-less host name without an /etc/resolv.conf file caused an
assertion failure in update_from_conf because the function would not
deal correctly with the empty search list case.
Thanks to Andreas Schwab for debugging assistence.
Joseph Myers [Tue, 4 Jul 2017 10:32:54 +0000 (10:32 +0000)]
Update versions in build-many-glibcs.py.
This patch updates build-many-glibcs.py to use the current release
branch of binutils and current releases of GMP and the Linux kernel.
* scripts/build-many-glibcs.py (Context.checkout): Default
binutils version to 2.29 branch, GMP version to 6.1.2 and Linux
kernel version to 4.12.
Florian Weimer [Tue, 4 Jul 2017 09:18:34 +0000 (11:18 +0200)]
resolv: Fix improper assert in __resolv_conf_attach
Florian Weimer [Mon, 3 Jul 2017 13:01:34 +0000 (15:01 +0200)]
resolv: Introduce free list for resolv_conf index slosts
Florian Weimer [Mon, 3 Jul 2017 19:06:23 +0000 (21:06 +0200)]
resolv: Automatically reload a changed /etc/resolv.conf file [BZ #984]
This commit enhances the stub resolver to reload the configuration
in the per-thread _res object if the /etc/resolv.conf file has
changed. The resolver checks whether the application has modified
_res and will not overwrite the _res object in that case.
The struct resolv_context mechanism is used to check the
configuration file only once per name lookup.
Florian Weimer [Fri, 30 Jun 2017 18:19:10 +0000 (20:19 +0200)]
resolv: Mirror the entire resolver configuration in struct resolv_conf
This commit adds the remaining unchanging members (which are loaded
from /etc/resolv.conf) to struct resolv_conf.
The extended name server list is currently not used by the stub
resolver. The switch depends on a cleanup: The _u._ext.nssocks
array stores just a single socket, and needs to be replaced with
a single socket value.
(The compatibility gethostname implementation does not use the
extended addres sort list, either. Updating the compat code is
not worthwhile.)
Florian Weimer [Fri, 30 Jun 2017 22:53:05 +0000 (00:53 +0200)]
resolv: Lift domain search list limits [BZ #19569] [BZ #21475]
This change uses the extended resolver state in struct resolv_conf to
store the search list. If applications have not patched the _res
object directly, this extended search list will be used by the stub
resolver during name resolution.
Florian Weimer [Mon, 3 Jul 2017 18:31:23 +0000 (20:31 +0200)]
resolv: Introduce struct resolv_conf with extended resolver state
This change provides additional resolver configuration state which
is not exposed through the _res ABI. It reuses the existing
initstamp field in the supposedly-private part of _res. Some effort
is undertaken to avoid memory safety issues introduced by applications
which directly patch the _res object.
With this commit, only the initstamp field is moved into struct
resolv_conf. Additional members will be added later, eventually
migrating the entire resolver configuration.
Florian Weimer [Fri, 30 Jun 2017 19:10:23 +0000 (21:10 +0200)]
resolv: Introduce struct resolv_context [BZ #21668]
struct resolv_context objects provide a temporary resolver context
which does not change during a name lookup operation. Only when the
outmost context is created, the stub resolver configuration is
verified to be current (at present, only against previous res_init
calls). Subsequent attempts to obtain the context will reuse the
result of the initial verification operation.
struct resolv_context can also be extended in the future to store
data which needs to be deallocated during thread cancellation.
Florian Weimer [Mon, 3 Jul 2017 15:41:19 +0000 (17:41 +0200)]
resolv: Add preinit tests to resolv/tst-resolv-res_init-skeleton.c
Rafal Luzynski [Thu, 29 Jun 2017 00:23:28 +0000 (02:23 +0200)]
More fixes after the recent import from CLDR-31
After the recent import of month names from CLDR (bug 21217) more
imports are also needed, mostly abbreviated month names.
* localedata/locales/br_FR (abmon): Reworded "Eve " to "Mezh".
* localedata/locales/fy_NL (abmon): Reworded "Maa" (March) to
"Mrt" and "Maa" (May) to "Mai".
* localedata/locales/lg_UG (abmon): Reworded "Jun" to "Juu".
* localedata/locales/ln_CD (abmon): "yan", "fbl", "msi",
and so on.
* localedata/locales/mn_MN (abmon): "1-р сар", "2-р сар",
"3-р сар", and so on.
* localedata/locales/vi_VN (abmon): Reworded "Th01" to "Thg 1",
"Th02" to "Thg 2" and so on.
* localedata/locales/yo_NG (abday): "Àìkú", "Ajé", "Ìsẹ́gun",
and so on, also comment updated to match the new content.
(day): "Ọjọ́ Àìkú", "Ọjọ́ Ajé", "Ọjọ́ Ìsẹ́gun", and so on.
(abmon): "Ṣẹ́rẹ́", "Èrèlè", "Ẹrẹ̀nà", and so on.
(mon): Comment updated to match the actual content.
(d_t_fmt): Changed "%A" to "%a" and "%B" to "%b".
* localedata/locales/zu_ZA (abmon): "Jan", "Feb", "Mas",
and so on, also comment updated to match the new content.
(mon): comment updated to match the actual content.
Rajalakshmi Srinivasaraghavan [Mon, 3 Jul 2017 05:16:13 +0000 (10:46 +0530)]
powerpc: Clean up strlen and strnlen for power8
To align a quadword aligned address to 64 bytes, maximum of three
16 bytes load is needed for worst case instead of loading four times.
H.J. Lu [Sat, 1 Jul 2017 14:29:19 +0000 (07:29 -0700)]
Use __builtin_popcount in __sched_cpucount [BZ #21696]
posix/sched_cpucount.c assumes that size of __cpu_mask == size of long,
which is incorrect for x32. This patch uses __builtin_popcount, which
is availabe in GCC 4.9, in posix/sched_cpucount.c.
Tested on i686, x86-64 and x32 with multi-arch disabled.
[BZ #21696]
* posix/sched_cpucount.c: Don't include <limits.h>.
(__sched_cpucount): Use __builtin_popcount.
Siddhesh Poyarekar [Sat, 1 Jul 2017 14:21:44 +0000 (19:51 +0530)]
Fix typo in glibc.tune.cpu name
Gabriel F. T. Gomes [Thu, 29 Jun 2017 18:34:05 +0000 (15:34 -0300)]
float128: Add signbit alternative for old compilers
In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*,
e.g.: __builtin_signbitf128, before GCC 6. However, there has never
been a __builtin_signbitf128 in GCC and the type-generic builtin is
only available since GCC 6. For older GCC, this patch defines
__builtin_signbitf128 to __signbitf128, so that the internal function
is used instead of the non-existent builtin.
This patch also changes the implementation of __signbitf128, because
it was reusing the implementation of __signbitl from ldbl-128, which
calls __builtin_signbitl. Using the long double version of the
builtin is not correct on machines where _Float128 is ABI-distinct
from long double (i.e.: ia64, powerpc64le, x86, x86_84). The new
implementation does not rely on builtins when being built with GCC
versions older than 6.0.
The new code does not currently affect powerpc64le builds, because
only GCC 6.2 fulfills the requirements from configure. It might
affect powerpc64le builds if those requirements are backported to
older versions of the compiler. The new code affects x86_64 builds,
since glibc is supposed to build correctly with older versions of GCC.
Tested for powerpc64le and x86_64.
* include/math.h (__signbitf128): Define as hidden.
* sysdeps/ieee754/float128/s_signbitf128.c (__signbitf128):
Reimplement without builtins.
* sysdeps/ia64/bits/floatn.h [!__GNUC_PREREQ (6, 0)]
(__builtin_signbitf128): Define to __signbitf128.
* sysdeps/powerpc/bits/floatn.h: Likewise.
* sysdeps/x86/bits/floatn.h: Likewise.