glibc:vineet/statfs-cleanup

Last commit made on 2021-02-08
Get this branch:
git clone -b vineet/statfs-cleanup https://git.launchpad.net/glibc

Branch merges

Branch information

Name:
vineet/statfs-cleanup
Repository:
lp:glibc

Recent commits

7cd34c9... by Vineet Gupta <email address hidden> on 2020-02-19

Remove STATFS_IS_STATFS64 conditional as it is zero in all ports

This seems to be dead code, so remove it.

0ff7862... by Joseph Myers <email address hidden> on 2021-02-08

Add more ptrace constants for AArch64 and PowerPC.

Linux 5.10 adds PTRACE_PEEKMTETAGS and PTRACE_POKEMTETAGS for AArch64.
Adding those shows up that glibc is also missing PTRACE_SYSEMU and
PTRACE_SYSEMU_SINGLESTEP, for AArch64 (where they were added to Linux
in 5.3) and for PowerPC (where they were added in Linux 4.20); it
already has those two defines for x86. Add all those defines to
glibc's headers.

Tested with build-many-glibcs.py for aarch64-linux-gnu and
powerpc-linux-gnu.

a00e2fe... by noah <email address hidden> on 2021-02-03

strchr: Add additional benchmarks and tests

This patch adds additional benchmarks and tests for string size of
4096 and several benchmarks for string size 256 with different
alignments.

1f745ec... by noah <email address hidden> on 2021-02-03

x86-64: Refactor and improve performance of strchr-avx2.S

No bug. Just seemed the performance could be improved a bit. Observed
and expected behavior are unchanged. Optimized body of main
loop. Updated page cross logic and optimized accordingly. Made a few
minor instruction selection modifications. No regressions in test
suite. Both test-strchrnul and test-strchr passed.

c1f46f9... by Adhemerval Zanella on 2021-02-03

pthread: Remove alloca usage from __sem_check_add_mapping

sem_open already returns EINVAL for input names larger than NAME_MAX,
so it can assume the largest name length with tfind.

Checked on x86_64-linux-gnu.

da4aea0... by Adhemerval Zanella on 2021-02-03

pthread: Refactor semaphore code

The internal semaphore list code is moved to a specific file,
sem_routine.c, and the internal usage is simplified to only two
functions (one to insert a new semaphore and one to remove it
from the internal list). There is no need to expose the
internal locking, neither how the semaphore mapping is implemented.

No functional or semantic change is expected, tested on
x86_64-linux-gnu.

e9fed24... by Florian Weimer on 2021-02-03

linux: Require /dev/shm as the shared memory file system

Previously, glibc would pick an arbitrary tmpfs file system from
/proc/mounts if /dev/shm was not available. This could lead to
an unsuitable file system being picked for the backing storage for
shm_open, sem_open, and related functions.

This patch introduces a new function, __shm_get_name, which builds
the file name under the appropriate (now hard-coded) directory. It is
called from the various shm_* and sem_* function. Unlike the
SHM_GET_NAME macro it replaces, the callers handle the return values
and errno updates. shm-directory.c is moved directly into the posix
subdirectory because it can be implemented directly using POSIX
functionality. It resides in libc because it is needed by both
librt and nptl/htl.

In the sem_open implementation, tmpfname is initialized directly
from a string constant. This happens to remove one alloca call.

Checked on x86_64-linux-gnu.

7f61f78... by Paul Zimmermann <email address hidden> on 2021-02-03

sunrpc: Fix typo in xdr_string comment

e2c0794... by Lukasz Majewski <email address hidden> on 2021-01-13

tst: Provide test for ppoll

This change adds new test to assess ppoll()'s timeout related
functionality (the struct pollfd does not provide valid fd to wait
for - just wait for timeout).

To be more specific - two use cases are checked:
- if ppoll() times out immediately when passed struct timespec has zero
values of tv_nsec and tv_sec.
- if ppoll() times out after timeout specified in passed argument

5692abd... by Lukasz Majewski <email address hidden> on 2021-01-13

tst: Provide test for timerfd related functions

This change adds new test to assess functionality of timerfd_*
functions.
It creates new timer (operates on its file descriptor) and checks
if time before and after sleep is between expected values.