| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This will need to be merged with the initial ilp32 abilist commit.
2019-08-01 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/ilp32/libc.abilist: Update.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libpthread.abilist: Update.
|
|
|
|
|
|
|
|
| |
This will need to be merged with the initial ilp32 abilist commit.
2019-05-09 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/ilp32/libc.abilist: Update.
|
|
|
|
|
|
|
|
|
|
| |
This will need to be merged with the initial ilp32 abilist commit.
2018-08-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/ilp32/libc.abilist: Update.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libm.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libpthread.abilist: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This will need to be merged with the initial ilp32 abilist commit.
2018-08-03 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/ilp32/ld.abilist: Ignore absolute
symbols.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libBrokenLocale.abilist:
Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libanl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libcrypt.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libdl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libm.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libnsl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libpthread.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libresolv.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/librt.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libthread_db.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libutil.abilist: Likewise.
|
|
|
|
|
|
|
|
|
|
| |
The same suppression of -Wstringop-truncation warnings as in commit
7532837d7b03b3ca5b9a63d77a5bd81dd23f3d9c but for aarch64.
2018-02-21 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/bits/utmp.h (struct utmp): Use
__attribute_nonstring__.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update libc and libm abilists with copy_file_range, mlock2, pkey_* and
_FloatN related symbols. Remove pthread_self from the libpthread abilist.
This will need to be merged with the initial ilp32 abilist commit.
2018-01-26 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/ilp32/libc.abilist: Update.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libm.abilist: Update.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libpthread.abilist: Update.
|
|
|
|
|
|
|
|
|
| |
The offset is different on ILP32 because __saved_mask is 4 byte aligned.
2017-11-28 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/jmp_buf-macros.h (SAVED_MASK_OFFSET):
Fix for ILP32.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update libc and libm abilists with memfd_create and new _FloatN symbols.
Remove __nis_hash and __p_secstodate from libnsl and libresolv abilists.
This will need to be merged with the initial ilp32 abilist commit.
2017-11-27 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/ilp32/libc.abilist: Update.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libm.abilist: Update.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libnsl.abilist: Update.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libresolv.abilist: Update.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update abilist files because a number of symbols got removed for
GLIBC_2.27. ILP32 now needs separate localplt.data as well
because it has no matherr PLT anymore.
(Eventually this will be merged into the initial abilist commit.)
2017-09-29 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/ilp32/libc.abilist
(__nss_group_lookup): Remove.
(__nss_hosts_lookup): Remove.
(__nss_passwd_lookup): Remove.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libm.abilist
(_LIB_VERSION): Remove.
(matherr): Remove.
(pow10): Remove.
(pow10f): Remove.
(pow10l): Remove.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libresolv.abilist
(_res_opcodes): Remove.
* sysdeps/unix/sysv/linux/aarch64/ilp32/localplt.data: New file.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mainline linux does not support ilp32 yet, but there is support
for this abi since linux v4.12 in the arm64 linux repo under
ilp32 staging branches.
2017-09-01 Szabolcs Nagy <szabolcs.nagy@arm.com>
* sysdeps/unix/sysv/linux/aarch64/configure.ac (arch_minimum_kernel):
Set to 4.12.0 on ILP32.
* sysdeps/unix/sysv/linux/aarch64/configure: Regenerate.
|
|
|
|
|
|
|
| |
2017-09-01 Steve Ellcey <sellcey@caviumnetworks.com>
* scripts/build-many-glibcs.py (Context.add_all_configs):
Add ilp32 variants of aarch64 architecture.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for the ILP32 abi variant to aarch64.
2017-09-01 Andrew Pinski <andrew.pinski@caviumnetworks.com>
Yury Norov <ynorov@caviumnetworks.com>
Steve Ellcey <sellcey@caviumnetworks.com>
* elf/cache.c (print_entry): Add FLAG_AARCH64_LIB32.
* sysdeps/aarch64/configure.ac (HAVE_AARCH64_ILP32): New define.
(default-abi): Allow for ilp32 ABI.
* sysdeps/aarch64/configure: Regenerate.
* sysdeps/aarch64/Implies: Deleted.
* sysdeps/aarch64/ilp32/Implies: New file.
* sysdeps/aarch64/ilp32/Implies-after: New file.
* sysdeps/aarch64/lp64/Implies: New file.
* sysdeps/aarch64/lp64/Implies-after: New file.
* sysdeps/aarch64/nptl/bits/pthreadtypes-arch.h
(__PTHREAD_RWLOCK_INT_FLAGS_SHARED): Set to 1.
* sysdeps/aarch64/preconfigure (machine): Check for ilp32/lp64.
* sysdeps/aarch64/tls-macros.h (TLS_IE): Remove register specification
for __result and ifdef for ILP32.
* sysdeps/generic/ldconfig.h (FLAG_AARCH64_LIB32): New define.
* sysdeps/unix/sysv/linux/aarch64/Implies: Remove generic and
wordsize-64 entries.
* sysdeps/unix/sysv/linux/aarch64/Makefile (abi-variants): Add
new variants for ilp32 and ilp32_be.
(abi-lp64-condition, abi-lp64_be-condition): Check for __WORDSIZE
equal to 64.
(abi-ilp32-condition, abi-ilp32_be-condition): New.
* sysdeps/unix/sysv/linux/aarch64/configure.ac (arch_minimum_kernel):
Use different value for ILP32.
(LIBC_SLIBDIR_RTLDDIR): Modify for ILP32.
* sysdeps/unix/sysv/linux/aarch64/configure: Regenerate.
* sysdeps/unix/sysv/linux/aarch64/ilp32/Implies: New file.
* sysdeps/unix/sysv/linux/aarch64/ilp32/c++-types.data: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/kernel_stat.h: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/shlib-versions: Likewise.
* sysdeps/unix/sysv/linux/aarch64/bits/stat.h: Likewise.
* sysdeps/unix/sysv/linux/aarch64/bits/statfs.h: Likewise.
* sysdeps/unix/sysv/linux/aarch64/bits/typesizes.h: Likewise.
* sysdeps/unix/sysv/linux/aarch64/bits/utmp.h: Likewise.
* sysdeps/unix/sysv/linux/aarch64/bits/utmpx.h: Likewise.
* sysdeps/unix/sysv/linux/aarch64/kernel-features.h: Likewise.
* sysdeps/unix/sysv/linux/aarch64/Implies: Add unix/sysv/linux/aarch64.
* sysdeps/unix/sysv/linux/aarch64/ioctl.S: Move to lp64 directory.
* sysdeps/unix/sysv/linux/aarch64/mmap.c: Likewise.
* sysdeps/unix/sysv/linux/aarch64/shlib-versions: Likewise.
* sysdeps/unix/sysv/linux/aarch64/c++-types.data: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ldd-rewrite.sed: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ipc_priv.h (__IPC_64): Check __ILP32
when setting.
* sysdeps/unix/sysv/linux/arm/readelflib.c (process_elf_file):
Check for EM_AARCH64 when processing ELFCLASS32 object.
* sysdeps/unix/sysv/linux/bits/fcntl-linux.h (F_GETLK, F_SETLCK,
F_SETLKW): Check for __OFF_T_MATCHES_OFF64_T when defining.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename lp64 abilist files and add new ilp32 abilist files with
GLIBC_2.27 symbol versions.
2017-09-01 Andrew Pinski <andrew.pinski@caviumnetworks.com>
Yury Norov <ynorov@caviumnetworks.com>
Steve Ellcey <sellcey@caviumnetworks.com>
* sysdeps/unix/sysv/linux/aarch64/ilp32/ld.abilist: New file.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libBrokenLocale.abilist:
Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libanl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libcrypt.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libdl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libm.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libnsl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libpthread.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libresolv.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/librt.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libthread_db.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ilp32/libutil.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/ld.abilist: Moved to lp64 directory.
* sysdeps/unix/sysv/linux/aarch64/libBrokenLocale.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libanl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libc.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libcrypt.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libdl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libnsl.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libpthread.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libresolv.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/librt.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libthread_db.abilist: Likewise.
* sysdeps/unix/sysv/linux/aarch64/libutil.abilist: Likewise.
|
|
|
|
| |
Update version.h, features.h, and ChangeLog.old/ChangeLog.22.
|
| |
|
|
|
|
| |
Add missing Serbian translation.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For configurations with cross-compiling equal to 'maybe' or 'no',
ldconfig will not run and thus the ld.so.cache will not be created
on the container testroot.pristine.
This lead to failures on both tst-glibc-hwcaps-prepend-cache and
tst-ldconfig-ld_so_conf-update on environments where the same
compiler can be used to build different ABIs (powerpc and x86 for
instance).
This patch addas a new test-container hook, ldconfig.run, that
triggers a ldconfig execution prior the test execution.
Checked on x86_64-linux-gnu and i686-linux-gnu.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commit 94cd37ebb293321115a36a422b091fdb72d2fb08
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Wed Sep 16 05:27:32 2020 -0700
x86: Use HAS_CPU_FEATURE with IBT and SHSTK [BZ #26625]
broke
GLIBC_TUNABLES=glibc.cpu.hwcaps=-IBT,-SHSTK
since it can no longer disable IBT nor SHSTK. Handle IBT and SHSTK with:
1. Revert commit 94cd37ebb293321115a36a422b091fdb72d2fb08.
2. Clears the usable CET feature bits if kernel doesn't support CET.
3. Add GLIBC_TUNABLES tests without dlopen.
4. Add tests to verify that CPU_FEATURE_USABLE on IBT and SHSTK matches
_get_ssp.
5. Update GLIBC_TUNABLES tests with dlopen to verify that CET is disabled
with GLIBC_TUNABLES.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
brk used by statup before TCB is properly set, so we can't use
IA64_USE_NEW_STUB.
This patch fixes a regression introduced by 720480934ab910.
Checked on ia64-linux-gnu.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A not so recent kernel change[1] changed how the trampoline
`__kernel_sigtramp_rt64` is used to call signal handlers.
This was exposed on the test misc/tst-sigcontext-get_pc
Before kernel 5.9, the kernel set LR to the trampoline address and
jumped directly to the signal handler, and at the end the signal
handler, as any other function, would `blr` to the address set. In
other words, the trampoline was executed just at the end of the signal
handler and the only thing it did was call sigreturn. But since
kernel 5.9 the kernel set CTRL to the signal handler and calls to the
trampoline code, the trampoline then `bctrl` to the address in CTRL,
setting the LR to the next instruction in the middle of the
trampoline, when the signal handler returns, the rest of the
trampoline code executes the same code as before.
Here is the full trampoline code as of kernel 5.11.0-rc5 for
reference:
V_FUNCTION_BEGIN(__kernel_sigtramp_rt64)
.Lsigrt_start:
bctrl /* call the handler */
addi r1, r1, __SIGNAL_FRAMESIZE
li r0,__NR_rt_sigreturn
sc
.Lsigrt_end:
V_FUNCTION_END(__kernel_sigtramp_rt64)
This new behavior breaks how `backtrace()` uses to detect the
trampoline frame to correctly reconstruct the stack frame when it is
called from inside a signal handling.
This workaround rely on the fact that the trampoline code is at very
least two (maybe 3?) instructions in size (as it is in the 32 bits
version, only on `li` and `sc`), so it is safe to check the return
address be in the range __kernel_sigtramp_rt64 .. + 4.
[1] subject: powerpc/64/signal: Balance return predictor stack in signal trampoline
commit: 0138ba5783ae0dcc799ad401a1e8ac8333790df9
url: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0138ba5783ae0dcc799ad401a1e8ac8333790df9
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
https://sourceware.org/bugzilla/show_bug.cgi?id=27077
Before reloading nsswitch.conf, verify that the root directory
hasn't changed - if it has, it's likely that we've entered a
container and should not trust the nsswitch inside the container
nor load any shared objects therein.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
elf/tst-prelink-cmp was initially added for x86 (commit fe534fe898) to validate
the fix for Bug 19178, and later applied to all architectures that use GLOB_DAT
relocations (commit 89569c8bb6). However, that bug only affected targets that
handle GLOB_DAT relocations as ELF_TYPE_CLASS_EXTERN_PROTECTED_DATA, so the test
should only apply to targets defining DL_EXTERN_PROTECTED_DATA, which gates the
usage of the elf type class above. For all other targets not meeting that
criteria, the test now returns with UNSUPPORTED status.
Fixes the test on POWER10 processors, which started using R_PPC64_GLOB_DAT.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The conversion loop to the internal encoding does not follow
the interface contract that __GCONV_FULL_OUTPUT is only returned
after the internal wchar_t buffer has been filled completely. This
is enforced by the first of the two asserts in iconv/skeleton.c:
/* We must run out of output buffer space in this
rerun. */
assert (outbuf == outerr);
assert (nstatus == __GCONV_FULL_OUTPUT);
This commit solves this issue by queuing a second wide character
which cannot be written immediately in the state variable, like
other converters already do (e.g., BIG5-HKSCS or TSCII).
Reported-by: Tavis Ormandy <taviso@gmail.com>
|
|
|
|
|
|
|
|
|
| |
This reverts commit 2682695e5c7acf1e60dd3b5c3a14d4e82416262c.
Fixes bug 27237.
That commit turned out to be too intrusive affecting crt files, test
system and benchmark files. They should not be affected, but the
build system does not set the MODULE_NAME and LIBC_NONSHARED reliably.
|
|
|
|
|
|
|
|
|
| |
Since commit 2682695e5c7a, `make bench-build' with `--enable-static-pie'
fails due to bench-timing-type being incorrectly built with MODULE_NAME
set to `libc'. This commit sets MODULE_NAME to nonlib, thus fixing the
build failure.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
|