aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix
AgeCommit message (Collapse)Author
2005-04-07* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion)Roland McGrath
[(NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO) && SHARED]: Scan GLRO(dl_sysinfo_map) for PT_NOTE giving Linux kernel version, we can skip the uname call if it's there. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't use DL_SYSDEP_OSCHECK here. * elf/rtld.c (dl_main) [DL_SYSDEP_OSCHECK]: Do it here instead. * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add _dl_sysinfo_map. * elf/rtld.c (dl_main): Don't call _dl_init_paths early in the rtld_is_main case. Call it unconditionally later. Move GLRO(dl_sysinfo_dso) handling earlier, before _dl_init_paths call. Initialize GLRO(dl_sysinfo_map). * elf/dl-load.c (open_path): Bail out if _dl_init_paths wasn't called. * sysdeps/generic/dl-sysdep.c (_DL_FIRST_EXTRA): New macro. (_dl_important_hwcaps) [(NEED_DL_SYSINFO || NEED_DL_SYSINFO_DSO) && SHARED]: Scan GLRO(dl_sysinfo_map) for PT_NOTE giving synthetic hwcap names and bit values. * elf/ldconfig.c (_DL_FIRST_EXTRA): New macro. (hwcap_extra): New static variable. (is_hwcap_platform): Check hwcap_extra for a matching name. Remove tls special case. (path_hwcap): Likewise. (parse_conf): Parse "hwcap" directive to define synthetic hwcap bits and their names, stored in hwcap_extra. (main) [USE_TLS]: Initialize final synthetic hwcap bit as "tls". * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Use uint64_t for _dl_hwcap and _dl_hwcap_mask. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Cast a_val for AT_HWCAP to unsigned long int. * elf/dl-support.c (_dl_aux_init): Likewise. (_dl_hwcap): Update defn. * elf/cache.c (print_entry): Pad hwcap value with 0s in diagnostic. * elf/ldconfig.c (search_dir): Likewise.
2005-03-31* sysdeps/unix/sysv/linux/x86_64/getcontext.S: Use functionallyUlrich Drepper
equivalent, but shorter instructions. * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/swapcontext.S: Likewise. * sysdeps/unix/x86_64/sysdep.S: Likewise. * sysdeps/x86_64/strchr.S: Likewise. * sysdeps/x86_64/memset.S: Likewise. * sysdeps/x86_64/strcspn.S: Likewise. * sysdeps/x86_64/strcmp.S: Likewise. * sysdeps/x86_64/elf/start.S: Likewise. * sysdeps/x86_64/strspn.S: Likewise. * sysdeps/x86_64/dl-machine.h: Likewise. * sysdeps/x86_64/bsd-_setjmp.S: Likewise. * sysdeps/x86_64/bsd-setjmp.S: Likewise. * sysdeps/x86_64/strtok.S: Likewise.
2005-03-31revertRoland McGrath
2005-03-30* elf/dl-load.c: Don't include dl-osinfo.h here.Roland McGrath
2005-03-30* sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): NewRoland McGrath
function, inline broken out of ... (DL_SYSDEP_OSCHECK): ... here. Use that. Do the discovery and set GLRO(dl_osversion) if successful, if __LINUX_KERNEL_VERSION <= 0.
2005-03-28Update.Andreas Jaeger
* sysdeps/mips/atomicity.h: Remove unused file. * sysdeps/mips/dl-machine.h (elf_machine_rel): Add TLS relocations. * sysdeps/mips/dl-tls.h: New file. * sysdeps/mips/libc-tls.c: New file. * sysdeps/mips/tls-macros.h: New file. * sysdeps/mips/bits/atomic.h: New file. * sysdeps/mips/bits/setjmp.h: Protect against multiple inclusion. * sysdeps/mips/elf/configure.in: New file. * sysdeps/mips/elf/configure: Generated. * sysdeps/mips/sys/asm.h: New file. * sysdeps/unix/sysv/linux/mips/vfork.S: New file. * sysdeps/unix/sysv/linux/mips/clone.S: Add NPTL and five-argument clone support. * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (INTERNAL_SYSCALL_NCS): New. (INTERNAL_SYSCALL): Update for non-constant support. (internal_syscall0): Likewise. (internal_syscall1): Likewise. (internal_syscall2): Likewise. (internal_syscall3): Likewise. (internal_syscall4): Likewise. (internal_syscall5): Likewise. (internal_syscall6): Likewise. (internal_syscall7): Likewise. * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (SIGEV_THREAD): Update to match the kernel. (SIGEV_CALLBACK): Likewise. (SIGEV_THREAD_ID): Likewise. 2005-03-28 Daniel Jacobowitz <dan@codesourcery.com>
2005-03-28[BZ #783]Andreas Jaeger
2005-03-28 Daniel Jacobowitz <dan@codesourcery.com> [BZ #783] * elf/tst-auditmod1.c: Add MIPS support. * sysdeps/generic/ldsodefs.h (La_mips_32_regs): New. (La_mips_32_retval): New. (La_mips_64_regs): New. (La_mips_64_retval): New. (struct audit_ifaces): Add MIPS entries. * sysdeps/mips/dl-machine.h: Check RESOLVE_MAP instead of RESOLVE. (elf_machine_runtime_link_map, ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS, ELF_MACHINE_RUNTIME_TRAMPOLINE): Move to dl-trampoline.c. (RTLD_START): Align the stack before calling _dl_init_internal. Use .ent for _dl_start_user. (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): Define. (elf_machine_rel, elf_machine_rel_relative, elf_machine_lazy_rel) (elf_machine_runtime_setup): Use "auto inline". (elf_machine_rela, elf_machine_rela_relative): Provide empty versions. (elf_machine_got_rel): Likewise. Use RESOLVE_MAP. * sysdeps/mips/dl-trampoline.c: New file. * sysdeps/mips/bits/link.h: New file. * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (internal_syscall5): Use register operands instead of non-lvalue memory operands. (internal_syscall6): Likewise. (internal_syscall7): Likewise. 2005-03-28 Daniel Jacobowitz <dan@codesourcery.com> [BZ #783] * elf/tst-auditmod1.c: Add MIPS support. * sysdeps/generic/ldsodefs.h (La_mips_32_regs): New. (La_mips_32_retval): New. (La_mips_64_regs): New. (La_mips_64_retval): New. (struct audit_ifaces): Add MIPS entries. * sysdeps/mips/dl-machine.h: Check RESOLVE_MAP instead of RESOLVE. (elf_machine_runtime_link_map, ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS, ELF_MACHINE_RUNTIME_TRAMPOLINE): Move to dl-trampoline.c. (RTLD_START): Align the stack before calling _dl_init_internal. Use .ent for _dl_start_user. (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): Define. (elf_machine_rel, elf_machine_rel_relative, elf_machine_lazy_rel) (elf_machine_runtime_setup): Use "auto inline". (elf_machine_rela, elf_machine_rela_relative): Provide empty versions. (elf_machine_got_rel): Likewise. Use RESOLVE_MAP. * sysdeps/mips/dl-trampoline.c: New file. * sysdeps/mips/bits/link.h: New file. * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (internal_syscall5): Use register operands instead of non-lvalue memory operands. (internal_syscall6): Likewise. (internal_syscall7): Likewise.
2005-03-20* posix/bits/unistd.h (pread) [__USE_FILE_OFFSET64]: Use __off64_tUlrich Drepper
instead of __off_t for last argument. * debug/Makefile (tests): Add tst-lfschk{1,2,3}. * debug/tst-lfschk1.c: New test. * debug/tst-lfschk2.c: New test. * debug/tst-lfschk3.c: New test. 2005-02-09 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/bits/termios.h (CMSPAR): Define. * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Add __USE_MISC and __USE_XOPEN guards to match linux/bits/termios.h. * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise. (CMSPAR): Define. * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
2005-03-17* nscd/aicache.c (addhstaiX): Tweak type to avoid warning.Roland McGrath
2005-03-15* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Don't includeRoland McGrath
asm/types.h.
2005-03-13* sysdeps/unix/sysv/linux/sh/bits/mman.h: Define MAP_POPULATE andRoland McGrath
MAP_NONBLOCK. * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise. Correct MAP_GROWSDOWN value.
2005-03-06* wcsmbs/wctob.c (wctob): Make buf array of unsigned char.Ulrich Drepper
* sysdeps/generic/strchrnul.c: Add cast to avoid warning. * libio/iofwide.c: Add casts to avoid warnings. * stdio-common/printf-prs.c (parse_printf_format): Introduce new variable f to avoid warnings. * sysdeps/unix/sysv/linux/x86_64/makecontext.c (__makecontext): Fix a few casts to avoid warnings. * iconv/gconv_simple.c (internal_utf8_loop): Make start unsigned to avoid warning.
2005-03-022005-02-21 Alan Modra <amodra@bigpond.net.au>Roland McGrath
* sysdeps/unix/sysv/linux/powerpc/sys/procfs.h (elf_vrreg_t): Don't use __uint128_t.
2005-02-25[BZ #758]Andreas Jaeger
2004-11-11 Richard Sandiford <rsandifo@redhat.com> [BZ #758] * sysdeps/unix/sysv/linux/mips/configure.in (asm-unistd.h): Only preprocess <asm/unistd.h> if it defines ABI-prefixed syscall names like __NR_N32_open. Just include <asm/unistd.h> otherwise. * sysdeps/unix/sysv/linux/mips/configure: Regenerate. * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: Delete * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h (SYS_ify): Use the standard __NR prefix. * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h (SYS_ify): Likewise. * sysdeps/unix/sysv/linux/mips/Makefile (syscall-%.h): Rework so that the output file is compatible with both pre-2.6 and 2.6 kernel headers. Extract separate syscall lists for each ABI.
2005-02-22* sysdeps/unix/sysv/linux/libc_fatal.c (__libc_message): UseUlrich Drepper
non-cancelable I/O functions.
2005-02-22* include/sys/socket.h: Declare __recv.Roland McGrath
* sysdeps/generic/recv.c (recv): Rename to __recv, and add weak alias. * sysdeps/mach/hurd/recv.c: Likewise. * sysdeps/unix/sysv/linux/libc_fatal.c: Include <execinfo.h> for __backtrace_* decls. * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INTERNAL_SYSCALL_ERROR_P): Evalute VAL. Parenthesize ERR. * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise. * include/signal.h: Include <string.h> for memset decl.
2005-02-222005-02-22 Roland McGrath <roland@redhat.com>Roland McGrath
* sysdeps/unix/sysv/linux/libc_fatal.c: Include <execinfo.h> for __backtrace_* decls.
2005-02-21* sysdeps/unix/sysv/linux/libc_fatal.c: Print backtrace and memoryUlrich Drepper
map if requested. * debug/chk_fail.c: Request backtrace and memory map dump. * Versions.def: Add GLIBC_2.4 for libc. * debug/fgets_chk.c: New file. * debug/fgets_u_chk.c: New file. * debug/getcwd_chk.c: New file. * debug/getwd_chk.c: New file. * debug/readlink_chk.c: New file. * debug/read_chk.c: New file. * debug/pread_chk.c: New file. * debug/pread64_chk.c: New file. * debug/recv_chk.c: New file. * debug/recvfrom_chk.c: New file. * debug/Versions: Add all new functions with version GLIBC_2.4. * debug/Makefile (routines): Add fgets_chk, fgets_u_chk, read_chk, pread_chk, pread64_chk, recv_chk, recvfrom_chk, readlink_chk, getwd_chk, and getcwd_chk. Plus appropriate CFLAGS definitions. * debug/tst-chk1.c: Add more tests. * libio/bits/stdio2.h: Add macros for fgets and fgets_unlocked. * include/stdio.h: Declare __fgets_chk and __fgets_unlocked_chk. * posix/unistd.h: Include <bits/unistd.h> for fortification. * posix/bits/unistd.h: New file. * posix/Makefile (headers): Add bits/unistd.h. * socket/sys/socket.h: Include <bits/socket2.h> for fortification. * socket/bits/socket2.h: New file. * socket/Makefile (headers): Add bits/socket2.h. * string/bits/string3.h: Extend memset macro to check for zero 3rd parameter and use __memset_zero_constant_len_parameter in that case. * sysdeps/generic/memset_chk.c: Add __memset_zero_constant_len_parameter alias and linker warning. * debug/Versions: Add __memset_zero_constant_len_parameter to libc with version GLIBC_2.4. * sysdeps/generic/bits/types.h: Don't unnecessarily use __extension__ in __STD_TYPE definition. 2005-02-21 Jakub Jelinek <jakub@redhat.com> * malloc/malloc.c (malloc_printerr): If MALLOC_CHECK_={5,7}, print the error message rather than program name. 2005-02-21 Ulrich Drepper <drepper@redhat.com>
2005-02-15[BZ #720]Roland McGrath
2005-02-14 Roland McGrath <roland@redhat.com> [BZ #720] * sysdeps/unix/sysv/linux/sys/kd.h: Don't leave _LINUX_TYPES_H defined if it wasn't originally.
2005-02-15* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove the duplicatedRoland McGrath
getpeername entry. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
2005-02-08* sysdeps/sh/dl-machine.h (elf_machine_rela): Remove code usingUlrich Drepper
RESOLVE. 2005-02-07 Ulrich Drepper <drepper@redhat.com> * elf/dl-load.c (_dl_map_object_from_fd): Makre sure registers are set correctly. * sysdeps/unix/sysv/linux/i386/sysdep.h (check_consistency): Define.
2005-02-08(check_consistency): Define.Ulrich Drepper
2005-02-07[BZ #700]Ulrich Drepper
2005-02-07 Steven Munroe <sjmunroe@us.ibm.com> [BZ #700] * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S (__novec_setcontext, __setcontext): Fix typo so CCR is restored. Load MSR as a doubleword. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S (__novec_swapcontext, __swapcontext): Likewise.
2005-01-27Update.Ulrich Drepper
2005-01-27 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_globfree): Also copy gl_offs. Patch by Sergey Tikhonov <tsv@solvo.ru>.
2005-01-26Update.Ulrich Drepper
2005-01-26 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/kernel-features.h: Found reference to MSG_NOSIGNAL being in 2.2 kernels.
2005-01-26[BZ #693]Ulrich Drepper
Update. 2005-01-26 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER_TLS_STORE): Remove unnecessary 0 imm. [BZ #693] * posix/regex_internal.h (DUMMY_CONSTRAINT): Rename to... (WORD_DELIM_CONSTRAINT): ...this. (NOT_WORD_DELIM_CONSTRAINT): Define. (re_context_type): Add INSIDE_NOTWORD and NOT_WORD_DELIM, change WORD_DELIM to use WORD_DELIM_CONSTRAINT. * posix/regcomp.c (peek_token): For \B create NOT_WORD_DELIM anchor instead of INSIDE_WORD. (parse_expression): Handle NOT_WORD_DELIM constraint. * posix/bug-regex19.c (tests): Adjust tests that relied on \B being inside word instead of not word delim. * posix/tst-rxspencer.c (mb_frob_pattern): Don't frob escaped characters. * posix/rxspencer/tests: Add some new tests.
2005-01-262005-01-23 Roland McGrath <roland@redhat.com>Roland McGrath
* sysdeps/i386/Makefile (defines): If -mno-tls-direct-seg-refs appears in $(CFLAGS), add -DNO_TLS_DIRECT_SEG_REFS. * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD] (SYSCALL_ERROR_HANDLER) [NO_TLS_DIRECT_SEG_REFS]: Load thread pointer from %gs:0 and add to that value, rather that direct %gs:OFFSET access. * sysdeps/unix/i386/sysdep.S [NO_TLS_DIRECT_SEG_REFS]: Likewise.
2005-01-24Update.Ulrich Drepper
2005-01-24 Ulrich Drepper <drepper@redhat.com> * misc/syslog.c: Moved to... * sysdeps/generic/syslog.c: ...here. [NO_SIGIPE]: Don't install SIGPIPE handler. * sysdeps/unix/sysv/linux/syslog.c: New file. * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_MSG_NOSIGNAL.
2005-01-16* sysdeps/unix/rewinddir.c: Reset filepos.Ulrich Drepper
* dirent/tst-seekdir.c: Check telldir value after calling rewinddir. 2005-01-15 Ulrich Drepper <drepper@redhat.com> * elf/tst-auditmod1.c: Reduce duplication.
2005-01-07(__libc_init_first): Don't make __libc_init_first hidden.Ulrich Drepper
2005-01-07(__futimes): Use __set_errno.Ulrich Drepper
2005-01-07[BZ #633]Roland McGrath
2005-01-06 Roland McGrath <roland@redhat.com> [BZ #633] * sysdeps/unix/sysv/linux/futimes.c (__futimes): Catch errno values indicating file-name lookup errors, and return ENOSYS or EBADF instead.
2005-01-05Define __WNOTHREAD.Ulrich Drepper
2005-01-04Clean file up. Don't define unnecessary wrappers or aliases of static ↵Ulrich Drepper
functions.
2004-12-29[BZ #626]Roland McGrath
2004-12-29 Roland McGrath <roland@redhat.com> [BZ #626] * sysdeps/unix/alarm.c (alarm): Round return value to nearest rather than always up; when nearest is zero, round up to one.
2004-12-22(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.Ulrich Drepper
2007-07-122.5-18.1Jakub Jelinek
2004-12-22Test for stack alignment.Ulrich Drepper
2004-12-20[BZ #562]Andreas Jaeger
2004-12-20 Jakub Jelinek <jakub@redhat.com>, Jim Gifford <giffordj@linkline.com> [BZ #562] * sysdeps/mips/Makefile (librt-sysdep_routines): Add. * sysdeps/unix/mips/rt-sysdep.S: New file.
2004-12-17 * sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support ↵Richard Henderson
for NPTL where the PID is stored at userlevel and needs to be reset when CLONE_THREAD is not used. nptl/ * sysdeps/unix/sysv/linux/alpha/clone.S: New file. * sysdeps/alpha/tcb-offsets.sym (TID_OFFSET): New. 2004-12-17 Richard Henderson <rth@redhat.com> * sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support for NPTL where the PID is stored at userlevel and needs to be reset when CLONE_THREAD is not used.
2004-12-17Update.Ulrich Drepper
2004-12-16 Ulrich Drepper <drepper@redhat.com> * tst-context1.c (stacks): Use bigger stack size.
2004-12-17[BZ #610]Roland McGrath
2004-09-02 Steven Munroe <sjmunroe@us.ibm.com> [BZ #610] * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S (__novec_getcontext): Fix typo in store of fp29. (__getcontext): Fix typo in store of fp29. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S (__novec_swapcontext): Fix typo in store of fp29. (__swapcontext): Fix typo in store of fp29.
2004-12-17* sysdeps/unix/sysv/linux/dl-osinfo.h (DL_SYSDEP_OSCHECK): FixRoland McGrath
vague message.
2004-12-16Update.Ulrich Drepper
2004-12-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Add support for NPTL where the PID is stored at userlevel and needs to be reset when CLONE_THREAD is not used. * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (SYSCALL_ERROR_HANDLER): If RTLD_PRIVATE_ERRNO, use rtld_errno instead of errno. * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S: Include sysdep-cancel.h instead of sysdep.h. Handle cancellation. * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerate. * sysdeps/ieee754/ldbl-128/e_expl.c: Include stdlib.h.
2004-12-16Update.Ulrich Drepper
2004-12-15 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/gethostid.c: Make bi-arch safe.
2004-12-15Update.cvs/fedora-glibc-20041215T2056Ulrich Drepper
* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Correct stack alignment. Clean up flag bit tests. * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Correct stack alignment. Clean up flag bit tests. Remove redundent SP assignment. Add TOC register save/restore around function call.
2004-12-15Correct stack alignment. Clean up flag bit tests. Remove redundent SP ↵Ulrich Drepper
assignment. Add TOC register save/restore around function call.
2004-12-15Update.Ulrich Drepper
2004-12-15 Jakub Jelinek <jakub@redhat.com> * nis/nis_domain_of_r.c (nis_domain_of_r): Use libnsl_hidden_def, not libnsl_hidden_proto. * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add support for NPTL where the PID is stored at userlevel and needs to be reset when CLONE_THREAD is not used. * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone): Save and restore r2 around call to fn.
2004-12-15.I think this code is more correct.Ulrich Drepper
2004-12-15Update.cvs/fedora-glibc-20041215T0847Ulrich Drepper
2004-12-15 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Add support for pid caching in nptl.