about summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* Linux: Work around kernel bugs in chmod on /proc/self/fd paths fw/tst-lchmodFlorian Weimer2020-02-122-62/+49
| | | | | | | | It appears that the ability to change symbolic link modes through such paths is unintended. On several file systems, the operation fails with EOPNOTSUPP, even though the symbolic link permissions are updated. The expected behavior is a failure to update the permissions, without file system changes.
* sunrpc: Properly clean up if tst-udp-timeout failsMatheus Castanho2020-02-121-3/+15
| | | | | | | | | | | | | The macro TEST_VERIFY_EXIT is used several times on sunrpc/tst-udp-timeout to exit the test if a condition evaluates to false. The side effect is that the code to terminate the RPC server process is not executed when the program calls exit, so that sub-process stays alive. This commit registers a clean up function with atexit to kill the server process before exiting the main program. Reviewed-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
* elf: avoid stack allocation in dl_open_workerDavid Kilroy2020-02-121-16/+12
| | | | | | | | | | | | As the sort was removed, there's no need to keep a separate map of links. Instead, when relocating objects iterate over l_initfini directly. This allows us to remove the loop copying l_initfini elements into map. We still need a loop to identify the first and last elements that need relocation. Tested by running the testsuite on x86_64.
* elf: avoid redundant sort in dlopenDavid Kilroy2020-02-121-4/+4
| | | | | | | l_initfini is already sorted by dependency in _dl_map_object_deps(), so avoid sorting again in dl_open_worker(). Tested by running the testsuite on x86_64.
* elf: Allow dlopen of filter object to work [BZ #16272]David Kilroy2020-02-1211-16/+327
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two fixes that are needed to be able to dlopen filter objects. First _dl_map_object_deps cannot assume that map will be at the beginning of l_searchlist.r_list[], as filtees are inserted before map. Secondly dl_open_worker needs to ensure that filtees get relocated. In _dl_map_object_deps: * avoiding removing relocation dependencies of map by setting l_reserved to 0 and otherwise processing the rest of the search list. * ensure that map remains at the beginning of l_initfini - the list of things that need initialisation (and destruction). Do this by splitting the copy up. This may not be required, but matches the initialization order without dlopen. Modify dl_open_worker to relocate the objects in new->l_inifini. new->l_initfini is constructed in _dl_map_object_deps, and lists the objects that need initialization and destruction. Originally the list of objects in new->l_next are relocated. All of these objects should also be included in new->l_initfini (both lists are populated with dependencies in _dl_map_object_deps). We can't use new->l_prev to pick up filtees, as during a recursive dlopen from an interposed malloc call, l->prev can contain objects that are not ready for relocation. Add tests to verify that symbols resolve to the filtee implementation when auxiliary and filter objects are used, both as a normal link and when dlopen'd. Tested by running the testsuite on x86_64.
* Update translationsSiddhesh Poyarekar2020-02-122-6/+834
| | | | Pull in translation update from translation.org.
* Rename RWF_WRITE_LIFE_NOT_SET to RWH_WRITE_LIFE_NOT_SET following Linux 5.5.Joseph Myers2020-02-121-1/+2
| | | | | | | | Linux 5.5 renames RWF_WRITE_LIFE_NOT_SET to RWH_WRITE_LIFE_NOT_SET, with the old name kept as an alias. This patch makes the corresponding change in glibc. Tested for x86_64.
* S390: Fix non-ascii character in fenv.h.Stefan Liebler2020-02-121-2/+2
| | | | | | | | | | | | | | | | | The comment "isn't" contained a non-ascii character which leads to an error if compiled with -finput-charset=ascii: error: failure to convert ascii to UTF-8 This is observable in GCC testsuite: FAIL: 17_intro/headers/c++1998/charset.cc (test for excess errors) FAIL: 17_intro/headers/c++2011/charset.cc (test for excess errors) FAIL: 17_intro/headers/c++2014/charset.cc (test for excess errors) FAIL: 17_intro/headers/c++2017/charset.cc (test for excess errors) FAIL: 17_intro/headers/c++2020/charset.cc (test for excess errors) Also rewrite the comment above. Reported-by: Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
* io: Add io/tst-lchmod covering lchmod and fchmodatFlorian Weimer2020-02-122-1/+315
|
* Linux: Emulate fchmodat with AT_SYMLINK_NOFOLLOW using O_PATH [BZ #14578]Florian Weimer2020-02-121-10/+47
| | | | | /proc/self/fd files are special and chmod on O_PATH descriptors in that directory operates on the symbolic link itself (like lchmod).
* io: Implement lchmod using fchmodat [BZ #14578]Florian Weimer2020-02-125-6/+8
|
* Add internal <file_change_detection.h> header fileFlorian Weimer2020-02-123-1/+347
| | | | | | | | | | | The code started out with bits form resolv/resolv_conf.c, but it was enhanced to deal with directories and FIFOs in a more predictable manner. A test case is included as well. This will be used to implement the /etc/resolv.conf change detection. This currently lives in a header file only. Once there are multiple users, the implementations should be moved into C files.
* elf.h: Add R_RISCV_IRELATIVEFangrui Song2020-02-121-1/+2
| | | | | | The number has been officially assigned by https://github.com/riscv/riscv-elf-psabi-doc/pull/131 https://github.com/riscv/riscv-elf-psabi-doc/commit/d21ca40a7f56812a15e97450b7bc1599c0d35b82
* Fix typo in the name for Wednesday in Kurdish [BZ #9809]Mike FABIAN2020-02-111-1/+1
|
* debug: Add missing locale dependencies of fortify testsFlorian Weimer2020-02-111-0/+11
| | | | | | | | | | | | | | | | | The missing dependencies result in failures like this if make check is invoked with sufficient parallelism for the debug subdirectory: FAIL: debug/tst-chk2 FAIL: debug/tst-chk3 FAIL: debug/tst-chk4 FAIL: debug/tst-chk5 FAIL: debug/tst-chk6 FAIL: debug/tst-lfschk1 FAIL: debug/tst-lfschk2 FAIL: debug/tst-lfschk3 FAIL: debug/tst-lfschk4 FAIL: debug/tst-lfschk5 FAIL: debug/tst-lfschk6
* htl C11 threads: Avoid pthread_ symbols visibility in static librarySamuel Thibault2020-02-1042-45/+41
|
* hurd: Add __pthread_spin_wait and use itSamuel Thibault2020-02-1117-24/+33
| | | | | | | | | 900778283ac3 ("htl: make pthread_spin_lock really spin") made pthread_spin_lock really spin and not block, but the current users of __pthread_spin_lock were assuming that it blocks, i.e. they use it as a lightweight mutex fitting in just one int. __pthread_spin_wait provides that support back.
* ldbl-128ibm-compat: set PRINTF_CHK flag in {,v}sprintf_chkPaul E. Murphy2020-02-102-0/+8
| | | | | | | This should be unconditionally set to match the common implementation, and fixes multiple test failures related to sprintf. Reviewed-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
* Use --disable-gdbserver in build-many-glibcs.py.Joseph Myers2020-02-101-0/+1
| | | | | | | | | | | | | Now that binutils-gdb has gdbserver at top level, an extra --disable-gdbserver configure option is needed when configuring binutils from a git checkout to avoid it also building gdbserver unnecessarily (although fairly harmlessly). This patch updates the options used in build-many-glibcs.py accordingly (although this might end up not being needed depending on what happens regarding whether gdbserver gets built for host != target). Tested with a build-many-glibcs.py compilers build for aarch64-linux-gnu using binutils-gdb master.
* Improve random memcpy benchmarkWilco Dijkstra2020-02-101-29/+57
| | | | | | | | | Improve the random memcpy benchmark. Double the number of copies and increase the memory sizes tested to 512KB. Add a more detailed distribution of memcpy alignment and sizes up to 4096 based on SPEC2017 traces. Reviewed-by: Siddhesh Poyarekar <siddhesh@sourceware.org>
* nptl: update default pthread-offsets.hAndreas Schwab2020-02-101-16/+6
| | | | | Remove unused definitions, and correct __PTHREAD_RWLOCK_FLAGS_OFFSET for __WORDSIZE == 64.
* nptl: add missing pthread-offsets.hAndreas Schwab2020-02-105-0/+25
| | | | | All architectures using their own definition of struct __pthread_rwlock_arch_t need to provide their own pthread-offsets.h.
* htl: Avoid a local plt for pthread_selfSamuel Thibault2020-02-101-3/+3
|
* pthread: Move some join tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-1014-13/+16
| | | | So they can be checked with htl too.
* htl: Make joining self return EDEADLKSamuel Thibault2020-02-101-0/+3
|
* pthread: Move most barrier tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-107-1/+2
| | | | So they can be checked with htl too.
* htl: Fix barrier_wait with one threadSamuel Thibault2020-02-101-1/+3
|
* pthread: Move most sem tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-1015-3/+12
| | | | So they can be checked with htl too.
* htl: Make sem_wait/sem_timedwait interruptibleSamuel Thibault2020-02-107-9/+47
|
* htl: Make sem_open return ENOSYSSamuel Thibault2020-02-101-1/+1
| | | | instead of EOPNOTSUPP, which is for sockets.
* htl: Add support for semaphore maximum valueSamuel Thibault2020-02-102-0/+10
|
* pthread: Move key tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-106-1/+1
| | | | So they can be checked with htl too.
* hurd: Make nanosleep a cancellation pointSamuel Thibault2020-02-101-0/+5
|
* htl: Add support for libc cancellation pointsSamuel Thibault2020-02-106-3/+69
|
* htl: clean __pthread_get_cleanup_stack hidden protoSamuel Thibault2020-02-104-6/+4
|
* htl: XFAIL rwlock tests which need pshared supportSamuel Thibault2020-02-091-0/+2
|
* pthread: Move some rwlock tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-099-5/+6
| | | | So they can be checked with htl too.
* pthread: Move most once tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-098-5/+8
| | | | So they can be checked with htl too.
* htl: support cancellation during pthread_onceSamuel Thibault2020-02-091-0/+10
|
* pthread: Move most cond tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-0931-8/+28
| | | | So they can be checked with htl too.
* htl: make pthread_cond_destroy return EBUSY on waitersSamuel Thibault2020-02-091-1/+8
|
* htl: Report missing mutex lock on pthread_cond_*waitSamuel Thibault2020-02-094-1/+59
|
* htl: Fix linking static testcasesSamuel Thibault2020-02-091-0/+2
| | | | They need libpthread.a
* htl: Move __register_atfork from forward to own fileSamuel Thibault2020-02-093-139/+158
| | | | Since we need it also in the static linking case.
* pthread: Move some attr tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-093-1/+2
| | | | So they can be checked with htl too.
* htl: Fix default guard sizeSamuel Thibault2020-02-093-2/+6
| | | | | When it is not hardcoded by the architecture with PAGESIZE, we need to use the dynamic values from __vm_page_size.
* pthread: Move most mutex tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-0910-3/+8
| | | | | | So they can be checked with htl too. XFAIL tst-mutex4, for which support is still missing in htl.
* pthread: Move spin tests from nptl to sysdeps/pthreadSamuel Thibault2020-02-096-1/+1
| | | | So they can be checked with htl too.
* htl: make pthread_spin_lock really spinSamuel Thibault2020-02-091-1/+1
| | | | | __spin_lock would actually use gsync_wait to block, which is not what pthread_spin_lock is about.
* htl: Avoid check-installed-headers looking at inlinesSamuel Thibault2020-02-091-2/+4
|