aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
AgeCommit message (Collapse)Author
2008-03-17* sysdeps/unix/sysv/linux/dl-sysdep.h: Use __ASSEMBLER__ instead Jakub Jelinek
of ASSEMBLER. nptl/ * sysdeps/unix/sysv/linux/ia64/dl-sysdep.h: Use __ASSEMBLER__ instead of ASSEMBLER. * sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h: Likewise. * sysdeps/unix/sysv/linux/i386/dl-sysdep.h: Likewise. 2008-03-18 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/dl-sysdep.h: Use __ASSEMBLER__ instead of ASSEMBLER.
2008-03-10[BZ #5753] Andreas Jaeger
* sysdeps/ia64/ieee754.h: Use protected namespace __BIG_ENDIAN/__LITTLE_ENDIAN. * sysdeps/ieee754/ieee754.h: Likewise. Patch by Aurelien Jarno <aurelien@aurel32.net>.
2008-03-082008-03-08 Roland McGrath <roland@frob.com>Roland McGrath
* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): Clear DF bit in thread state's eflags. Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
2008-03-08* sysdeps/unix/sysv/linux/dl-sysdep.c: Avoid unnecessary code forUlrich Drepper
.o file. * elf/Makefile (routines): Add dl-sysdep. (elide-routines.os): Likewise.
2008-03-08[BZ #5786]Ulrich Drepper
* elf/dl-sysdep.c: Undefine ROUND after use. * sysdeps/generic/ldsodefs.h [HAVE_DL_DISCOVER_OSVERSION] (struct rtld_global_ro): Add _dl_tls_get_addr_soft element. * elf/rtld.c (rtld_global_ro): Initialize _dl_discover_osversion. * sysdeps/unix/sysv/linux/dl-osinfo.h: Move _dl_discover_osversion to ... * sysdeps/unix/sysv/linux/dl-sysdep.c: ...here. * sysdeps/unix/sysv/linux/dl-sysdep.h: Declare _dl_discover_osversion if necessary. * sysdeps/unix/sysv/linux/sysconf.c: Handle _SC_ARG_MAX here.
2008-03-08* sysdeps/generic/ldsodefs.h (struct rtld_global_ro): AddUlrich Drepper
_dl_tls_get_addr_soft element. * elf/rtld.c (rtld_global_ro): Initialize _dl_tls_get_addr_soft. * elf/Versions (ld): Don't export _dl_tls_get_addr_soft. * dlfcn/dlinfo.c (dlinfo_doit): Access dl_tls_get_addr_soft through GLRO. * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise. * elf/dl-tls.c (_dl_tls_get_addr_soft): Use attribute_hidden instead of internal_function.
2008-03-08[BZ #5778]Ulrich Drepper
* sysdeps/unix/sysv/linux/pathconf.h: Declare __statfs_chown_restricted. * sysdeps/unix/sysv/linux/fpathconf.c: Call __statfs_chown_restricted for _PC_CHOWN_RESTRICTED. * sysdeps/unix/sysv/linux/pathconf.c: Likewise. Implement __statfs_chown_restricted. * sysdeps/unix/sysv/linux/bits/posix_opt.h: Change _POSIX_CHOWN_RESTRICTED value to zero. 2008-02-26 Harsha Jagasia <harsha.jagasia@amd.com>
2008-03-07* sysdeps/x86_64/rtld-memset.c: New file.Ulrich Drepper
2008-2-26 Harsha Jagasia <harsha.jagasia@amd.com> * sysdeps/x86_64/cacheinfo.c (NOT_USED_RIGHT_NOW): Remove ifdef guards. * sysdeps/x86_64/memset.S: Rewrite non-SSE code path as tuned for AMD Barcelona machine. Make default fall through branch of __x86_64_preferred_memory_instruction check as the integer code path. 2007-10-15 H.J. Lu <hongjiu.lu@intel.com> * sysdeps/x86_64/cacheinfo.c (__x86_64_preferred_memory_instruction): New variable. (init_cacheinfo): Initialize __x86_64_preferred_memory_instruction. * sysdeps/x86_64/memset.S: Rewrite. 2008-01-08 Jakub Jelinek <jakub@redhat.com> * malloc/malloc.c (public_cALLOc): For arenas other than
2008-03-05* include/stdio.h (__asprintf_chk, __dprintf_chk,cvs/fedora-glibc-20080305T0857Ulrich Drepper
__obstack_printf_chk): New prototypes. (__vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): Likewise. Add libc_hidden_proto. * libio/obprintf.c (_IO_obstack_jumps): No longer static, add attribute_hidden. * libio/bits/stdio-ldbl.h (__asprintf_chk, __dprintf_chk, __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): Add __LDBL_REDIR_DECL. * libio/bits/stdio2.h (__asprintf_chk, __dprintf_chk, __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): New prototypes. (asprintf, __asprintf, dprintf, obstack_printf, vasprintf, vdprintf, obstack_vprintf): New inlines. * debug/dprintf_chk.c: New file. * debug/vdprintf_chk.c: New file. * debug/asprintf_chk.c: New file. * debug/vasprintf_chk.c: New file. * debug/obprintf_chk.c: New file. * debug/tst-chk1.c (do_test): Add asprintf and obstack_printf tests. * debug/Versions (__asprintf_chk, __dprintf_chk, __obstack_printf_chk, __vasprintf_chk, __vdprintf_chk, __obstack_vprintf_chk): Export @@GLIBC_2.8. * debug/Makefile: Build asprintf_chk, vasprintf_chk, dprintf_chk, vdprintf_chk and obprintf_chk, set CFLAGS for them. * sysdeps/ieee754/ldbl-opt/nldbl-compat.c (__nldbl___vasprintf_chk, __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): Add libc_hidden_proto. * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__nldbl___vasprintf_chk, __nldbl___vdprintf_chk, __nldbl___obstack_vprintf_chk): New prototypes. * sysdeps/ieee754/ldbl-opt/Versions (__nldbl___asprintf_chk, __nldbl___vasprintf_chk, __nldbl___dprintf_chk, __nldbl___vdprintf_chk, __nldbl___obstack_printf_chk, __nldbl___obstack_vprintf_chk): Export @@GLIBC_2.8. * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add asprintf_chk, vasprintf_chk, dprintf_chk, vdprintf_chk, obstack_printf_chk and obstack_vprintf_chk. * sysdeps/ieee754/ldbl-opt/nldbl-obstack_vprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-dprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-obstack_printf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-asprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vdprintf_chk.c: New file. * sysdeps/ieee754/ldbl-opt/nldbl-vasprintf_chk.c: New file.
2008-02-10* sysdeps/unix/sysv/linux/sys/timerfd.h: New file.Ulrich Drepper
* sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers): Add sys/timerfd.h. * sysdeps/unix/sysv/linux/syscalls.list: Add timerfd_create, timerfd_gettime, timerfd_settime. * sysdeps/unix/sysv/linux/Versions: Add timerfd_create, timerfd_gettime, timerfd_settime for GLIBC_2.8.
2008-02-10Header for timerfd interfaces.Ulrich Drepper
2008-02-01* Makeconfig (sysd-rules-targets): New variable.Roland McGrath
* sysdeps/unix/make-syscalls.sh: Use it in the rules emitted. * sysdeps/unix/Makefile (omit-deps): Append variants for each target.
2008-01-22* sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Use short for fnstsw.Ulrich Drepper
2008-01-21[BZ #5040] * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (enum EPOLL_EVENTS): ↵Andreas Jaeger
Add EPOLLRDHUP.
2008-01-16[BZ #5628]Ulrich Drepper
* bits/shm.h: Fix comment describing shmid_ds. * sysdeps/gnu/bits/shm.h: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise. * sysdeps/unix/sysv/linux/bits/shm.h: Likewise. * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise. * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise. * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise. * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise. Patch by Hareesh Nagarajan <hareesh.nagarajan@gmail.com>.
2008-01-16* sysdeps/posix/getaddrinfo.c (default_labels): Adjust for changeUlrich Drepper
of names of in in6_addr. (default_precedence): Likewise. * sysdeps/unix/sysv/linux/cmsg_nxthdr.c: Include <stddef.h> for NULL definition.
2008-01-16[BZ #5607]Ulrich Drepper
2008-01-16 Ulrich Drepper <drepper@redhat.com> [BZ #5607] * conform/data/fcntl.h-data: Fix posix_fadvise and posix_fallocate prototypes. * conform/data/limits.h-data: Adjust limits changed in v6 and add additional suffixes. * conform/data/mqueue.h-data: Fix typo in mq_curmsgs entry. Add optional functions mq_timedreceive and mq_timedsend. * conform/data/netdb.h-data: Add more AI_* and EAI_* constants. * conform/data/pthread.h-data: Fix prototype of pthread_condattr_setclock. pthread_sigmask is not required in v6. * conform/data/semaphore.h-data: Allow time.h definitions. * conform/data/signal.h-data: Likewise. * conform/data/stdio.h-data: getw and putw are not required in v6. * conform/data/stdlib.h-data: Change setstate prototype. * conform/data/string.h-data: Fix strerror_r prototype. * conform/data/time.h-data: Fix typo in TIMER_ABSTIME definition. * conform/data/unistd.h-data: pthread_atfork not required in v6. Fix readlink prototype. * conform/data/netinet/in.h-data: Add const to in6addr_any and in6addr_loopback. * inet/netinet/in.h: Cleanup namespace. * posix/regex.h: Likewise. * resolv/netdb.h: Likewise. * sysdeps/unix/sysv/linux/bits/in.h: Likewise. * sysdeps/unix/sysv/linux/bits/socket.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
2008-01-12[BZ #5600] (struct signalfd_siginfo): Use 64-bit type for ssi_ptr to sync ↵Andreas Jaeger
with Linux kernel header.
2008-01-10* sysdeps/posix/getaddrinfo.c (rfc3484_sort): Store result ofUlrich Drepper
native interface lookup in all the relevant places.
2008-01-10* sysdeps/posix/getaddrinfo.c (sort_results): Remove service_orderUlrich Drepper
field. Use sockaddr_in6 for source_addr. (get_scope): Change type of parameter to sockaddr_in6. Adjust. (match_prefix): Likewise. (get_label): Likewise. (get_precedence): Likewise. (rfc3484_sort): Change to use indirect access to results array. Adjust to use of sockaddr_in6. Replace service_order test with simple index comparison. (getaddrinfo): Define order array. Initialize it. Don't initialize service_order field. Adjust qsort_t calls. Access sorted result array indirectly through order array. * posix/tst-rfc3484.c: Adjust for change of rfc3484_sort. * posix/tst-rfc3484-2.c: Likewise. * posix/tst-rfc3484-3.c: Likewise.
2008-01-09* sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext): AvoidUlrich Drepper
clobbering memory at or above uc_stack.ss_sp + uc_stack.ss_size. * stdlib/Makefile: Add rules to build and run tst-makecontext2. * stdlib/tst-makecontext2.c: New test.
2008-01-03* sysdeps/unix/sysv/linux/check_pf.c (make_request): FixUlrich Drepper
recognition of interface family.
2007-12-23(intel_02_known): New entry 0x3f.Ulrich Drepper
2007-12-15* sysdeps/unix/sysv/linux/x86_64/init-first.c (__vdso_gettimeofday):Ulrich Drepper
Return long. (__vdso_clock_gettime): Likewise.
2007-12-14* sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL_ERROR_P):Ulrich Drepper
First cast argument to long * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: Functions return long.
2007-12-12[BZ #5477]Ulrich Drepper
2007-12-12 Jakub Jelinek <jakub@redhat.com> * sysdeps/i386/i486/bits/string.h (memmove): Define as macro. (memmove): Rename to __memmove_g, with __asm__ ("memmove"). * sysdeps/s390/bits/string.h (__strlen_g, __strcpy_g, __strncpy_g, __strcat_g, __strncat_g): Add __asm__. 2007-12-12 Ulrich Drepper <drepper@redhat.com> [BZ #5477] * io/fchmodat.c: Fix typo in stub_warning use. Patch by Petr Salinger.
2007-12-10* sysdeps/unix/sysv/linux/adjtime.c: Use ADJ_OFFSET_SS_READ ifUlrich Drepper
possible. * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ADJ_OFFSET_SS_READ): Define for 2.6.24. * sysdeps/unix/sysv/linux/sys/timex.h (ADJ_OFFSET_SS_READ): Define.
2007-12-07[BZ #5441, BZ #5452, BZ #5454]Ulrich Drepper
2007-12-07 Ulrich Drepper <drepper@redhat.com> [BZ #5441] * stdio-common/vfscanf.c (_IO_vfwscanf): Don't free ptrs_to_free structure, it's allocated with alloca. * stdio-common/Makefile (tests): Add bug21. * stdio-common/bug21.c: New file. 2007-12-06 Aurelien Jarno <aurelien@aurel32.net> [BZ #5452] * sysdeps/unix/sysv/linux/bits/sched.h: Use __extension__ keyword for gcc's braced-groups. 2007-12-07 Ulrich Drepper <drepper@redhat.com> [BZ #5454] * inet/ether_line.c: Strip hostname of whitespaces. * inet/Makefile (tests): Add tst-ether_line. * inet/tst-ether_line.c: New file.
2007-12-03[BZ #5439]Ulrich Drepper
* sysdeps/unix/sysv/linux/sys/signalfd.h: Fix use of __nonnull.
2007-12-03[BZ #5435]Ulrich Drepper
* sysdeps/unix/sysv/linux/i386/makecontext.S: Align stack.
2007-11-24* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Add openUlrich Drepper
and creat system calls.
2007-11-24* sysdeps/unix/sysv/linux/check_native.c: Include <asm/types.h>.Ulrich Drepper
* nscd/mem.c (gc): Don't allocate arrays on the stack if they can Return zero in case the thread library is not NPTL.
2007-11-23* sysdeps/s390/bits/string.h (strlen, strcpy, strncpy, strcat,Ulrich Drepper
strncat): Define as macros to avoid compile errors.
2007-11-23* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Add open andUlrich Drepper
creat entries.
2007-11-23* sysdeps/unix/sysv/linux/Makefile [subdir=inet] (sysdep_headers):Ulrich Drepper
Add netiucv/iucv.h. * sysdeps/unix/sysv/linux/netiucv/iucv.h: New file. * sysdeps/unix/sysv/linux/opensock.c (__opensock): Add AF_IUCV protocol. * sysdeps/unix/sysv/linux/sa_len.c (__libc_sa_len): Likewise. * sysdeps/unix/sysv/linux/s390/opensock.c: New file. * sysdeps/unix/sysv/linux/s390/sa_len.c: New file.
2007-11-23[BZ #5382]Ulrich Drepper
* nscd/nscd.h (NSCD_THREAD_STACKSIZE): Define. * nscd/connections.c (start_threads): Use NSCD_THREAD_STACKSIZE. * nscd/mem.c (gc): Don't allocate arrays on stack if it can overflow it. * sysdeps/unix/sysv/linux/nscd_setup_thread.c (setup_thread): Return zero in case thread library is not NPTL.
2007-11-20* sysdeps/posix/getaddrinfo.c (defaults_scopes, scopes): New variables.Ulrich Drepper
(get_scope): For IPv4 scope, use scopes table. (fini): Free scopes table if necessary. (free_scopelist): New function. (scopecmp): New function. (gaiconf_init): Also handle scopev4 entries. * posix/tst-rfc3484.c (do_test): Initialize scopes. * posix/tst-rfc3484-2.c (do_test): Likewise. * posix/gai.conf: Document scopev4 defaults. * posix/Makefile (tests): Add tst-rfc3484-3. * posix/tst-rfc3484-3.c: New file.
2007-11-19* sysdeps/posix/getaddrinfo.c (default_labels): Describe entry forUlrich Drepper
Teredo tunnels.
2007-11-182007-11-18 Roland McGrath <roland@frob.com>Roland McGrath
* sysdeps/mach/hurd/bits/fcntl.h (O_CLOEXEC): Fix value.
2007-11-17* sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):Ulrich Drepper
Add sys/signalfd.h and sys/eventfd.h.
2007-11-15Fix size of union.Andreas Jaeger
2007-11-15* sysdeps/unix/sysv/linux/check_native.c (__check_native): SimplifyUlrich Drepper
significantly. The device type is also part of the ifinfomsg data.
2007-11-14* include/ifaddrs.h: Remove in6ai_temporary.Ulrich Drepper
(struct in6addrinfo): Add index element. Declare __check_native. * inet/Makefile (aux): Add check_native. * sysdeps/unix/sysv/linux/check_native.c: New file. * sysdeps/unix/sysv/linux/check_pf.c: No need to recognize IFA_F_TEMPORARY. Pass back ifa_index. * sysdeps/posix/getaddrinfo.c: Remove netlink compatibility code. (rfc3484_sort): Add new parameter. Implement rule 7 correctly: call __check_native if necessary. (getaddrinfo): Fill in index field. Use qsort_r instead of qsort to sort addresses. Pass information about the results. * posix/tst-rfc3484.c: Adjust for addition of index field and change of rfc3484_sort interface. * posix/tst-rfc3484-2.c: Likewise.
2007-11-13Hurd-specific kernel-features.h.Ulrich Drepper
2007-11-132007-09-13 H.J. Lu <hongjiu.lu@intel.com>Roland McGrath
* sysdeps/i386/i586/memcpy_chk.S: New file. * sysdeps/i386/i586/mempcpy_chk.S: Likewise. * sysdeps/i386/i586/memset_chk.S: Likewise.
2007-11-12* include/ifaddrs.c (struct in6addrinfo): Add prefixlen field.Ulrich Drepper
* sysdeps/unix/sysv/linux/check_pf.c (make_request): Always return list of interfaces. Also store prefix length. * sysdeps/posix/getaddrinfo.c (sort_result): Add prefixlen element. (rfc3484_sort): In rule 9, for IPv4 addresses count only matching prefix if source and destination address are in the same subnet. (getaddrinfo): Always call __check_pf. Fill in prefixlen field. Always look for matching record in in6ai list. Correct source_addr_len value for IPv6->IPv4 converted records.
2007-11-10* sysdeps/pthread/aio_misc.c (handle_fildes_io): Avoid unnecessaryUlrich Drepper
complications for 64-bit platforms.
2007-11-10* sysdeps/unix/sysv/linux/open64.c: Move __open64_2 implementation to..Ulrich Drepper
* sysdeps/unix/sysv/linux/open64_2.c: ...here. New file. * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): Add open64_2. * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add open and creat entries. * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise. * sysdeps/wordsize-64/alphasort.c: New file. * sysdeps/wordsize-64/alphasort64.c: New file. * sysdeps/wordsize-64/fseeko.c: New file. * sysdeps/wordsize-64/fseeko64.c: New file. * sysdeps/wordsize-64/ftello.c: New file. * sysdeps/wordsize-64/ftello64.c: New file. * sysdeps/wordsize-64/ftw.c: New file. * sysdeps/wordsize-64/ftw64.c: New file. * sysdeps/wordsize-64/iofgetpos.c: New file. * sysdeps/wordsize-64/iofgetpos64.c: New file. * sysdeps/wordsize-64/iofopen.c: New file. * sysdeps/wordsize-64/iofopen64.c: New file. * sysdeps/wordsize-64/iofsetpos.c: New file. * sysdeps/wordsize-64/iofsetpos64.c: New file. * sysdeps/wordsize-64/lockf.c: New file. * sysdeps/wordsize-64/lockf64.c: New file. * sysdeps/wordsize-64/mkostemp.c: New file. * sysdeps/wordsize-64/mkostemp64.c: New file. * sysdeps/wordsize-64/mkstemp.c: New file. * sysdeps/wordsize-64/mkstemp64.c: New file. * sysdeps/wordsize-64/scandir.c: New file. * sysdeps/wordsize-64/scandir64.c: New file. * sysdeps/wordsize-64/tmpfile.c: New file. * sysdeps/wordsize-64/tmpfile64.c: New file. * sysdeps/wordsize-64/versionsort.c: New file. * sysdeps/wordsize-64/versionsort64.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/aio_read.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/aio_read64.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/aio_write.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/aio_write64.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/creat64.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/getdirentries.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/getdirentries64.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/lio_listio.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/lio_listio64.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/open64.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/openat.c: New file. * sysdeps/unix/sysv/linux/wordsize-64/openat64.c: New file. * crypt/sha256-crypt.c: Fix a comment. * crypt/sha512-crypt.c: Likewise.
2007-11-08* sysdeps/x86_64/memset.S: Add sfence after movnti.Ulrich Drepper
2007-11-06* nscd/aicache.c (addhstaiX): Check herrno after IPv4 lookup onlyUlrich Drepper
when the lookup call failed. * nscd/nscd.h (struct database_dyn): Rename prunelock to prune_lock. Add prune_cond and wakeup_time. (CACHE_PRUNE_INTERNAL): Define. Update declarations of prune_cache and setup_thread. * nscd/connections.c (dbs): Update initializers. (CACHE_PRUNE_INTERNAL): Moved to nscd.h. (nscd_init): Default number of threads is now 4. (invalidate_cache): Take lock before calling prune_cache. (handle_request): If SELinux forbids the request, say so. (readylist_cond): Use static initializer. (nscd_run_prune): New function. Used only by pruning threads. (nscd_run_worder): Renamed from nscd_run. Remove support for pruning here. (fd_ready): Update nscd_run reference. (start_threads): No need to initialize readylist_cond. Start pruning threads separately. * nscd/nscd_setup_thread.c: Change return value type to int and always return 0. * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Change return value type to int and return nonzero value if we can use the TID address hack. * nscd/cache.c (cache_add): If next wakeup time of cleanup thread for the database is later than the new entry's timeout, update the wakeup time and wake the cleanup thread. (prune_cache): Return seconds the next entry in the database is still valid. Remove locking for pruning here. * nscd/nscd.conf: Document default number of threads.