glibc/linuxthreads/ChangeLog

3759 lines
127 KiB
Plaintext
Raw Normal View History

2002-07-02 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/pspinlock.c: Don't include <sgidefs.h>. Always
use ll/sc.
* sysdeps/mips/pt-machine.h: Likewise.
2002-07-14 Ulrich Drepper <drepper@redhat.com>
* manager.c (pthread_handle_create): Initialize self-reference in
descriptor.
Update. * malloc/hooks.c (realloc_check): If mremap succeeds actually use the result. * sysdeps/i386/i486/bits/string.h: Add early clobber for "a" output parameter. Reported by Denis Zaitsev <zzz@cd-club.ru>. * Versions.def (libthread_db): Add GLIBC_2.3. 2002-07-09 Jakub Jelinek <jakub@redhat.com> * libio/freopen.c (freopen): Reset jump tables, use mmap stdio for the new stream if possible. * libio/freopen64.c (freopen64): Likewise. * libio/Makefile (tests): Add tst-freopen. * libio/tst-freopen.c: New file. 2002-07-03 Jakub Jelinek <jakub@redhat.com> * libio/stdio.h (obstack_printf): Add format attribute. (obstack_vprintf): Likewise. 2002-07-04 Jakub Jelinek <jakub@redhat.com> * posix/regex_internal.h (re_token_t): Shrink the structure to 8 resp. 16 bytes on 32-bit resp. 64-bit platforms. (re_charset_t, re_string_t): Reorder structure members for 64-bit architectures. 2002-07-04 Jakub Jelinek <jakub@redhat.com> * posix/regcomp.c (re_compile_internal): Move clearing of dfa... (init_dfa): ...here. 2002-07-05 Isamu Hasegawa <isamu@yamato.ibm.com> * posix/regcomp.c (parse_sub_exp): Add nodes OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP at both ends of sub expressions instead of SUBEXP nodes in parse trees. (calc_first): Fix the Definition of `firsts' of OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP, and remove the definition of SUBEXP. (calc_epsdest): Treat OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP as the nodes which can epsilon transit. * posix/regex_internal.h: Add OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP to IS_EPSILON_NODE macro. * posix/regexec.c (update_regs): New function to update registers by refering OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP nodes. (proceed_next_node): Use the entities of the nodes to determine whether the node can transit to. (set_regs): Use update_regs function to update registers. 2002-07-03 Jakub Jelinek <jakub@redhat.com> * posix/bug-regex4.c (main): Remove duplicate setlocale. * posix/bug-regex6.c: New file. * posix/Makefile (tests): Add bug-regex6. (bug-regex6-ENV): Set LOCPATH. 2002-07-10 Ulrich Drepper <drepper@redhat.com>
2002-07-11 02:59:49 +00:00
2002-07-01 Jakub Jelinek <jakub@redhat.com>
* Examples/ex9.c (main): Remove unused th variable.
2002-07-10 Ulrich Drepper <drepper@redhat.com>
* wrapsyscall.c: Add __nanosleep alias.
* Versions (GLIBC_2.2.6): Add __nanosleep.
* bug-sleep.c: New file.
* Makefile (tests): Add bug-sleep.
2002-06-19 Steven Munroe <sjmunroe@vnet.ibm.com>
* Examples/ex9.c (main): Use list of children and join them.
(thread): Do not call exit.
2002-06-20 Ulrich Drepper <drepper@redhat.com>
* spinlock.c (wait_node_alloc): We cannot use compare-and-exchange.
Unconditionally use the code using spinlock. Use __pthread_release
to free a spinlock.
(wait_node_free): Likewise.
(__pthread_acquire, __pthread_release): Unconditionally define.
2002-06-07 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/pt-machine.h (MEMORY_BARRIER): Fix typo.
Update. 2002-05-21 Isamu Hasegawa <isamu@yamato.ibm.com> * posix/regex.c: Define `inline' as a macro into nothing for the compilers which lack the keyword. * posix/regex.h: (RE_SYNTAX_GNU_AWK): Remove RE_CONTEXT_INVALID_OPS for the compatibility of gawk. * posix/regcomp.c: Add fake implementation of isblank() for the environments which lack the function. Don't use free_charset() in case of non-i18n envs. (build_range_exp): Don't use i18n related code in case of non-i18n envs. (build_collating_symbol): Likewise. (build_equiv_class): Likewise. (build_charclass): Likewise. (re_compile_fastmap_iter): Likewise. (parse_bracket_exp): Likewise. (build_word_op): Likewise. (regfree): Don't use free_charset() in case of non-i18n envs. * posix/regex_internal.h: Remove COMPLEX_BRACKET from re_token_type_t in case of non-i18n envs. Don't define re_charset_t in case of non-i18n envs. Change the type of wcs of re_string_t from wchar_t to wint_t, since we store also WEOF. * posix/regex_internal.c: (re_string_realloc_buffers): Change the type of wcs of re_string_t from wchar_t to wint_t. (re_string_reconstruct): Likewise. (create_ci_newstate): Don't use i18n related code in case of non-i18n envs. (create_cd_newstate): Likewise. 2002-05-24 Ulrich Drepper <drepper@redhat.com> * iconv/loop.c: Fix typo. 2002-05-23 Jakub Jelinek <jakub@redhat.com> * inet/ether_line.c (ether_line): Fix a typo causing only lower 4 bits of each ethernet address byte being assigned. Don't modify what line points to. * inet/tst-ether_aton.c (main): Add ether_line tests. 2002-05-23 Marcus Brinkmann <marcus@gnu.org> * manual/filesys.texi: Don't make readlink example leak memory when readlink fails.
2002-05-24 08:49:00 +00:00
2002-05-24 Ulrich Drepper <drepper@redhat.com>
* sysdeps/ia64/pt-machine.h (MEMORY_BARRIER): Use __sync_synchronize.
2002-05-21 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/pthread.h (pthread_create): Rename first
parameter.
(pthread_cancel): Likewise.
* internals.h (__pthread_create_2_1): Likewise.
* sysdeps/unix/sysv/linux/bits/sigthread.h (pthread_kill): Likewise.
2002-05-20 Ulrich Drepper <drepper@redhat.com>
* sysdeps/alpha/pt-machine.c (THREAD_SELF): Remove clobber.
Patch by Glen Nakamura <gen@flex.com>.
2002-05-03 Ulrich Drepper <drepper@redhat.com>
* signals.c: Move sighandler functions to...
* sighandler.c: ...here. New file.
* signals.c: Move signal handler related type definitions to...
* internals.h: ...here. Add prototypes for signal handlers.
* Makefile (libpthread-routines): Add sighandler.
(CFLAGS-sighandler.c): Add $(exceptions).
2002-04-30 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/Makefile: New file.
2002-04-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/timer_getoverr.c: Return real overrun.
* sysdeps/pthread/posix-timer.h (struct timer_node): Add overrun_count.
* sysdeps/pthread/timer_routines.c (thread_func): Schedule next timeout
based on previous one and not on current time. Count overruns.
Patch by Eric F. Sorton <eric@cctcorp.com>.
* sysdeps/unix/sysv/linux/bits/local_lim.h: Add DELAYTIMER_MAX.
2002-04-08 kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/pt-machine.h: Define _PT_MACHINE_H
if it isn't defined yet.
(FLOATING_STACKS, ARCH_STACK_MAX_SIZE): Defined.
(THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC):
Likewise.
* sysdeps/sh/tls.h: New file.
2002-04-08 Jakub Jelinek <jakub@redhat.com>
* manager.c (__pthread_manager_event): Use self instead of arg
for INIT_THREAD_SELF.
* sysdeps/i386/useldt.h (INIT_THREAD_SELF): Use sizeof (struct
_pthread_descr_struct) instead of sizeof (*descr).
2002-04-05 Ulrich Drepper <drepper@redhat.com>
* sysdeps/ia64/pt-machine.h: Protect against multiple inclusion.
* sysdeps/alpha/pt-machine.h: Likewise.
* sysdeps/arm/pt-machine.h: Likewise.
* sysdeps/cris/pt-machine.h: Likewise.
* sysdeps/hppa/pt-machine.h: Likewise.
* sysdeps/m68k/pt-machine.h: Likewise.
* sysdeps/mips/pt-machine.h: Likewise.
* sysdeps/powerpc/pt-machine.h: Likewise.
* sysdeps/s390/s390-32/pt-machine.h: Likewise.
* sysdeps/s390/s390-64/pt-machine.h: Likewise.
* sysdeps/sh/pt-machine.h: Likewise.
* sysdeps/sparc/sparc32/pt-machine.h: Likewise.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
* sysdeps/x86_64/pt-machine.h: Likewise.
Update. 2002-03-23 Jakub Jelinek <jakub@redhat.com> * sysdeps/generic/brk.c (__curbrk): Declare. * sysdeps/generic/dl-brk.c: Add attribute_hidden to __curbrk. * sysdeps/generic/dl-sbrk.c: Likewise. * sysdeps/unix/arm/dl-brk.S: New file. * sysdeps/unix/bsd/hp/m68k/dl-brk.S: New file. * sysdeps/unix/bsd/osf/alpha/dl-brk.S: New file. * sysdeps/unix/bsd/sun/m68k/dl-brk.S: New file. * sysdeps/unix/bsd/vax/dl-brk.S: New file. * sysdeps/unix/i386/dl-brk.S: New file. * sysdeps/unix/mips/dl-brk.S: New file. * sysdeps/unix/sparc/dl-brk.S: New file. * sysdeps/unix/sysv/linux/alpha/dl-brk.S: New file. * sysdeps/unix/sysv/linux/ia64/dl-brk.S: New file. * sysdeps/unix/sysv/linux/powerpc/dl-brk.S: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/dl-brk.S: New file. * sysdeps/unix/sysv/linux/i386/dl-brk.c: Remove. * sysdeps/unix/sysv/linux/i386/dl-sbrk.c: Remove. 2002-04-03 Andreas Schwab <schwab@suse.de> * Makefile (headers): Add gnu/lib-names.h here instead of install-others. ($(inst_includedir)/gnu/lib-names.h): Remove explicit installation rule. (install-headers): Add dependency on install-headers-nosubdir. * stdio-common/Makefile (headers): Add bits/stdio_lim.h here instead of install-others. ($(inst_includedir)/bits/stdio_lim.h): Remove explicit installation rule. 2002-04-05 Ulrich Drepper <drepper@redhat.com> * manual/users.tex (Enable/Disable Setuid): Fix typo in example. Reported by Sam Roberts <sroberts@uniserve.com>. 2002-04-03 Jakub Jelinek <jakub@redhat.com> * elf/do-rel.h (elf_dynamic_do_rel): Skip relative relocs if l_addr == 0 and ELF_MACHINE_REL_RELATIVE. * sysdeps/alpha/dl-machine.h (ELF_MACHINE_REL_RELATIVE): Define. * sysdeps/ia64/dl-machine.h (ELF_MACHINE_REL_RELATIVE): Define. 2002-04-03 David Mosberger <davidm@hpl.hp.com> * sysdeps/ia64/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind info. (RTLD_START): Ditto. (__ia64_init_bootstrap_fdesc_table): Insert stop bit to avoid RAW dependency violation.
2002-04-06 01:45:15 +00:00
2002-04-05 Jakub Jelinek <jakub@redhat.com>
* man/pthread_mutexattr_init.man (pthread_mutexattr_settype): Document
instead of pthread_mutexattr_setkind_np.
(pthread_mutexattr_gettype): Similarly.
* man/pthread_mutexattr_setkind_np.man: New.
* man/Makefile (SOURCES): Add pthread_mutexattr_setkind_np.man.
2002-04-02 Ulrich Drepper <drepper@redhat.com>
* sysdeps/ia64/pt-machine.h (MEMORY_BARRIER): Define.
2002-03-22 Jakub Jelinek <jakub@redhat.com>
* sysdeps/mips/pt-machine.h (MEMORY_BARRIER): Remove.
2002-03-22 Ulrich Drepper <drepper@redhat.com>
* internals.h (MEMORY_BARRIER): Define as asm with memory as clobber.
* sysdeps/i386/pt-machine.h: Add testandset and __compare_and_swap prototpyes. * sysdeps/alpha/pt-machine.h: Likewise. * sysdeps/arm/pt-machine.h: Likewise. * sysdeps/cris/pt-machine.h: Likewise. * sysdeps/hppa/pt-machine.h: Likewise. * sysdeps/i386/i686/pt-machine.h: Likewise. * sysdeps/ia64/pt-machine.h: Likewise. * sysdeps/m68k/pt-machine.h: Likewise. * sysdeps/mips/pt-machine.h: Likewise. * sysdeps/powerpc/pt-machine.h: Likewise. * sysdeps/s390/s390-32/pt-machine.h: Likewise. * sysdeps/s390/s390-64/pt-machine.h: Likewise. * sysdeps/sh/pt-machine.h: Likewise. * sysdeps/sparc/sparc32/pt-machine.h: Likewise. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. * sysdeps/x86_64/pt-machine.h: Likewise. * internals.h: Move testandset and __compare_and_swap prototypes to pt-machine.h. 2002-03-17 Andreas Jaeger <aj@suse.de> * sysdeps/i386/pt-machine.h: Add testandset and __compare_and_swap prototpyes. * sysdeps/alpha/pt-machine.h: Likewise. * sysdeps/arm/pt-machine.h: Likewise. * sysdeps/cris/pt-machine.h: Likewise. * sysdeps/hppa/pt-machine.h: Likewise. * sysdeps/i386/i686/pt-machine.h: Likewise. * sysdeps/ia64/pt-machine.h: Likewise. * sysdeps/m68k/pt-machine.h: Likewise. * sysdeps/mips/pt-machine.h: Likewise. * sysdeps/powerpc/pt-machine.h: Likewise. * sysdeps/s390/s390-32/pt-machine.h: Likewise. * sysdeps/s390/s390-64/pt-machine.h: Likewise. * sysdeps/sh/pt-machine.h: Likewise. * sysdeps/sparc/sparc32/pt-machine.h: Likewise. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. * sysdeps/x86_64/pt-machine.h: Likewise. * internals.h: Move testandset and __compare_and_swap prototypes to pt-machine.h.
2002-03-17 12:10:08 +00:00
2002-03-17 Andreas Jaeger <aj@suse.de>
* sysdeps/i386/pt-machine.h: Add testandset and __compare_and_swap
prototpyes.
* sysdeps/alpha/pt-machine.h: Likewise.
* sysdeps/arm/pt-machine.h: Likewise.
* sysdeps/cris/pt-machine.h: Likewise.
* sysdeps/hppa/pt-machine.h: Likewise.
* sysdeps/i386/i686/pt-machine.h: Likewise.
* sysdeps/ia64/pt-machine.h: Likewise.
* sysdeps/m68k/pt-machine.h: Likewise.
* sysdeps/mips/pt-machine.h: Likewise.
* sysdeps/powerpc/pt-machine.h: Likewise.
* sysdeps/s390/s390-32/pt-machine.h: Likewise.
* sysdeps/s390/s390-64/pt-machine.h: Likewise.
* sysdeps/sh/pt-machine.h: Likewise.
* sysdeps/sparc/sparc32/pt-machine.h: Likewise.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
* sysdeps/x86_64/pt-machine.h: Likewise.
* internals.h: Move testandset and __compare_and_swap prototypes
to pt-machine.h.
2002-03-03 Andreas Jaeger <aj@suse.de>
* errno.c: Include resolv.h to avoid warning.
2002-02-27 Ulrich Drepper <drepper@redhat.com>
* pthread.c [USE_TLS] (thread_self_stack): Correct check for upper
stack limit.
2002-02-23 Ulrich Drepper <drepper@redhat.com>
* attr.c (pthread_getattr_np): Don't take thread descriptor size
into account if USE_TLS.
* manager.c (pthread_handle_create): Free TLS data structures if call
failed. Pass correct stack to clone if USE_TLS.
* sysdeps/i386/pt-machine.h: Handle multiple inclusion.
* sysdeps/i386/i686/pt-machine.h: Likewise.
* sysdeps/i386/tls.h: Unconditionally include <pt-machine.h>.
* descr.h (struct _pthread_descr_struct): Update p_header for TLS.
Add p_stackaddr element #if USE_TLS.
* internals.c: Include <tls.h>.
* manager.c: Integrate creating and handling of thread descriptor
for TLS.
* pthread.c: Likewise.
* sysdeps/i386/tls.h (tcbhead_t): Add self pointer.
Include <linuxthreads/descr.h> only if TLS is really used.
(GET_DTV): New macro.
(TLS_INIT_TP): Initialize self pointer.
2002-02-17 Andreas Schwab <schwab@suse.de>
* signals.c (sigwait): Check for old sighandler being SIG_ERR,
not NULL.
Update. 2002-02-12 Ulrich Drepper <drepper@redhat.com> * sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from TLS_DTV_UNALLOCATE. (oom): New function. (_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list. (_dl_determine_tlsoffset): Likewise. (_dl_allocate_tls): Likewise. (__TLS_GET_ADDR): Define if not already defined. (_dl_tls_symaddr): New function. (allocate_and_init): New function. (__tls_get_addr): Actually implement handling of generation counter and deferred allocation. * sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list, add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and _dl_tls_generation. Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS. Declare _dl_tls_symaddr. * sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless SHARED. * include/link.h (struct link_map): Remove l_tls_nextimage and l_tls_previmage. * elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr instead of DL_SYMBOL_ADDRESS for STT_TLS symbols. (_dl_vsym): Likewise. * elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new layout. (dl_main): Allow PT_TLS be present for empty segment. Remove nextimage list handling. Instead add all modules using TLS to dl_tls_dtv_slotinfo_list. * elf/dl-open.c (dl_open_worker): After successfully loading all objects add those with TLS to the dl_tls_dtv_slotinfo_list list. * elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an empty segment don't do anything. Remove handling of initimage list. * elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign. (GLIBC_PRIVATE): Add _dl_tls_symaddr. * elf/dl-minimal.c: Define __libc_memalign. * elf/dl-support.c: Remove _dl_initimage_list. Add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and _dl_tls_generation. * include/stdlib.h: Declare __libc_memalign. * elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5. * elf/tst-tls4.c: New file. * elf/tst-tls5.c: New file. * elf/tst-tlsmod2.c: New file. * elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx. * elf/tst-tlsmod1.c: Don't define variables unles USE_TLS. * elf/tst-tls1.c: Use test-skeleton.c. * elf/tst-tls2.c: Likewise. * elf/tst-tls3.c: Likewise. * elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0. * sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
2002-02-13 08:03:56 +00:00
2002-02-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/tls.c (INSTALL_NEW_DTV): Define.
(INSTALL_DTV): Adjust for being passed pointer to element with length.
2002-02-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/tls.h (TLS_INIT_TP): Also initialize %gs.
Update. 2002-02-12 Ulrich Drepper <drepper@redhat.com> * sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from TLS_DTV_UNALLOCATE. (oom): New function. (_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list. (_dl_determine_tlsoffset): Likewise. (_dl_allocate_tls): Likewise. (__TLS_GET_ADDR): Define if not already defined. (_dl_tls_symaddr): New function. (allocate_and_init): New function. (__tls_get_addr): Actually implement handling of generation counter and deferred allocation. * sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list, add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and _dl_tls_generation. Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS. Declare _dl_tls_symaddr. * sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless SHARED. * include/link.h (struct link_map): Remove l_tls_nextimage and l_tls_previmage. * elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr instead of DL_SYMBOL_ADDRESS for STT_TLS symbols. (_dl_vsym): Likewise. * elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new layout. (dl_main): Allow PT_TLS be present for empty segment. Remove nextimage list handling. Instead add all modules using TLS to dl_tls_dtv_slotinfo_list. * elf/dl-open.c (dl_open_worker): After successfully loading all objects add those with TLS to the dl_tls_dtv_slotinfo_list list. * elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an empty segment don't do anything. Remove handling of initimage list. * elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign. (GLIBC_PRIVATE): Add _dl_tls_symaddr. * elf/dl-minimal.c: Define __libc_memalign. * elf/dl-support.c: Remove _dl_initimage_list. Add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and _dl_tls_generation. * include/stdlib.h: Declare __libc_memalign. * elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5. * elf/tst-tls4.c: New file. * elf/tst-tls5.c: New file. * elf/tst-tlsmod2.c: New file. * elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx. * elf/tst-tlsmod1.c: Don't define variables unles USE_TLS. * elf/tst-tls1.c: Use test-skeleton.c. * elf/tst-tls2.c: Likewise. * elf/tst-tls3.c: Likewise. * elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0. * sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
2002-02-13 08:03:56 +00:00
2002-02-08 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/elf/pt-initfini.c: Use \n\ for multiline string.
2002-02-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/tls.h: TLS cannot be supported with FLOATING_STACKS
after all.
2002-02-07 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Silence the
gcc warning.
(__pthread_spin_lock): Remove ".set noreorder".
* sysdeps/mips/pt-machine.h (__compare_and_swap): Liekwise.
2002-02-05 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Not use
branch likely.
* sysdeps/mips/pt-machine.h (testandset): Likewise.
(__compare_and_swap): Likewise.
2002-02-07 Ulrich Drepper <drepper@redhat.com>
* internals.h: Move declarations/definitions of
__pthread_initial_thread_bos, __pthread_initial_thread,
__pthread_manager_thread_bos, __pthread_manager_thread_tos,
__pthread_manager_thread, __pthread_nonstandard_stacks, STACK_SIZE,
CURRENT_STACK_FRAME, __pthread_find_self, and thread_self...
* descr.h: ...here.
* sysdeps/i386/tls.h: Add TLS definitions also for !FLOATING_STACKS.
Define THREAD_GETMEM accordingly.
2002-02-06 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/tls.h: Include <stddef.h> for size_t.
* sysdeps/i386/tls.h: Define THREAD_DTV.
2002-02-04 Ulrich Drepper <drepper@redhat.com>
* internals.h: Move thread descriptor definition...
* descr.h.: ...here. New file.
* sysdeps/i386/tls.h: New file.
2002-02-01 H.J. Lu <hjl@gnu.org>
* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Use a
different register in the delayed slot. Use branch likely.
* sysdeps/mips/pt-machine.h (testandset): Call _test_and_set.
(__compare_and_swap): Return 0 only when failed to compare. Use
branch likely.
Update. 2002-02-01 Jakub Jelinek <jakub@redhat.com> * Versions.def (libc): Add GLIBC_PRIVATE. (libdb, libnss_db, libdb1): Remove. (libnss_compat, libnss_dns, libnss_files, libnss_hesiod, libnss_nis, libnss_nisplus): Move all symbols to GLIBC_PRIVATE. (libpthread): Add GLIBC_PRIVATE. (libresolv): Likewise, remove GLIBC_2.1. (ld): Add GLIBC_PRIVATE, remove GLIBC_2.1.1, GLIBC_2.2, GLIBC_2.2.1, GLIBC_2.2.3, GLIBC_2.3. * catgets/Versions (__open_catalog): Move to GLIBC_PRIVATE. * elf/Versions (_dl_open, _dl_close, _dl_addr, _dl_init_first, _dl_sym, _dl_vsym): Likewise. (__libc_enable_secure, __libc_stack_end, _dl_argv, _dl_catch_error, _dl_check_all_versions, _dl_check_map_versions, _dl_debug_initialize, _dl_debug_printf, _dl_debug_state, _dl_dst_count, _dl_dst_substitute, _dl_init, _dl_lookup_symbol, _dl_lookup_symbol_skip, _dl_lookup_versioned_symbol, _dl_lookup_versioned_symbol_skip, _dl_map_object, _dl_map_object_deps, _dl_out_of_memory, _dl_relocate_object, _dl_signal_error, _dl_start_profile, _dl_starting_up, _dl_sysdep_start, _dl_unload_cache, _rtld_global): Likewise. (_dl_object_relocation_scope): Remove. * hesiod/Versions: Move all symbols to GLIBC_PRIVATE. * iconv/Versions (__gconv_alias_db, __gconv_modules_db, __gconv_cache): Move to GLIBC_PRIVATE. * inet/Versions (__internal_endnetgrent, __internal_getnetgrent_r, __internal_setnetgrent): Likewise. * io/Versions (__libc_open, __libc_close, __libc_read, __libc_write, __libc_lseek, __libc_fcntl, __libc_open64, __libc_lseek64): Likewise. * locale/Versions (__collate_element_hash, __collate_element_strings, __collate_symbol_classes, __collate_symbol_hash, __collate_symbol_strings, _nl_current_LC_COLLATE, _nl_current_LC_CTYPE): Likewise. * misc/Versions (__libc_fsync, __libc_msync): Likewise. * nis/Versions (libnss_compat): Move all symbols to GLIBC_PRIVATE. (libnss_nis, libnss_nisplus): Likewise. * nss/Versions (_nss_files_parse_grent, _nss_files_parse_pwent, _nss_files_parse_spent): Move to GLIBC_PRIVATE. (libnss_files): Move all symbols to GLIBC_PRIVATE. * posix/Versions (__libc_wait, __libc_waitpid, __libc_pause, __libc_nanosleep, __libc_fork, __libc_pread, __libc_pread64, __libc_pwrite, __libc_pwrite64): Move to GLIBC_PRIVATE. * resolv/Versions (__gai_sigqueue, __ns_name_unpack, __ns_name_ntop, __ns_get16, __ns_samename): Likewise. (libnss_dns): Move all symbols to GLIBC_PRIVATE. * setjmp/Versions (__libc_longjmp, __libc_siglongjmp): Move to GLIBC_PRIVATE. * socket/Versions (__libc_accept, __libc_send, __libc_recvfrom, __libc_recvmsg, __libc_sendmsg, __libc_recv, __libc_sendto, __libc_connect): Likewise. * stdio-common/Versions (_itoa_lower_digits, _itoa_upper_digits): Likewise. * stdlib/Versions (__libc_system): Likewise. * sunrpc/Versions (__rpc_thread_destroy): Likewise. * sysdeps/hppa/Versions: Move all symbols to GLIBC_PRIVATE. * sysdeps/ia64/fpu/Versions: Likewise. * sysdeps/ia64/Versions: Likewise. * sysdeps/unix/sysv/linux/ia64/Versions: Likewise. * sysdeps/unix/sysv/linux/i386/Versions (__modify_ldt): Move to GLIBC_PRIVATE. * sysdeps/unix/sysv/linux/x86_64/Versions (__modify_ldt): Likewise. * sysdeps/unix/sysv/linux/Versions (__syscall_rt_sigqueueinfo, __libc_sigaction): Likewise. * termios/Versions (__libc_tcdrain): Likewise. * misc/sys/cdefs (__attribute_noinline__): Define. * elf/dl-lookup.c (_dl_do_lookup, _dl_do_lookup_versioned): Add __attribute_noinline__. * elf/Makefile (rtld-routines): Add dl-xstat64, dl-fxstat64. * elf/dl-xstat64.c: New file. * elf/dl-fxstat64.c: New file. * sysdeps/unix/sysv/linux/fxstat64.c: If RTLD_STAT64 is defined, don't export __fxstat64 at multiple versions. * sysdeps/unix/sysv/linux/lxstat64.c: Similarly. * sysdeps/unix/sysv/linux/xstat64.c: Similarly.
2002-02-01 23:24:05 +00:00
2002-02-01 Jakub Jelinek <jakub@redhat.com>
* Versions (__libc_internal_tsd_get, __libc_internal_tsd_set,
__pthread_kill_other_threads_np): Move to GLIBC_PRIVATE.
* sysdeps/i386/i586/Versions: Move all symbols to GLIBC_PRIVATE.
* sysdeps/i386/i686/Versions: Move all symbols to GLIBC_PRIVATE.
* sysdeps/sparc/sparc32/sparcv9/Versions: New file.
* sysdeps/sparc/sparc64/Versions: New file.
* sysdeps/ia64/Versions: Move all symbols to GLIBC_PRIVATE.
Update. * sysdeps/generic/ldsodefs.h: Add _dl_load_lock, _dl_lazy, _dl_dynamic_weak, _dl_fpu_control, _dl_cpuclock_offset, and _dl_debug_fd to rtld_global. * elf/Versions: Likewise. * elf/dl-close.c: Likewise. * elf/dl-iteratephdr.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/dl-misc.c: Likewise. * elf/dl-open.c: Likewise. * elf/dl-support.c: Likewise. * elf/do-lookup.h: Likewise. * elf/rtld.c: Likewise. * sysdeps/generic/dl-cache.c: Likewise. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/ia64/Versions: Likewise. * sysdeps/unix/clock_gettime.c: Likewise. * sysdeps/unix/clock_settime.c: Likewise. * sysdeps/unix/sysv/linux/init-first.c: Likewise. * sysdeps/sparc/Versions: Removed. * sysdeps/i386/i686/Versions : Removed. * sysdeps/x86_64/Versions: Removed. * configure.in: Define HAVE_PROTECTED if .protected is available. * config.h.in: Add entry for HAVE_PROTECTED. 2002-01-31 Jakub Jelinek <jakub@redhat.com. * sysdeps/alpha/dl-machine.h: Move global variables for SHARED code in struct _rtld_global. Export this struct, remove all exports for the signal variables. * sysdeps/arm/dl-machine: Likewise. * sysdeps/generic/dl-origin: Likewise. * sysdeps/generic/dl-sysdep: Likewise. * sysdeps/generic/dl-cache: Likewise. * sysdeps/hppa/dl-fptr: Likewise. * sysdeps/hppa/dl-machine: Likewise. * sysdeps/cris/dl-machine: Likewise. * sysdeps/i386/dl-machine: Likewise. * sysdeps/ia64/dl-machine: Likewise. * sysdeps/m68k/dl-machine: Likewise. * sysdeps/mach/hurd/dl-sysdep: Likewise. * sysdeps/mips/mips64/dl-machine: Likewise. * sysdeps/mips/dl-machine: Likewise. * sysdeps/powerpc/elf/libc-start: Likewise. * sysdeps/powerpc/dl-machine: Likewise. * sysdeps/powerpc/dl-start: Likewise. * sysdeps/sparc/sparc32/dl-machine: Likewise. * sysdeps/sparc/sparc64/dl-machine: Likewise. * sysdeps/sh/dl-machine: Likewise. * sysdeps/s390/s390-32/dl-machine: Likewise. * sysdeps/s390/s390-64/dl-machine: Likewise. * sysdeps/unix/sysv/aix/libc-start: Likewise. * sysdeps/unix/sysv/aix/start-libc: Likewise. * sysdeps/unix/sysv/linux/ia64/dl-static: Likewise. * sysdeps/unix/sysv/linux/m68k/getpagesize: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize: Likewise. * sysdeps/x86_64/dl-machine: Likewise. 2002-01-31 Ulrich Drepper <drepper@redhat.com>
2002-02-01 01:33:04 +00:00
2002-01-31 Ulrich Drepper <drepper@redhat.com>
* pthread.c: _dl_cpuclock_offset is not any longer a global variable
in SHARED code, use GL(dl_cpuclock_offset).
2002-01-28 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/pspinlock.c (__pthread_spin_init): Clear *LOCK to
0. Patch by Machida Hiroyuki <machida@sm.sony.co.jp>.
2002-01-16 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/s390-32/pt-machine.h (MEMORY_BARRIER): Define.
(CURRENT_STACK_FRAME): Remove duplicate definition.
* sysdeps/s390/s390-64/pt-machine.h: Likewise.
2002-01-14 Martin Schwidefsky <schwidefsky@de.ibm.com>
* Makefile (CFLAGS-tst-cancel.c): Add -fno-inline-functions to prevent
automatic inline.
2002-01-12 Andreas Schwab <schwab@suse.de>
* Makefile (test-srcs): Add tst-signal.
(tests): Run tst-signal.
(distribute): Add tst-signal.sh.
* tst-signal.c, tst-signal.sh: New files.
2002-01-14 Andreas Jaeger <aj@suse.de>
* sysdeps/x86_64/pt-machine.h (INIT_THREAD_SELF): Avoid warning.
2002-01-11 Andreas Schwab <schwab@suse.de>
* signals.c (sighandler): Initialize all elements to SIG_ERR.
(__sigaction): Don't use value from sighandler if it is SIG_ERR.
2002-01-06 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/elf/pt-initfini.c: New file.
2001-12-29 Andreas Jaeger <aj@suse.de>
* Examples/ex9.c: Add noreturn attribute for thread.
* Examples/ex10.c: Likewise.
* Examples/ex13.c (thread_start): Likewise.
* Examples/ex15.c (worker): Likewise.
* Examples/ex18.c: Include unistd.h for prototype of sleep.
2001-12-14 Ulrich Drepper <drepper@redhat.com>
* man/pthread_atfork.man: Adjust description of mutex handling
after fork for current implementation.
* linuxthreads.texi: Likewise [PR libc/2519].
2001-12-13 Andreas Schwab <schwab@suse.de>
* specific.c (pthread_key_delete): Don't contact the thread
manager if no threads have been created yet.
2001-12-12 NIIBE Yutaka <gniibe@m17n.org>
* sysdeps/sh/pt-machine.h (INIT_THREAD_SELF): Added __volatile__
qualifier to be safe.
2001-11-30 Andreas Schwab <schwab@suse.de>
* pthread.c (pthread_handle_sigcancel) [THREAD_SELF]: Double check
that self is the manager thread, and initialize the thread
register if not.
(thread_self_stack) [THREAD_SELF]: New function to find self via
stack pointer.
* manager.c (pthread_handle_create): Don't block cancel signal any
more.
2001-11-29 Andreas Jaeger <aj@suse.de>
* sysdeps/x86_64/pt-machine.h: Use %gs as thread specific register.
(THREAD_SELF): New.
(INIT_THREAD_SELF): New.
(THREAD_GETMEM): New.
(THREAD_GETMEM_NC):
(THREAD_SETMEM): New.
(THREAD_SETMEM_NC): New.
(FLOATING_STACKS): Define.
(ARCH_STACK_MAX_SIZE): Define.
2001-11-28 Kaz Kylheku <kaz@ashi.footprints.net>
Bugfix to pthread_key_delete. It was iterating over the thread
manager's linked list of threads, behind the thread manager's
back causing a race. The fix is to have the manager iterate over
the threads instead, using a new request type for doing so.
* internals.h (struct pthread_request): New manager request type
REQ_FOR_EACH_THREAD.
* manager.c (pthread_for_each_thread): New function.
(__pthread_manager): Handle new REQ_FOR_EACH_THREAD request.
* specific.c (struct pthread_key_delete_helper_args): New type.
(pthread_key_delete_helper): New static function.
(pthread_key_delete): Use the new thread manager
REQ_FOR_EACH_THREAD function to iterate over the threads and set
the delete key slot to a null value in each thread.
* Examples/ex18.c: New test.
* Makefile (tests): Add ex18.
2001-11-22 Wolfram Gloger <wg@malloc.de>
* pthread.c (pthread_onexit_process): Don't call free
after threads have been asynchronously terminated.
* manager.c (pthread_handle_exit): Surround cancellation
of threads with __flockfilelist()/__funlockfilelist().
2001-11-26 Andreas Schwab <schwab@suse.de>
* manager.c (pthread_handle_create): Start the child thread with
the cancel signal blocked, so that it does not handle it before
the thread register is set up. Save errno from failed clone call.
2001-11-15 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/i686/Implies: Removed.
* sysdeps/i386/i686/Versions: New file.
2001-10-31 Andreas Jaeger <aj@suse.de>
* sysdeps/x86_64/Makefile: Remove, we do not need it anymore.
2001-10-05 Kevin Buettner <kevinb@cygnus.com>
* pthread.c (__linuxthread_pthread_sizeof_descr): Change name
to __linuxthreads_pthread_sizeof_descr to match name used by
symbol_list_arr[LINUXTHREADS_PTHREAD_SIZEOF_DESCR] in
linuxthreads_db/td_symbol_list.c.
2001-09-22 Andreas Jaeger <aj@suse.de>
* linuxthreads/tst-context.c: Avoid compile warning.
2001-09-20 Andreas Jaeger <aj@suse.de>
* shlib-versions: Add x86-64.
Update. * sysdeps/unix/sysv/linux/x86_64/Makefile: New file. * sysdeps/unix/sysv/linux/x86_64/Versions: New file. * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/time.h: New file. * sysdeps/unix/sysv/linux/x86_64/bits/types.h: New file. * sysdeps/unix/sysv/linux/x86_64/brk.c: New file. * sysdeps/unix/sysv/linux/x86_64/clone.S: New file. * sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: New file. * sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: New file. * sysdeps/unix/sysv/linux/x86_64/fxstat.c: New file. * sysdeps/unix/sysv/linux/x86_64/fxstat64.c: New file. * sysdeps/unix/sysv/linux/x86_64/getdents.c: New file. * sysdeps/unix/sysv/linux/x86_64/getdents64.c: New file. * sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: New file. * sysdeps/unix/sysv/linux/x86_64/gettimeofday.c: New file. * sysdeps/unix/sysv/linux/x86_64/glob64.c: New file. * sysdeps/unix/sysv/linux/x86_64/lxstat.c: New file. * sysdeps/unix/sysv/linux/x86_64/lxstat64.c: New file. * sysdeps/unix/sysv/linux/x86_64/mmap64.c: New file. * sysdeps/unix/sysv/linux/x86_64/pread64.c: New file. * sysdeps/unix/sysv/linux/x86_64/profil-counter.h: New file. * sysdeps/unix/sysv/linux/x86_64/pwrite64.c: New file. * sysdeps/unix/sysv/linux/x86_64/readdir.c: New file. * sysdeps/unix/sysv/linux/x86_64/readdir64.c: New file. * sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: New file. * sysdeps/unix/sysv/linux/x86_64/readdir_r.c: New file. * sysdeps/unix/sysv/linux/x86_64/recv.c: New file. * sysdeps/unix/sysv/linux/x86_64/register-dump.h: New file. * sysdeps/unix/sysv/linux/x86_64/send.c: New file. * sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: New file. * sysdeps/unix/sysv/linux/x86_64/sigaction.c: New file. * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: New file. * sysdeps/unix/sysv/linux/x86_64/sigpending.c: New file. * sysdeps/unix/sysv/linux/x86_64/sigprocmask.c: New file. * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: New file. * sysdeps/unix/sysv/linux/x86_64/statfs64.c: New file. * sysdeps/unix/sysv/linux/x86_64/sys/perm.h: New file. * sysdeps/unix/sysv/linux/x86_64/sys/procfs.h: New file. * sysdeps/unix/sysv/linux/x86_64/sys/reg.h: New file. * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h: New file. * sysdeps/unix/sysv/linux/x86_64/sys/user.h: New file. * sysdeps/unix/sysv/linux/x86_64/syscall.S: New file. * sysdeps/unix/sysv/linux/x86_64/syscalls.list: New file. * sysdeps/unix/sysv/linux/x86_64/sysdep.S: New file. * sysdeps/unix/sysv/linux/x86_64/sysdep.h: New file. * sysdeps/unix/sysv/linux/x86_64/time.c: New file. * sysdeps/unix/sysv/linux/x86_64/truncate64.c: New file. * sysdeps/unix/sysv/linux/x86_64/umount.c: New file. * sysdeps/unix/sysv/linux/x86_64/vfork.S: New file. * sysdeps/unix/sysv/linux/x86_64/xstat.c: New file. * sysdeps/unix/sysv/linux/x86_64/xstat64.c: New file. * sysdeps/unix/x86_64/sysdep.S: New file. * sysdeps/unix/x86_64/sysdep.h: New file. * sysdeps/x86_64/Implies: New file. * sysdeps/x86_64/Makefile: New file. * sysdeps/x86_64/Versions: New file. * sysdeps/x86_64/__longjmp.S: New file. * sysdeps/x86_64/abort-instr.h: New file. * sysdeps/x86_64/atomicity.h: New file. * sysdeps/x86_64/bits/endian.h: New file. * sysdeps/x86_64/bits/setjmp.h: New file. * sysdeps/x86_64/bits/string.h: New file. * sysdeps/x86_64/bp-asm.h: New file. * sysdeps/x86_64/bsd-_setjmp.S: New file. * sysdeps/x86_64/bsd-setjmp.S: New file. * sysdeps/x86_64/dl-machine.h: New file. * sysdeps/x86_64/elf/initfini.c: New file. * sysdeps/x86_64/elf/start.S: New file. * sysdeps/x86_64/ffs.c: New file. * sysdeps/x86_64/ffsll.c: New file. * sysdeps/x86_64/fpu/bits/fenv.h: New file. * sysdeps/x86_64/fpu/bits/mathdef.h: New file. * sysdeps/x86_64/fpu/e_acosl.c: New file. * sysdeps/x86_64/fpu/e_atan2l.c: New file. * sysdeps/x86_64/fpu/e_exp2l.S: New file. * sysdeps/x86_64/fpu/e_expl.c: New file. * sysdeps/x86_64/fpu/e_fmodl.S: New file. * sysdeps/x86_64/fpu/e_log10l.S: New file. * sysdeps/x86_64/fpu/e_log2l.S: New file. * sysdeps/x86_64/fpu/e_logl.S: New file. * sysdeps/x86_64/fpu/e_powl.S: New file. * sysdeps/x86_64/fpu/e_rem_pio2l.c: New file. * sysdeps/x86_64/fpu/e_scalbl.S: New file. * sysdeps/x86_64/fpu/e_sqrtl.c: New file. * sysdeps/x86_64/fpu/fclrexcpt.c: New file. * sysdeps/x86_64/fpu/fedisblxcpt.c: New file. * sysdeps/x86_64/fpu/feenablxcpt.c: New file. * sysdeps/x86_64/fpu/fegetenv.c: New file. * sysdeps/x86_64/fpu/fegetexcept.c: New file. * sysdeps/x86_64/fpu/fegetround.c: New file. * sysdeps/x86_64/fpu/feholdexcpt.c: New file. * sysdeps/x86_64/fpu/fesetenv.c: New file. * sysdeps/x86_64/fpu/fesetround.c: New file. * sysdeps/x86_64/fpu/fgetexcptflg.c: New file. * sysdeps/x86_64/fpu/fraiseexcpt.c: New file. * sysdeps/x86_64/fpu/fsetexcptflg.c: New file. * sysdeps/x86_64/fpu/ftestexcept.c: New file. * sysdeps/x86_64/fpu/libm-test-ulps: New file. * sysdeps/x86_64/fpu/math_ldbl.h: New file. * sysdeps/x86_64/fpu/printf_fphex.c: New file. * sysdeps/x86_64/fpu/s_atanl.c: New file. * sysdeps/x86_64/fpu/s_cosl.S: New file. * sysdeps/x86_64/fpu/s_expm1l.S: New file. * sysdeps/x86_64/fpu/s_fpclassifyl.c: New file. * sysdeps/x86_64/fpu/s_isinfl.c: New file. * sysdeps/x86_64/fpu/s_isnanl.c: New file. * sysdeps/x86_64/fpu/s_log1pl.S: New file. * sysdeps/x86_64/fpu/s_logbl.c: New file. * sysdeps/x86_64/fpu/s_nextafterl.c: New file. * sysdeps/x86_64/fpu/s_nexttoward.c: New file. * sysdeps/x86_64/fpu/s_nexttowardf.c: New file. * sysdeps/x86_64/fpu/s_rintl.c: New file. * sysdeps/x86_64/fpu/s_significandl.c: New file. * sysdeps/x86_64/fpu/s_sincosl.S: New file. * sysdeps/x86_64/fpu/s_sinl.S: New file. * sysdeps/x86_64/fpu/s_tanl.S: New file. * sysdeps/x86_64/gmp-mparam.h: New file. * sysdeps/x86_64/hp-timing.c: New file. * sysdeps/x86_64/hp-timing.h: New file. * sysdeps/x86_64/htonl.S: New file. * sysdeps/x86_64/memusage.h: New file. * sysdeps/x86_64/setjmp.S: New file. * sysdeps/x86_64/soft-fp/sfp-machine.h: New file. * sysdeps/x86_64/stackinfo.h: New file. * sysdeps/x86_64/sysdep.h: New file. * sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed: New file.
2001-09-19 10:37:31 +00:00
2001-09-19 Andreas Jaeger <aj@suse.de>
* sysdeps/x86_64/Makefile: New file.
* sysdeps/x86_64/pspinlock.c: New file.
* sysdeps/x86_64/pt-machine.h: New file.
2001-09-12 Jakub Jelinek <jakub@redhat.com>
* sysdeps/pthread/timer_delete.c (timer_delete): Thread may be NULL
for SIGEV_NONE.
* sysdeps/pthread/timer_settime.c (timer_settime): Likewise.
2001-09-11 Ulrich Drepper <drepper@redhat.com>
Wolfram Gloger <wg@malloc.de>
* join.c: Protect all communications from and to manager with
TEMP_FAILURE_RETRY.
* manager.c: Likewise.
* pthread.c: Likewise.
* smeaphore.c: Likewise.
2001-08-29 Ulrich Drepper <drepper@redhat.com>
* spinlock.c (__pthread_lock): Top max_count value with
MAX_ADAPTIVE_SPIN_COUNT.
* internals.h (MAX_ADAPTIVE_SPIN_COUNT): Define if not already done.
* sysdeps/i386/i686/pt-machine.h (BUSY_WAIT_NOP): New macro to
help P4.
2001-08-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/pthread/bits/libc-lock.h (__libc_rwlock_t): Only define to
non-opaque type if __USE_UNIX98.
2001-08-26 Jakub Jelinek <jakub@redhat.com>
* sysdeps/pthread/bits/libc-lock.h (__libc_lock_t): Define
non-opaque lock types also if _IO_MTSAFE_IO is defined.
2001-08-23 Roland McGrath <roland@frob.com>
* sysdeps/pthread/bits/libc-lock.h (__libc_cleanup_region_start): Take
new first argument, skip the cleanup handler if it's zero.
(_LIBC_LOCK_RECURSIVE_INITIALIZER): New macro.
(__libc_lock_define_initialized_recursive): Use it.
* sysdeps/pthread/bits/stdio-lock.h: File removed.
The sysdeps/generic file from the main tree now suffices.
2001-08-22 Roland McGrath <roland@frob.com>
* sysdeps/pthread/bits/stdio-lock.h: Include <bits/libc-lock.h>
instead of <pthread.h>.
(_IO_lock_t): Define this typedef using __libc_lock_define_recursive.
(_IO_lock_initializer): Add braces.
(_IO_lock_lock): Use __libc_lock_lock_recursive.
(_IO_lock_unlock): Use __libc_lock_unlock_recursive.
* sysdeps/pthread/bits/libc-lock.h (__libc_lock_recursive_t): New type.
(__libc_lock_define_initialized_recursive): Use it.
(__libc_lock_init_recursive): Likewise.
(__libc_lock_fini_recursive): Likewise.
(__libc_lock_lock_recursive): Likewise.
(__libc_lock_trylock_recursive): Likewise.
(__libc_lock_unlock_recursive): Likewise.
(__libc_lock_define_recursive): New macro.
2001-08-14 Jakub Jelinek <jakub@redhat.com>
* lockfile.c (__pthread_provide_lockfile): New variable.
* pthread.c (__pthread_require_lockfile): New variable.
* cancel.c (__pthread_require_lockfile): New variable.
2001-07-31 Ulrich Drepper <drepper@redhat.com>
* tst-context.c (threadfct): Initialize context before calling
makecontext.
* Examples/ex17.c: Make sure test thread is around long enough.
2001-07-26 kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF): Defined.
2001-07-24 Ulrich Drepper <drepper@redhat.com>
* tst-context.c (main): Print explanation before bailing out
because context handling is not supported.
2001-07-23 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add tst-context.
* tst-context.c: New file.
* sysdeps/pthread/bits/stdio-lock.h: Define
_IO_cleanup_region_start_noarg.
2001-07-23 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/pt-machine.h (FLOATING_STACKS): Define.
(ARCH_STACK_MAX_SIZE): Define.
* sysdeps/sparc/sparc32/pt-machine.h: Likewise.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
2001-07-19 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/useldt.h: Fix typo in ARCH_STACK_MAX_SIZE comment.
* sysdeps/ia64/pt-machine.h (FLOATING_STACKS): Define.
(ARCH_STACK_MAX_SIZE): Define.
* manager.c (pthread_allocate_stack): Handle FLOATING_STACKS with
NEED_SEPARATE_REGISTER_STACK.
2001-07-16 Andreas Schwab <schwab@suse.de>
* Makefile (before-compile): Don't add $(objpfx)crti.o.
(omit-deps): Add crti.
($(objpfx)libpthread.so): Depend on $(objpfx)crti.o, but make sure
it is filtered out of the link command.
2001-07-16 Ulrich Drepper <drepper@redhat.com>
* pthread.c (pthread_initialize): For FLOATING_STACKS don't bother
to find the right value for __pthread_initial_thread_bos, it's not
used. If not FLOATING_STACKS first run
__pthread_init_max_stacksize.
2001-06-16 H.J. Lu <hjl@gnu.org>
* internals.h: Include <stackinfo.h>.
* attr.c: Don't include <stackinfo.h> here.
* cancel.c: Likewise.
* manager.c: Likewise.
* pthread.c: Likewise.
* ptlongjmp.c: Likewise.
2001-03-23 Matthew Wilcox <willy@ldl.fc.hp.com>
* attr.c: Make _STACK_GROWS_UP work.
* internals.h: Likewise.
* manager.c: Likewise.
* pthread.c: Likewise.
2001-06-15 H.J. Lu <hjl@gnu.org>
* pthread.c (__pthread_reset_main_thread): Fix a typo.
2001-02-02 John S. Marvin <jsm@udlkern.fc.hp.com>
* semaphore.h: Use struct _pthread_fastlock as an element of
sem_t instead of an identical struct.
* rwlock.c: Remove casts.
* semaphore.c: Likewise.
2001-04-30 Alan Modra <amodra@one.net.au>
* sysdeps/unix/sysv/linux/hppa/pt-initfini.c: New.
2001-05-25 Bruce Mitchener <bruce@cubik.org>
* linuxthreads.texi: Spelling corrections.
2001-05-25 Ulrich Drepper <drepper@redhat.com>
* oldsemaphore.c (__old_sem_wait): Clear p_nextwaiting before
returning successfully.
Patch by Gene Cooperman <gene@ccs.neu.edu>.
2001-05-24 Ulrich Drepper <drepper@redhat.com>
* spinlock.c (__pthread_lock) [HAS_COMPARE_AND_SWAP]: Before doing any
serious work try once whether the lock is uncontested.
Remove duplicate reading of __status before loop.
Change suggested by Hans Boehm <hans_boehm@hp.com>.
* spinlock.h (__pthread_trylock): Remove need for oldstatus variable.
(__pthread_alt_trylock): Likewise.
2001-05-01 Kaz Kylheku <kaz@ashi.footprints.net>
Memory barrier overhaul following line by line inspection.
* mutex.c (pthread_once): Missing memory barriers added.
* pthread.c (__pthread_wait_for_restart_signal,
__pthread_timedsuspend_new, __pthread_restart_new): Added
memory barriers ``just in case'' and for documentary value.
* spinlock.c (__pthread_release): New inline function for releasing
spinlock, to complement __pthread_acquire. Includes memory
barrier prior to assignment to spinlock, and __asm __volatile
dance to prevent reordering or optimization of the spinlock access.
* spinlock.c (__pthread_unlock, __pthread_alt_lock,
__pthread_alt_timedlock, __pthread_alt_unlock,
__pthread_compare_and_swap): Updated to use new __pthread_release
instead of updating spinlock directly.
* spinlock.c (__pthread_lock, __pthread_unlock, wait_node_alloc,
wait_node_free, wait_node_dequeue, __pthread_alt_lock,
__pthread_alt_timedlock, __pthread_alt_unlock, __pthread_acquire):
Memory barrier overhaul. Lots of missing memory barriers added,
a couple needless ones removed.
* spinlock.c (__pthread_compare_and_swap): testandset optimization
removed, just calls __pthread_acquire, which has the new read
barrier in it before its testandset.
2001-05-20 Roland McGrath <roland@frob.com>
* Makeconfig: New file, variables used to be in main libc Makeconfig.
2001-05-09 Geoff Keating <geoffk@redhat.com>
* sysdeps/powerpc/pt-machine.h
(HAS_COMPARE_AND_SWAP_WITH_RELEASE_SEMANTICS): Define.
(__compare_and_swap): Remove memory barriers.
(__compare_and_swap_with_release_semantics): New function.
2001-04-24 Andreas Jaeger <aj@suse.de>
* wrapsyscall.c: send* and recv* return ssize_t.
* sysdeps/pthread/timer_getoverr.c (timer_getoverrun): Unlock the
mutex instead of double locking it.
Reported by Pierre Artaud <partaud@sodatec.com>.
2001-04-23 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/getcpuclockid.c: Make function generic, test
using #ifdef whether the clock is available.
* sysdeps/unix/sysv/linux/i386/getcpuclockid.c: Removed.
* sysdeps/ia64/Versions: New file.
* sysdeps/unix/sysv/linux/ia64/pt-initfini.c (_init): We don't
have to call __gmon_start__ in the libpthread DSO.
* sysdeps/pthread/pt-initfini.c (_init): Likewise.
* Makefile (libpthread-routines): Add ptclock_gettime and
ptclock_settime.
* internals.h: Don't use cpuclock-init.h definitions, use
hp-timing.h definitions.
* pthread.c: Likewise.
* manager.c: Likewise.
* ptclock_gettime.c: New file.
* ptclock_settime.c: New file.
* internals.h: Fix parameter type for __pthread_clock_gettime and
__pthread_clock_settime.
* sysdeps/i386/i586/ptclock_gettime.c: Removed.
* sysdeps/i386/i586/ptclock_settime.c: Removed.
* sysdeps/i386/i586/Makefile: Removed.
2001-04-22 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_ASYNCH_IO.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
2001-04-21 Andreas Jaeger <aj@suse.de>
* sysdeps/pthread/timer_routines.c (thread_func): Add noreturn
attribute, remove statements that will never be executed.
(thread_func): Remove mutex_unlock call since it's never executed.
(thread_func): Fix comment as suggested by Jakub Jelinek.
* manager.c (__pthread_manager): Add noreturn
attribute.
(pthread_start_thread): Likewise, remove return statement.
(pthread_start_thread_event): Likewise.
Add noreturn attribute for pthread_handle_exit.
* weaks.c: Add noreturn attribute for pthread_exit.
* internals.h: Add __pthread_clock_gettime and
__pthread_clock_settime prototypes.
2001-04-21 Ulrich Drepper <drepper@redhat.com>
* internals.h: Include <cpuclock-init.h>.
(struct _pthread_descr_struct): Add p_cpuclock_offset field if
CPUCLOCK_VARDEF is defined.
* pthread.c (__pthread_initialize_minimal): Initialize
p_cpuclock_offset field for main thread if CPUCLOCK_INIT is defined.
* manager.c (pthread_start_thread): Set p_cpuclock_offset field
for new thread to current CPU clock value.
* sysdeps/i386/useldt.h: Extend all the macros to handle 8-byte values.
* sysdeps/i386/i586/Makefile: New file.
* sysdeps/i386/i586/Versions: New file.
* sysdeps/i386/i586/ptclock_gettime.c: New file.
* sysdeps/i386/i586/ptclock_settime.c: New file.
* sysdeps/i386/i686/Implies: New file.
2001-04-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/Makefile: Put specs into
$generated, not $postclean-generated.
2001-04-18 Andreas Jaeger <aj@suse.de>
* Makefile (otherlibs): Added.
2001-04-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/Makefile: New file.
2001-04-16 Ulrich Drepper <drepper@redhat.com>
* signals.c (sigwait): NSIG is no signal number. Block all
signals while in signal handler for signals in SET.
Patch by Manfred Spraul <manfred@colorfullife.com>.
2001-04-12 Ulrich Drepper <drepper@redhat.com>
* tst-cancel.c: Disable most tests. Add new test where all
cleanup handlers must run.
* Makefile (tests): Add tst-cancel again.
* cancel.c (__pthread_perform_cleanup): Correct condition for
leaving cleanup loop early.
* sysdeps/i386/Makefile: Make sure gcc uses a frame pointer for
all the files which use CURRENT_STACK_FRAME.
* sysdeps/i386/pt-machine.h (CURRENT_STACK_FRAME): Define using
__builtin_frame_address.
* sysdeps/i386/i686/pt-machine.h: Likewise.
2001-04-11 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Comment out tst-cancel for now.
* tst-cancel.c (main): Cleanup 4 is supposed to run. Create
temporary file in object directory.
* Makefile: Don't allow inlining when compiling tst-cancel.c.
Pass $(objpfx) to tst-cancel.
2001-04-11 David S. Miller <davem@redhat.com>
* sysdeps/sparc/sparc32/pt-machine.h (stack_pointer): Advance
up closer to user local variables so that new cleanup heuristics work.
* sysdeps/sparc/sparc64/pt-machine.h (stack_pointer): Likewise.
2001-04-11 Ulrich Drepper <drepper@redhat.com>
* cancel.c (_pthread_cleanup_push): Catch invalid __prev buffer
and remove it.
(_pthread_cleanup_push_defer): Likewise.
* tst-cancel.c (main): Fix loop printing cleanup output.
2001-04-10 kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/sh/pspinlock.c (__pthread_spin_lock): Fix a reverse
test.
(__pthread_spin_trylock): Likewise.
* sysdeps/sh/pt-machine.h (testandset): Likewise.
2001-04-10 Ulrich Drepper <drepper@redhat.com>
* join.c (pthread_exit): Move code to new function __pthread_do_exit
which takes an extra parameter with the current frame pointer.
Call new function with CURRENT_STACK_FRAME.
(__pthread_do_exit): New function. Call __pthread_perform_cleanup
with the new parameter.
(pthread_join): Call __pthread_do_exit instead of pthread_exit.
* cancel.c (__pthread_perform_cleanup): Takes extra parameter. Use
this parameter as the initial value the cleanup handler records are
compared against. No active cleanup handler record must have an
address lower than the previous one and the initial record must be
above (below on PA) the frame address passed in.
(pthread_setcancelstate): Call __pthread_do_exit instead of
pthread_exit.
(pthread_setcanceltype): Likewise.
(pthread_testcancel): Likewise.
(_pthread_cleanup_pop_restore): Likewise.
* condvar.c (pthread_cond_wait): Likewise.
(pthread_cond_timedwait_relative): Likewise.
* manager.c (pthread_start_thread): Likewise.
* oldsemaphore.c (__old_sem_wait): Likewise.
* pthread.c (pthread_handle_sigcancel): Likewise.
* semaphore.c (__new_sem_wait): Likewise.
(sem_timedwait): Likewise.
* ptlongjmp.c (pthread_cleanup_upto): Also use current stack frame
to limit the cleanup handlers which get run.
* internals.h: Add prototype for __pthread_do_exit. Adjust prototype
for __pthread_perform_cleanup.
* Makefile (tests): Add tst-cancel.
* tst-cancel.c: New file.
Update. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * sysdeps/unix/sysv/linux/cris/Dist: New file. * sysdeps/unix/sysv/linux/cris/Makefile: New file. * sysdeps/unix/sysv/linux/cris/_G_config.h: New file. * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: New file. * sysdeps/unix/sysv/linux/cris/bits/mman.h: New file. * sysdeps/unix/sysv/linux/cris/bits/resource.h: New file. * sysdeps/unix/sysv/linux/cris/brk.c: New file. * sysdeps/unix/sysv/linux/cris/chown.c: New file. * sysdeps/unix/sysv/linux/cris/clone.S: New file. * sysdeps/unix/sysv/linux/cris/fchown.c: New file. * sysdeps/unix/sysv/linux/cris/fcntl.c: New file. * sysdeps/unix/sysv/linux/cris/fxstat.c: New file. * sysdeps/unix/sysv/linux/cris/getegid.c: New file. * sysdeps/unix/sysv/linux/cris/geteuid.c: New file. * sysdeps/unix/sysv/linux/cris/getgid.c: New file. * sysdeps/unix/sysv/linux/cris/getgroups.c: New file. * sysdeps/unix/sysv/linux/cris/getresgid.c: New file. * sysdeps/unix/sysv/linux/cris/getresuid.c: New file. * sysdeps/unix/sysv/linux/cris/getrlimit.c: New file. * sysdeps/unix/sysv/linux/cris/getrlimit64.c: New file. * sysdeps/unix/sysv/linux/cris/getuid.c: New file. * sysdeps/unix/sysv/linux/cris/lchown.c: New file. * sysdeps/unix/sysv/linux/cris/lockf64.c: New file. * sysdeps/unix/sysv/linux/cris/lxstat.c: New file. * sysdeps/unix/sysv/linux/cris/mmap.S: New file. * sysdeps/unix/sysv/linux/cris/mmap64.S: New file. * sysdeps/unix/sysv/linux/cris/msgctl.c: New file. * sysdeps/unix/sysv/linux/cris/profil-counter.h: New file. * sysdeps/unix/sysv/linux/cris/register-dump.h: New file. * sysdeps/unix/sysv/linux/cris/semctl.c: New file. * sysdeps/unix/sysv/linux/cris/setegid.c: New file. * sysdeps/unix/sysv/linux/cris/seteuid.c: New file. * sysdeps/unix/sysv/linux/cris/setfsgid.c: New file. * sysdeps/unix/sysv/linux/cris/setfsuid.c: New file. * sysdeps/unix/sysv/linux/cris/setgid.c: New file. * sysdeps/unix/sysv/linux/cris/setgroups.c: New file. * sysdeps/unix/sysv/linux/cris/setregid.c: New file. * sysdeps/unix/sysv/linux/cris/setresgid.c: New file. * sysdeps/unix/sysv/linux/cris/setresuid.c: New file. * sysdeps/unix/sysv/linux/cris/setreuid.c: New file. * sysdeps/unix/sysv/linux/cris/setrlimit.c: New file. * sysdeps/unix/sysv/linux/cris/setuid.c: New file. * sysdeps/unix/sysv/linux/cris/shmctl.c: New file. * sysdeps/unix/sysv/linux/cris/socket.S: New file. * sysdeps/unix/sysv/linux/cris/sys/ucontext.h: New file. * sysdeps/unix/sysv/linux/cris/syscall.S: New file. * sysdeps/unix/sysv/linux/cris/sysdep.S: New file. * sysdeps/unix/sysv/linux/cris/sysdep.h: New file. * sysdeps/unix/sysv/linux/cris/vfork.S: New file. * sysdeps/unix/sysv/linux/cris/xstat.c: New file. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * sysdeps/cris/Dist: New file. * sysdeps/cris/Implies: New file. * sysdeps/cris/Makefile: New file. * sysdeps/cris/__longjmp.S: New file. * sysdeps/cris/_mcount.S: New file. * sysdeps/cris/bits/endian.h: New file. * sysdeps/cris/bits/setjmp.h: New file. * sysdeps/cris/bits/string.h: New file. * sysdeps/cris/dl-machine.h: New file. * sysdeps/cris/elf/start.S: New file. * sysdeps/cris/machine-gmon.h: New file. * sysdeps/cris/memcopy.h: New file. * sysdeps/cris/memusage.h: New file. * sysdeps/cris/setjmp.S: New file. * sysdeps/cris/sysdep.h: New file. * sysdeps/cris/wordcopy.c: New file. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * elf/elf.h: Add new relocations for CRIS. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * shlib-versions: Add cases for Linux on CRIS. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * configure.in (ASM_LINE_SEP tests): Handle CRIS assembly, with ';' for comments and '@' for line separator. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * sysdeps/unix/sysv/linux/hppa/sysdep.h (INLINE_SYSCALL): Fix typo; s/==/=/ for assignment. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * malloc/Makefile: Correct comment; mtrace is Perl, not AWK. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * iconv/gconv_simple.c (internal_ucs4_loop_unaligned): Check for empty input before checking full output. 2001-04-08 Hans-Peter Nilsson <hp@axis.com> * iconv/gconv.c (__gconv): Don't derefer parameter cd before checking if == -1L. 2001-04-08 Ulrich Drepper <drepper@redhat.com> * inet/rexec.c (rexec_af): Avoid calling perror with errno being set.
2001-04-09 04:55:59 +00:00
2001-04-08 Hans-Peter Nilsson <hp@axis.com>
* sysdeps/cris/pt-machine.h: New file.
* sysdeps/cris/pspinlock.c: New file.
2001-04-09 Hans-Peter Nilsson <hp@axis.com>
* shlib-versions: Add case for Linux on CRIS.
2001-03-26 Ulrich Drepper <drepper@redhat.com>
* attr.c (pthread_getattr_np): Correct computation of stack size
for machiens with register stack.
* Examples/ex17.c (main): Correct detection of failed mmap call.
2001-03-21 Jakub Jelinek <jakub@redhat.com>
* pthread.c (__pthread_initialize_manager): Fix a typo.
2001-03-21 Jakub Jelinek <jakub@redhat.com>
* attr.c (__pthread_attr_setstack): Fix alignment check.
(pthread_getattr_np): __stackaddr is top of stack, not bottom.
* Makefile (tests): Add ex17 test.
* Examples/ex17.c: New test.
2001-03-20 Ulrich Drepper <drepper@redhat.com>
* Makefile: Define -D_RPC_THREAD_SAFE_ for cancel.c.
* cancel.c (__pthread_perform_cleanup): Call __rpc_thread_destroy.
* sysdeps/pthread/bits/libc-tsd.h: Define _LIBC_TSD_KEY_VARS.
2001-03-18 Ulrich Drepper <drepper@redhat.com>
* Makefile: When generating DSO link with libc_nonshared.a.
2001-02-26 Jakub Jelinek <jakub@redhat.com>
* signals.c (pthread_sighandler): Use CALL_SIGHANDLER.
2001-02-23 Jakub Jelinek <jakub@redhat.com>
* internals.h (__pthread_init_max_stacksize): New prototype.
* attr.c (__pthread_attr_setstacksize): Call
__pthread_init_max_stacksize if not yet initialized.
* pthread.c (__pthread_init_max_stacksize): New function.
(__pthread_initialize_manager): Call it.
Patch by <dtc@cmucl.cons.org>.
2001-03-16 Ulrich Drepper <drepper@redhat.com>
* attr.c (pthread_getattr_np): Fix __stacksize computation for IA-64.
2001-03-13 Martin Schwidefsky <schwidefsky@de.ibm.com>
* shlib-versions: Add rule for Linux on 64 bit S/390.
* sysdeps/s390/s390-64/pt-machine.h: New file.
* sysdeps/unix/sysv/linux/s390/s390-64/pt-initfini.c: New file.
2001-03-13 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/pt-machine.h: Move to...
* sysdeps/s390/s390-32/pt-machine.h: ...here.
Add defines for FLOATING_STACK and ARCH_STACK_MAX_SIZE.
2001-03-15 Ulrich Drepper <drepper@redhat.com>
* Versions [libpthread] (GLIBC_2.2.3): Add pthread_getattr_np.
* attr.c: Implement pthread_getattr_np.
* sysdeps/pthread/pthread.h: Add prototype for pthread_getattr_np.
* internals.h (struct _pthread_descr_struct): Add p_inheritsched.
* manager.c (pthread_handle_create): Initialize p_inheritsched.
2001-03-09 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/pt-initfini.c: Use 0x07 padding for
code alignment.
2001-02-20 Hans Boehm <hans_boehm@hp.com>
* manager.c (manager_mask): Removed static vesion. Now always local
to __pthread_manager().
(manager_mask_all): Removed completely.
(__pthread_manager): Remove manager_mask_all initialization.
(pthread_handle_create): Remove code to set and reset signal mask
around __clone2() calls.
2001-02-17 Jakub Jelinek <jakub@redhat.com>
* spinlock.c (__pthread_lock): Force lock->__status to be read from
memory on every spin.
2001-02-10 Andreas Jaeger <aj@suse.de>
* Makefile (extra-objs): New.
2001-02-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/pthread/pt-initfini.c (call_initialize_minimal): Add
__pthread_initialize_minimal prototype.
2001-02-08 kaz Kojima <kkojima@rr.iij4u.or.jp>
* sysdeps/unix/sysv/linux/sh/pt-initfini.c: New file.
2001-02-06 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/pt-initfini.c: New file.
2001-02-06 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ia64/pt-initfini.c: First attempt to fix the
broken code. Patch by Jes Sorensen.
2001-02-06 Andreas Jaeger <aj@suse.de>
* sysdeps/pthread/pthread.h: Move __pthread_initialize from here
to...
* internals.h: ...here.
2001-02-05 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/pt-initfini.c: New file.
2001-02-02 Ulrich Drepper <drepper@redhat.com>
* Versions: Remove __pthread_initialize_minimal.
2001-02-01 Ulrich Drepper <drepper@redhat.com>
* Makefile: Add rules to build crti.o and make it being used in
building libpthread.so.
* sysdeps/i386/Makefile: New file.
* sysdeps/pthread/pt-initfini.c: New file.
* pthread.c: Cleanups.
2001-01-28 Andreas Jaeger <aj@suse.de>
* oldsemaphore.c (__old_sem_init): Adjust for last change.
* sysdeps/pthread/bits/libc-lock.h: Likewise.
* spinlock.c: Likewise.
2001-01-28 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/initspin.h: Make all names namespace clean.
* sysdeps/unix/sysv/linux/hppa/bits/initspin.h: Likewise.
* manager.c: Adjust for namespace cleanup in bits/initspin.h.
* pthread.c: Likewise.
* spinlock.h: Likewise.
* sysdeps/pthread/pthread.h: Likewise.
2001-01-26 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/pthreadtypes.h: Define pthread_attr_t also
as struct __pthread_attr_s.
* semaphore.h (sem_t): Cleanup namespace, rename status and
spinlock elements.
2001-01-13 Jakub Jelinek <jakub@redhat.com>
* pthread.c (pthread_onexit_process): Clear
__pthread_manager_thread_bos after freeing it.
* Makefile (tests): Add ex16.
* Examples/ex16.c: New file.
2001-01-11 Jakub Jelinek <jakub@redhat.com>
* Makefile (CFLAGS-pthread.c): Pass -DHAVE_Z_NODELETE if ld supports
-z nodelete.
* pthread.c (pthread_exit_process): Rename to...
(pthread_onexit_process): ...this.
(pthread_atexit_process, pthread_atexit_retcode): New.
(pthread_initialize): Call __cxa_atexit instead of __cxa_on_exit
and only if HAVE_Z_NODELETE is not defined.
(__pthread_initialize_manager): Register pthread_atexit_retcode
with __cxa_atexit.
2001-01-11 Ulrich Drepper <drepper@redhat.com>
* pthread.c (pthread_initialize): Use __cxs_on_exit not __cxa_atexit.
2001-01-11 Jakub Jelinek <jakub@redhat.com>
* Makefile (tests): Add ex15.
* Examples/ex15.c: New test.
2001-01-08 Ulrich Drepper <drepper@redhat.com>
* pthread.c (pthread_exit_process): Free memory allocated for
manager stack.
2000-12-31 Ulrich Drepper <drepper@redhat.com>
* manager.c (pthread_alloca_stack): Remove MAP_FIXED from mmap calls.
(pthread_free): Always unmap the stack. It's safe now that we don't
use MAP_FIXED to allocate stacks.
2000-12-31 Ulrich Drepper <drepper@redhat.com>
* sysdeps/powerpc/pspinlock.c: Don't include pt-machine.h here.
* manager.c (pthread_allocate_stack): Prepare for removal of MAP_FIXED.
2000-11-15 Wolfram Gloger <wg@malloc.de>
* manager.c (pthread_free): [!FLOATING_STACKS]: Only remap the
stack to PROT_NONE, don't unmap it, avoiding collisions with malloc.
2000-12-27 Andreas Jaeger <aj@suse.de>
* Examples/ex13.c: Make local functions static.
* ecmutex.c: Likewise.
2000-12-27 20:25:30 +00:00
* joinrace.c: Likewise.
* Examples/ex14.c: Likewise.
* Examples/ex2.c: Make local functions static; reformat.
* Examples/ex1.c: Likewise.
* Examples/ex4.c: Likewise.
* Examples/ex5.c: Likewise.
* Examples/ex7.c: Likewise.
* oldsemaphore.c: Add prototypes to shut up GCC.
* pt-machine.c: Likewise.
* weaks.c: Add prototype for pthread_exit.
* internals.h: Add some prototypes, format prototypes and add
missing externs.
Move __libc_waitpid prototype to include/sys/wait.h.
* rwlock.c: Include <bits/libc-lock.h> for prototypes.
* mutex.c: Likewise.
* specific.c: Likewise.
* ptfork.c: Likewise.
* lockfile.c: Include internals.h to get prototypes.
* events.c: Likewise.
* sysdeps/alpha/pspinlock.c: Likewise.
* sysdeps/arm/pspinlock.c: Likewise.
* sysdeps/hppa/pspinlock.c: Likewise.
* sysdeps/i386/pspinlock.c: Likewise.
* sysdeps/ia64/pspinlock.c: Likewise.
* sysdeps/m68k/pspinlock.c: Likewise.
* sysdeps/mips/pspinlock.c: Likewise.
* sysdeps/powerpc/pspinlock.c: Likewise.
* sysdeps/s390/pspinlock.c: Likewise.
* sysdeps/sh/pspinlock.c: Likewise.
* sysdeps/sparc/sparc32/pspinlock.c: Likewise.
* sysdeps/sparc/sparc32/sparcv9/pspinlock.c: Likewise.
* sysdeps/sparc/sparc64/pspinlock.c: Likewise.
2000-12-27 Ulrich Drepper <drepper@redhat.com>
* attr.c (__pthread_attr_setstack): Fix setting of __stackaddr element.
(__pthread_attr_getstack): Return correct address.
Add warnings for using pthread_attr_getstackaddr and
pthread_attr_setstackaddr.
2000-12-26 Ulrich Drepper <drepper@redhat.com>
* Examples/ex6.c (test_thread): Make static.
* Examples/ex12.c (test_thread): Make static and add noreturn
attribute.
2000-12-18 Jes Sorensen <jes@linuxcare.com>
* linuxthreads/sysdeps/ia64/pt-machine.h: __compare_and_swap
and compare_and_swap_with_release_semantics returns int not long.
2000-12-17 Andreas Jaeger <aj@suse.de>
* sysdeps/s390/pt-machine.h (testandset): Use long int as return
value.
* sysdeps/arm/pt-machine.h (testandset): Likewise.
* sysdeps/hppa/pt-machine.h (testandset): Likewise.
* sysdeps/m68k/pt-machine.h (testandset): Likewise.
* sysdeps/sh/pt-machine.h (testandset): Likewise.
* sysdeps/sparc/sparc32/pt-machine.h (testandset): Likewise.
* sysdeps/sparc/sparc64/pt-machine.h (testandset): Likewise.
2000-12-17 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/pt-machine.h (testandset): Adjust for prototype change.
* sysdeps/i386/i686/pt-machine.h (testandset): Likewise.
2000-12-17 Andreas Jaeger <aj@suse.de>
* internals.h: Add prototypes for testandset and
__compare_and_swap to shut up gcc warnings.
2000-12-06 Wolfram Gloger <wg@malloc.de>
* join.c (pthread_detach): Allow case where the thread has already
terminated.
2000-12-05 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Don't set mips2.
* sysdeps/mips/pt-machine.h (testandset): Likewise.
(__compare_and_swap): Likewise.
Patches by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
2000-11-20 Jakub Jelinek <jakub@redhat.com>
* Examples/ex3.c (main): Cast int to long before casting to void *.
(search): Cast void * to long, not int.
* Examples/ex8.c (main, thread): Similarly.
* Examples/ex11.c (main): Similarly.
* Examples/ex14.c (worker, do_test): Similarly.
* ecmutex.c (worker, do_test): Similarly.
(nlocks): Cast to int.
2000-11-08 Bruce Mitchener <bruce@cubik.org>
* linuxthreads.texi: Add documentation for pthreads attributes
guardsize, stackaddr, stacksize, and stack. Fix typo in previous
patch. Document pthread_[sg]etconcurrency(). Mark
pthread_mutexattr_[sg]ettype() as POSIX rather than GNU.
2000-11-07 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_MESSAGE_PASSING):
Don't define it.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
Reported by Christopher Yeoh <cyeoh@linuxcare.com.au>.
2000-11-06 Ulrich Drepper <drepper@redhat.com>
* cancel.c (pthread_cancel): Always set p_canceled, even if we are
not doing it right now.
Reported by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-10-30 Ulrich Drepper <drepper@redhat.com>
* Examples/ex4.c (main): Don't use exit() to avoid warning with
broken compilers.
2000-10-29 Ulrich Drepper <drepper@redhat.com>
* attr.c (__pthread_attr_setguardsize): Don't round guardsize
here. Reported by Bruce Mitchener <bruce@cubik.org>.
* linuxthreads.texi: Changes terminology to 'type' from 'kind' when
discussing mutexes. (As per the Unix98 name for the API.)
Changes documentation for pthread_mutexattr_setkind_np() and
pthread_mutexattr_getkind_np() over to the Unix98 APIs for the
same: pthread_mutexattr_settype() and pthread_mutexattr_gettype().
Changes references to PTHREAD_MUTEXATTR_FAST_NP to
PTHREAD_MUTEXATTR_ADAPTIVE_NP.
Begins to introduce discussion of the ``timed'' mutex type. This
discussion is currently incomplete.
Patch by Bruce Mitchener <bruce@cubik.org>.
2000-10-26 Kazumoto Kojima <kkojima@rr.iij4u.or.jp>
Yutaka Niibe <gniibe@chroot.org>
* sysdeps/sh/pt-machine.h (testandset): Since the operand of TAS.B
has restrictions, use register.
2000-10-23 Andreas Schwab <schwab@suse.de>
* Examples/ex14.c (TIMEOUT): Override default timeout.
2000-10-16 Ulrich Drepper <drepper@redhat.com>
* specific.c: Protect tsd array modification in thread data
structures by getting the thread lock in pthread_key_delete and
__pthread_destroy_specifics.
Patch by Wolfram Gloger <Wolfram.Gloger@dent.med.uni-muenchen.de>.
Update. 2000-10-14 Ulrich Drepper <drepper@redhat.com> * math/libm-test.inc (frexp_test): Add L suffix also to parameters. (hypot_test): Likewise. * sysdeps/generic/printf_fphex.c: Compute width of decimal point string correctly. Handle padding correctly. * sysdeps/ia64/fpu/printf_fphex.c: Use sizeof in _itowa parameters correctly. * sysdeps/ieee754/ldbl-128/printf_fphex.c: Likewise. * sysdeps/ieee754/ldbl-96/printf_fphex.c: Likewise. 2000-10-12 Alan Modra <alan@linuxcare.com.au> * FAQ.in: Add --start-group and --end-group. 2000-10-12 Alan Modra <alan@linuxcare.com.au> * malloc/memusage.c: Conditionalize stack usage calculation on stack direction. 2000-10-12 Alan Modra <alan@linuxcare.com.au> * config.h.in: Add ASM_LINE_SEP. * configure.in: Add test for comment and line separators. * include/libc-symbols.h: Define and use ASM_LINE_SEP, and add tabs to placate some hppa assemblers. * sysdeps/hppa/sysdep.h: Likewise. * sysdeps/gnu/siglist.c: Insert \n and \t into inline asm. * sysdeps/unix/sysv/linux/errlist.c: Likewise. 2000-10-12 David Huggins-Daines <dhd@linuxcare.com> * sysdeps/unix/sysv/linux/Makefile: Include <bits/initspin> in $(sysdep_headers). * sysdeps/unix/sysv/linux/bits/initspin.h: Dummy version for non-threaded platforms. 2000-10-12 David Huggins-Daines <dhd@linuxcare.com> * configure.in: Add definitions for hppa. * elf/elf.h: Add PLABEL32 relocation for hppa ELF32, comments for IPLT and EPLT relocations. * shlib-versions: Version symbol definitions for hppa-linux. * sysdeps/unix/sysv/linux/configure.in: Define $arch_minimum_kernel for hppa. 2000-10-12 David Huggins-Daines <dhd@linuxcare.com> * sysdeps/hppa/Makefile: New file. * sysdeps/hppa/Versions: New file. * sysdeps/hppa/setjmp.S: New file. * sysdeps/hppa/__longjmp.S: New file. * sysdeps/hppa/bits/setjmp.h: New file. * sysdeps/hppa/frame.h: New file. * sysdeps/hppa/add_n.s: Don't use %r19 (linkage table pointer). * sysdeps/hppa/sub_n.s: Likewise. * sysdeps/hppa/lshift.s: Likewise. * sysdeps/hppa/rshift.s: Likewise. * sysdeps/hppa/udiv_qrnnd.s: Likewise. * sysdeps/hppa/hppa1.1/addmul_1.s: Likewise. * sysdeps/hppa/hppa1.1/submul_1.s: Likewise. * sysdeps/hppa/hppa1.1/mul_1.s: Likewise. * sysdeps/hppa/hppa1.1/udiv_qrnnd.s: Likewise. * sysdeps/hppa/dl-machine.h: New file. * sysdeps/hppa/dl-fptr.c: New file (note that this is almost identical to the IA-64 one). * sysdeps/hppa/dl-lookupcfg.h: Likewise. * sysdeps/hppa/dl-symaddr.c: Likewise. * sysdeps/hppa/elf/initfini.c: New file. * sysdeps/hppa/elf/start.S: New file. * sysdeps/hppa/fpu/bits/fenv.h: New file. * sysdeps/hppa/fpu/fclrexcpt.c: New file. * sysdeps/hppa/fpu/fedisblxcpt.c: New file. * sysdeps/hppa/fpu/feenablxcpt.c: New file. * sysdeps/hppa/fpu/fegetenv.c: New file. * sysdeps/hppa/fpu/fegetexcept.c: New file. * sysdeps/hppa/fpu/fegetround.c: New file. * sysdeps/hppa/fpu/feholdexcpt.c: New file. * sysdeps/hppa/fpu/fesetenv.c: New file. * sysdeps/hppa/fpu/fesetround.c: New file. * sysdeps/hppa/fpu/feupdateenv.c: New file. * sysdeps/hppa/fpu/fegetexcptflg.c: New file. * sysdeps/hppa/fpu/fraiseexcpt.c: New file. * sysdeps/hppa/fpu/fsetexcptflg.c: New file. * sysdeps/hppa/fpu/ftestexcept.c: New file. * sysdeps/unix/sysv/linux/hppa/Makefile: New file. * sysdeps/unix/sysv/linux/hppa/Versions: New file. * sysdeps/unix/sysv/linux/hppa/syscalls.list: New file. * sysdeps/unix/sysv/linux/hppa/sysdep.c: New file. * sysdeps/unix/sysv/linux/hppa/sysdep.h: New file. * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: New file. * sysdeps/unix/sysv/linux/hppa/bits/ioctls.h: New file. * sysdeps/unix/sysv/linux/hppa/bits/mman.h: New file. * sysdeps/unix/sysv/linux/hppa/bits/sigaction.h: New file. * sysdeps/unix/sysv/linux/hppa/bits/signum.h: New file. * sysdeps/unix/sysv/linux/hppa/brk.c: New file. * sysdeps/unix/sysv/linux/hppa/clone.S: New file. * sysdeps/unix/sysv/linux/hppa/socket.S: New file. * sysdeps/unix/sysv/linux/hppa/syscall.S: New file. * sysdeps/unix/sysv/linux/hppa/setrlimit.c: New file. * sysdeps/unix/sysv/linux/hppa/getrlimit.c: New file. * sysdeps/unix/sysv/linux/hppa/getrlimit64.c: New file. * sysdeps/unix/sysv/linux/hppa/kernel_sigaction.h: New file. * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: New file. * sysdeps/unix/sysv/linux/hppa/mmap.c: New file. * sysdeps/unix/sysv/linux/hppa/profil-counter.h: New file. * sysdeps/unix/sysv/linux/hppa/procfs.h: New file. * sysdeps/unix/sysv/linux/hppa/ucontext.h: New file. * sysdeps/unix/sysv/linux/hppa/umount.c: New file. 2000-10-12 Alan Modra <alan@linuxcare.com.au> * sysdeps/hppa/hppa1.1/Implies: New file. * sysdeps/hppa/memusage.h: New file.
2000-10-15 06:50:42 +00:00
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* sysdeps/pthread/bits/initspin.h: New file.
* spinlock.h: Move LOCK_INITIALIZER definition to <bits/initspin.h>.
(__pthread_init_lock): Initialize lock with LT_SPINLOCK_INIT.
(__pthread_alt_init_lock): Likewise.
(__pthread_alt_trylock): Release lock with LT_SPINLOCK_INIT.
2000-10-12 David Huggins-Daines <dhd@linuxcare.com>
* oldsemaphore.c (__old_sem_init): Release lock with
LT_SPINLOCK_INIT, not zero.
* spinlock.c (__pthread_unlock): Likewise.
(__pthread_alt_lock): Likewise.
(__pthread_alt_timedlock): Likewise.
(__pthread_alt_unlock): Likewise.
* sysdeps/pthread/bits/libc-lock.h: Initialize locks with
LT_SPINLOCK_INIT if it is non-zero. Likewise for init-once flags.
* sysdeps/pthread/pthread.h: Include bits/initspin.h. Use
LT_SPINLOCK_INIT do initialize spinlocks not 0.
2000-10-12 David Huggins-Daines <dhd@linuxcare.com>
* shlib-versions: Add version definitions for hppa-linux.
2000-10-12 Alan Modra <alan@linuxcare.com.au>
* sysdeps/hppa/pspinlock.c: New file.
* sysdeps/hppa/pt-machine.h: New file.
* sysdeps/unix/sysv/linux/hppa/bits/initspin.h: New file.
2000-10-05 Jakub Jelinek <jakub@redhat.com>
* mutex.c (__pthread_mutex_destroy): Correct test of
busy mutex for mutexes using alternate fastlocks.
Patch by dtc@cmucl.cons.org.
Update. 2000-09-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> * sysdeps/unix/sysv/linux/kernel-features.h: Add __ASSUME_IPC64, only define it for powerpc for kernel >= 2.4.0. * sysdeps/unix/sysv/linux/msgctl.c: Test for __ASSUME_IPC64, not __ASSUME_32BITUIDS. * sysdeps/unix/sysv/linux/semctl.c: Likewise. * sysdeps/unix/sysv/linux/shmctl.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/bits/ipc.h: Sync with kernel. * sysdeps/unix/sysv/linux/powerpc/bits/msq.h: New file. * sysdeps/unix/sysv/linux/powerpc/bits/sem.h: New file. * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: New file. 2000-09-28 Martin Schwidefsksy <schwidefsky@de.ibm.com> * sysdeps/s390/atomicity.h: Fix compare_and_swap. * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (F_GETLK64,F_SETLK64,F_SETLKW64): Use values from 2.4.0-test8. 2000-09-28 Denis Joseph Barrow <djbarrow@de.ibm.com> * sysdeps/unix/sysv/linux/s390/sys/procfs.h: Use definitions from ucontext.h. * sysdeps/unix/sysv/linux/s390/sys/ucontext.h: Fix ucontext structure. 2000-09-27 Andreas Schwab <schwab@suse.de> * math/Makefile (distribute): Explicitly add the long double test sources, to get them included even if long double is not supported. 2000-09-27 Jes Sorensen <jes@linuxcare.com> * elf/soinit.c (struct object): Move definition to gccframe.h and include it. Problem identified by HJ Lu. * sysdeps/ia64/gccframe.h: New file. ia64 specific version of struct object to be searched for frame unwind info. * sysdeps/generic/gccframe.h: New file. Generic version of struct object to be searched for frame unwind info. 2000-09-28 Ulrich Drepper <drepper@redhat.com> * manual/errno.texi: Correct error text for ENXIO. Reported by Jrg Schilling <schilling@fokus.gmd.de>. 2000-09-27 Jes Sorensen <jes@linuxcare.com> * sysdeps/ia64/fpu/fsetexcptflg.c (fesetexceptflag): Set the exception status bits rather than the exception disable bits. Don't include math.h. * sysdeps/ia64/fpu/fgetexcptflg.c (fegetexceptflag): Report the status of exceptions currently raised rather than which exceptions are enabled. * sysdeps/ia64/fpu/fclrexcpt.c (feclearexcept): Typecase to fenv_t rather than unsigned long int. * sysdeps/ia64/fpu/fedisblxcpt.c (fedisableexcept): Only disable the exceptions actually requested by the caller and not just disable all exceptions. * sysdeps/ia64/fpu/feenablxcpt.c (feenableexcept): Exceptions on the ia64 are enabled by clearing the respective bits in the fpsr, not setting them. * sysdeps/ia64/bits/fenv.h: typedef fexcept_t and fenv_t to unsigned long int rather than unsigned long to be consistent with the coding conventions. 2000-09-20 H.J. Lu <hjl@gnu.org> * sysdeps/ia64/fpu/fesetenv.c (fesetenv): Use fenv_t instead of unsigned long int. * sysdeps/ia64/fpu/fesetround.c (fesetround): Likewise. 2000-09-28 Ulrich Drepper <drepper@redhat.com> * string/bits/string2.h: Unify #if usage. 2000-09-27 Jakub Jelinek <jakub@redhat.com> * math/test-fenv.c (feexcp_mask_test): If enabling all exceptions and disabling underflow or overflow, disable inexact as well. * sysdeps/gnu/netinet/tcp.h: Add tcp_info defines and types.
2000-09-28 23:32:48 +00:00
2000-09-28 Martin Schwidefsksy <schwidefsky@de.ibm.com>
* sysdeps/s390/pt-machine.h: Make %a0 the thread register.
2000-09-28 Ulrich Drepper <drepper@redhat.com>
* mutex.c (__pthread_mutex_unlock): For PTHREAD_MUTEX_RECURSIVE_NP
test for owner first.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
* cancel.c (pthread_cancel): Don't do anything if cancelation is
disabled.
2000-09-26 Ulrich Drepper <drepper@redhat.com>
* spinlock.h (__pthread_set_own_extricate_if): Optimize a bit.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Remove
_POSIX_MONOTONIC_CLOCK.
* spinlock.h (__pthread_set_own_extricate_if): Add back locking
and explain why.
2000-09-20 Andreas Jaeger <aj@suse.de>
* pthread.c [!__ASSUME_REALTIME_SIGNALS]: Make inclusion of
"testrtsig.h" conditional.
2000-09-11 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/pthread.h: Declare pthread_attr_getstack and
pthread_attr_setstack.
* Versions [libpthread] (GLIBC_2.2): Export pthread_attr_getstack and
pthread_attr_setstack.
* attr.c (pthread_attr_getstack, pthread_attr_setstack): New functions.
2000-09-05 Ulrich Drepper <drepper@redhat.com>
* Examples/ex14.c: New file.
* Makefile (tests): Add ex14.
* mutex.c (__pthread_mutex_unlock): Correct test for already unlocked
mutex. Patch by dtc@cmucl.cons.org.
* ecmutex.c: New file.
* Makefile (tests): Add ecmutex.
Update. 2000-09-04 Andreas Schwab <schwab@suse.de> * elf/Makefile (all-dl-routines): New variable. (elide-routines.os): Use it instead of $(dl-routines). (all-rtld-routines): New variable. (extra-objs): Use it instead of $(rtld-routines). ($(objpfx)dl-allobjs.os): Likewise. * sysdeps/ia64/Makefile [$(subdir) = elf]: Modify sysdep-dl-routines and sysdep_routines instead of rtld-routines and dl-routines. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_trans.c (__gconv_translit_find): Update open_count. Set fname to NULL if the module wasn't found. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_trans.c (__gconv_translit_find): Don't set need_so to true if trans->name already ends in ".so". 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_int.h (__gconv_release_shlib): Change return type to void. * iconv/gconv_dl.c (do_release_shlib): Don't decrement the counter below -TRIES_BEFORE_UNLOAD-1, to avoid wraparound. (__gconv_release_shlib): Change return type to void. * iconv/gconv_builtin.c (__gconv_get_builtin_trans): Don't set step->__counter here. * iconv/gconv_db.c (free_derivation): Don't call a step's destructor if the reference is zero. (release_step): New function. (gen_steps): Always initialize the __counter to 1. Use release_step. Don't call the destructor on the step whose initializer failed. (increment_counter): Use release_step. Don't normally run destructors here. (__gconv_close_transform): Use release_step. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_simple.c (encoding_mask, encoding_byte): Remove. (__gconv_transform_internal_utf8) [BODY]: Use simple shifts instead. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/euc-tw.c (BODY for FROM_LOOP): Initialize ch2 correctly. If the first byte is 0x8E, don't ask for 4 bytes until it has been verified that the second byte is valid. Leave it to cns11643_to_ucs4 to check for incomplete input. * iconvdata/cns11643.h (cns11643_to_ucs4): The plane number is ch - 0x20 - offset, not ch - 0x21 - offset. Upper bound for __cns11643l1_to_ucs4_tab is 0x21f2, not 0x2196. (ucs4_to_cns11643): Fix mapping for ranges 0x3105..0x3129 and 0x9f9d..0x9fa5. * iconvdata/cns11643l1.h (cns11643l1_to_ucs4): Upper bound for __cns11643l1_to_ucs4_tab is 0x21f2, not 0x2196. (ucs4_to_cns11643l1): Fix mapping for range 0x3105..0x3129. * iconvdata/cns11643l1.c (__cns11643l1_from_ucs4_tab6): Extend upto index 0x0052. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconv/gconv_db.c (find_derivation): Always use the least-cost solution. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/big5.c (BODY for FROM_LOOP): Bytes 0x81..0xA0, 0xFA..0xFF are invalid. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/jis0208.c (__jis0208_to_ucs): Map EUC-JP 0xA1C0 to U+005C. * iconvdata/jis0212.c (__jisx0212_to_ucs): Map EUC-JP 0x8FA2B7 to U+007E. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/sjis.c (cjk_block1): Map 0x815F to U+005C. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/iso_6937-2.c (to_ucs4): Map 0xB4 to U+00D7. 2000-09-03 Bruno Haible <haible@clisp.cons.org> * iconvdata/tst-tables.sh: New file. * iconvdata/tst-table.sh: New file. * iconvdata/tst-table-from.c: New file. * iconvdata/tst-table-to.c: New file. * iconvdata/tst-table-charmap.sh: New file. * iconvdata/Makefile (test-srcs): Set to tst-table-from tst-table-to. (distribute): Add tst-tables.sh, tst-table.sh, tst-table-charmap.sh, tst-table-from.c, tst-table-to.c, EUC-JP.irreversible, ISIRI-3342.irreversible, SJIS.irreversible. (tests): Add dependency on tst-tables.out. (tst-tables.out, tst-tables-clean): New rules. (do-tests-clean, common-mostlyclean): Require tst-tables-clean. * iconvdata/ISIRI-3342.irreversible: New file. * iconvdata/EUC-JP.irreversible: New file. * iconvdata/SJIS.irreversible: New file. 2000-09-04 Ulrich Drepper <drepper@redhat.com> * manual/locale.texi (General Numeric): Update description of representation of the grouping information in the locale data. Patch by Gaute B. Strokkenes <gs234@cam.ac.uk>. Reported by Rob Levin <lilo@transvirtual.com>.
2000-09-05 02:51:27 +00:00
2000-09-04 H.J. Lu <hjl@gnu.org>
* attr.c (__pthread_attr_setguardsize): Use page_roundup
instead of roundup to round up to the page size.
2000-09-03 Mark Kettenis <kettenis@gnu.org>
* manager.c (pthread_exited): Correctly report event as TD_REAP
instead of TD_DEATH. Fix comments.
2000-09-03 Ulrich Drepper <drepper@redhat.com>
* spinlock.h (testandset): Add cast to avoid warning.
Patch by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>.
2000-09-02 Andreas Jaeger <aj@suse.de>
* sysdeps/pthread/timer_routines.c: Include stdlib.h for abort
prototype.
2000-09-01 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/stdio-lock.h (_IO_cleanup_region_start):
Fix typo in last patch (_mode -> _flags).
* sysdeps/pthread/bits/stdio-lock.h (_IO_cleanup_region_start):
Provide definition which respects _IO_USER_LOCK flag.
2000-08-30 Ulrich Drepper <drepper@redhat.com>
* manager.c (pthread_allocate_stack): Clear descriptor only if not
mmaped.
2000-08-25 Ulrich Drepper <drepper@redhat.com>
* Makefile: Add rules to build and run unload.
* unload.c: New file.
* pthread.c (pthread_exit_process): Move thread_self use inside `if'.
* sysdeps/pthread/pthread.h
(PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP): Defined.
(PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP: Defined.
2000-08-24 Andreas Jaeger <aj@suse.de>
* Examples/ex13.c: Include <string.h> for strerror prototype and
<stdlib.h> for abort prototype.
(pthr_cond_signal_mutex): Rewrite to silence GCC.
(thread_start): Remove unused variable err.
(main): Silence GCC warnings.
2000-08-22 Andreas Jaeger <aj@suse.de>
* Examples/ex13.c: New test by Kurt Garloff <garloff@suse.de>.
* Makefile (tests): Add ex13.
2000-08-20 Ulrich Drepper <drepper@redhat.com>
* semaphore.h: Add restrict where required by AGd4.
* sysdeps/pthread/pthread.h: Likewise.
* sysdeps/pthread/unix/sysv/linux/bits/sigthread.h: Likewise.
2000-08-15 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add ex12. Add rule to build it.
* Examples/ex12.c: New file.
2000-08-13 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_SEMAPHORES
even though the implementation is not quite complete (but it reports
it). Define _POSIX_MESSAGE_PASSING to -1.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
2000-08-12 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/pt-machine.h (testandset): Add .set mips2 for
assembler.
(__compare_and_swap): Likewise.
* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Likewise.
2000-08-10 Ulrich Drepper <drepper@redhat.com>
* pthread.c (__pthread_initial_thread): Initialize p_errnop and
p_h_errnop correctly and not to NULL.
2000-08-05 Ulrich Drepper <drepper@redhat.com>
* Banner: Bump version number to 0.9.
2000-08-04 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add tststack. Add rule to build the program.
* tststack.c: New file.
* internals.h: Declare __pthread_max_stacksize.
* pthread.c (__pthread_max_stacksize): New variable.
(__pthread_initialize_manager): Determine __pthread_initialize_manager
value.
* manager.c (thread_segment): Return always NULL if FLOATING_STACKS.
(pthread_allocate_stack): Allow kernel to choose stack address if
FLOATING_STACKS. This also handles variable-sized stacks.
Always allocate stack and guardpage together. Use mprotect to
change guardpage access.
* sysdeps/i386/useldt.h: Define FLOATING_STACKS and
ARCH_STACK_MAX_SIZE.
* attr.c (__pthread_attr_setstacksize): Also test value against
upper limit.
* manager.c (__pthread_nonstandard_stacks): Define only if
THREAD_SELF is not defined.
(pthread_allocate_stack): Always initialize gardaddr to a correct
value.
(pthread_handle_create): Unmap thread with one call.
(pthread_free): Remove test for initial thread before removing stack.
Unmap stack with one call.
* pthread.c (__pthread_initial_thread): Initialize p_userstack to
1 to avoid removing the stack.
2000-07-27 Jes Sorensen <jes@linuxcare.com>
* sysdeps/ia64/pspinlock.c (__pthread_spin_lock): Add
load of spin lock to prime the cache before the atomic compare and
exchange operation (cmpxchg4). This avoids the spinning on the
cmpxchg4 instruction and reduces movement of the cache line back
and forth between the processors (explanation by Asis K. Mallick
from Intel). This basically makes the implementation operate the
same as the Linux kernel implementation.
* shlib-versions: Use GLIBC_2_2 for Linux/ia64.
* sysdeps/ia64/pspinlock.c: New file.
2000-08-03 Ulrich Drepper <drepper@redhat.com>
* pthread.c: Move definition of __pthread_set_own_extricate_if...
* spinlock.h: ...here. Remove locking.
* internals.h: Remove __pthread_set_own_extricate_if prototype.
* rwlock.c: Use THREAD_GETMEM And THREAD_SETMEM.
(rwlock_rd_extricate_func): Don't determine self, let
__pthread_lock do it.
(rwlock_wr_extricate_func): Likewise.
(rwlock_have_already): Optimize *pself handling a bit.
* mutex.c: Use __builtin_expect.
* pthread.c: Likewise.
2000-08-02 Andreas Jaeger <aj@suse.de>
* sysdeps/s390/pspinlock.c: New file.
* sysdeps/s390/pt-machine.h: New file.
Patches by Martin Schwidefsky <schwidefsky@de.ibm.com>.
2000-07-12 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Implement for
R3K.
* sysdeps/mips/pt-machine.h (testandset): Likewise.
2000-07-26 Andreas Jaeger <aj@suse.de>
* pthread.c: Initialize p_sem_avail.
2000-07-25 Ulrich Drepper <drepper@redhat.com>
* internals.h (struct __pthread_descr_struct): Add p_sem_avail.
* semaphore.c: Handle spurious wakeups.
* sysdeps/pthread/pthread.h: Add back PTHREAD_MUTX_FAST_NP as an alias
for PTHREAD_MUTEX_ADAPTIVE_NP for source code compatibility.
* pthread.c (__pthread_set_own_extricate): Use THREAD_GETMEM.
(__pthread_wait_for_restart): Likewise.
* condvar.c (pthread_cond_wait): Also check whether thread is
cancelable before aborting loop.
(pthread_cond_timedwait): Likewise.
* signals.c (pthread_sighandler): Remove special code to restrore
%gs on x86.
(pthread_sighandler_t): Likewise.
2000-07-25 Mark Kettenis <kettenis@gnu.org>
* internals.h (__RES_PTHREAD_INTERNAL): Remove define.
* pthread.c: Include <resolv.h>.
(_res): Undefine. Add extern declaration.
2000-07-24 Ulrich Drepper <drepper@redhat.com>
* pthread.c (__pthread_initial_thread): Update initializer.
(__pthread_manager_thread): Likewise.
(pthread_initialize): Move setrlimit call to...
(__pthread_initialize_manager): ...here.
(__pthread_reset_main_thread): Reset also soft limit on stack size.
* condvar.c: Handle spurious wakeups. [PR libc/1749].
* internals.h (struct _pthread_descr_struct): Add p_condvar_avail.
2000-07-21 Ulrich Drepper <drepper@redhat.com>
* spinlock.h: If IMPLEMENT_TAS_WITH_CAS is defined use
__compare_and_swap to define testandset.
* sysdeps/powerpc/pt-machine.h: Add volatile to asms.
Define IMPLEMENT_TAS_WITH_CAS.
2000-07-20 Ulrich Drepper <drepper@redhat.com>
* Makefile: Pass -z nodelete to linker for libpthread.so
generation if it understand this option.
2000-07-18 Mark Kettenis <kettenis@gnu.org>
* manager.c (pthread_handle_create): Remove initialization of
new_thread->p_res._sock.
2000-07-19 Kaz Kylheku <kaz@ashi.footprints.net>
Bugfixes to the variant of the code for machines with no compare
and swap.
* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Wait
node was not being properly enqueued, due to failing to update
the lock->__status field.
* spinlock.c (__pthread_alt_timedlock): The oldstatus variable was
being set inappropriately, causing the suspend function to be called
with a null self pointer and crash.
2000-07-18 Ulrich Drepper <drepper@redhat.com>
* spinlock.h (__pthread_alt_trylock): Fix code used if no
compare&swap is available.
* spinlock.h (__pthread_trylock): Use __compare_and_swap, not
compare_and_swap.
* pthread.c (pthread_initialize): Don't use sysconf to determine
whether the machine has more than one processor.
* spinlock.c (__pthread_alt_timedlock): Add back one of the
removed thread_self calls.
2000-07-18 Kaz Kylheku <kaz@ashi.footprints.net>
* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Changed
__compare_and_swap to compare_and_swap in code which assumes
compare swap is available.
2000-07-18 Kaz Kylheku <kaz@ashi.footprints.net>
* spinlock.c (__pthread_alt_lock, __pthread_alt_timedlock): Fixed
bug whereby thr field of waitnode structure would not be correctly
set unless a null self pointer is passed to the functions.
Eliminated redundant calls to thread_self().
2000-07-18 Jakub Jelinek <jakub@redhat.com>
* pthread.c (__pthread_initialize_manager): Lock
__pthread_manager_thread.p_lock before calling clone.
Update. 2000-05-05 H.J. Lu <hjl@gnu.org> * sysdeps/ia64/pt-machine.h (__compare_and_swap): Change it to have acquire semantics. (__compare_and_swap_with_release_semantics): New inline function. (HAS_COMPARE_AND_SWAP_WITH_RELEASE_SEMANTICS): New macro. 2000-01-28 Hans Boehm <hboehm@exch.hpl.hp.com> * manager.c: Fix the problem with signals at startup. Change the way that thread stacks are allocated on IA64. Clean up some of the guard page allocation stuff. 1999-12-19 H.J. Lu <hjl@gnu.org> * internals.h (page_roundup): New. * attr.c (__pthread_attr_setguardsize); Use page_roundup instead of roundup. * manager.c (pthread_allocate_stack): Make sure guardaddr is page aligned with page_roundup if NEED_SEPARATE_REGISTER_STACK is define. 1999-12-17 Hans Boehm <hboehm@exch.hpl.hp.com> * manager.c (pthread_allocate_stack): Unmap the stack top if failed to map the stack bottom. Fix the guard page. (pthread_free): Fix the guard page. * pthread.c (pthread_initialize): Set rlimit correctly for NEED_SEPARATE_REGISTER_STACK. 1999-12-16 H.J. Lu <hjl@gnu.org> * pthread.c (__pthread_initialize_manager): Pass __pthread_manager_thread_bos instead of __pthread_manager_thread_tos to __clone2. 1999-12-16 H.J. Lu <hjl@gnu.org> * manager.c (pthread_allocate_stack): Correct the calculation of "new_thread_bottom". Remove MAP_GROWSDOWN from mmap for stack bottom. 1999-12-13 H.J. Lu <hjl@gnu.org> * sysdeps/ia64/pt-machine.h (__compare_and_swap): Added a stop bit after setting ar.ccv. 1999-12-12 H.J. Lu <hjl@gnu.org> * manager.c (pthread_allocate_stack): Make the starting address of the stack bottom page aligned. FIXME: it may need changes in other places. (pthread_handle_create): Likewise. 1999-12-11 Hans Boehm <hboehm@exch.hpl.hp.com> * manager.c (pthread_allocate_stack): Handle NEED_SEPARATE_REGISTER_STACK. (pthread_handle_create): Likewise. * pthread.c (__pthread_initialize_manager): Likewise. * sysdeps/ia64/pt-machine.h: Use r13 for thread pointer. 1999-12-02 H.J. Lu <hjl@gnu.org> * sysdeps/ia64/pt-machine.h: New.
2000-07-15 19:02:47 +00:00
2000-05-05 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/pt-machine.h (__compare_and_swap): Change it to
have acquire semantics.
(__compare_and_swap_with_release_semantics): New inline
function.
(HAS_COMPARE_AND_SWAP_WITH_RELEASE_SEMANTICS): New macro.
2000-01-28 Hans Boehm <hboehm@exch.hpl.hp.com>
* manager.c: Fix the problem with signals at startup.
Change the way that thread stacks are allocated on IA64.
Clean up some of the guard page allocation stuff.
1999-12-19 H.J. Lu <hjl@gnu.org>
* internals.h (page_roundup): New.
* attr.c (__pthread_attr_setguardsize); Use page_roundup
instead of roundup.
* manager.c (pthread_allocate_stack): Make sure guardaddr is
page aligned with page_roundup if NEED_SEPARATE_REGISTER_STACK
is define.
1999-12-17 Hans Boehm <hboehm@exch.hpl.hp.com>
* manager.c (pthread_allocate_stack): Unmap the stack top
if failed to map the stack bottom.
Fix the guard page.
(pthread_free): Fix the guard page.
* pthread.c (pthread_initialize): Set rlimit correctly for
NEED_SEPARATE_REGISTER_STACK.
1999-12-16 H.J. Lu <hjl@gnu.org>
* pthread.c (__pthread_initialize_manager): Pass
__pthread_manager_thread_bos instead of
__pthread_manager_thread_tos to __clone2.
1999-12-16 H.J. Lu <hjl@gnu.org>
* manager.c (pthread_allocate_stack): Correct the calculation
of "new_thread_bottom". Remove MAP_GROWSDOWN from mmap for
stack bottom.
1999-12-13 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/pt-machine.h (__compare_and_swap): Added a stop
bit after setting ar.ccv.
1999-12-12 H.J. Lu <hjl@gnu.org>
* manager.c (pthread_allocate_stack): Make the starting
address of the stack bottom page aligned. FIXME: it may
need changes in other places.
(pthread_handle_create): Likewise.
1999-12-11 Hans Boehm <hboehm@exch.hpl.hp.com>
* manager.c (pthread_allocate_stack): Handle
NEED_SEPARATE_REGISTER_STACK.
(pthread_handle_create): Likewise.
* pthread.c (__pthread_initialize_manager): Likewise.
* sysdeps/ia64/pt-machine.h: Use r13 for thread pointer.
1999-12-02 H.J. Lu <hjl@gnu.org>
* sysdeps/ia64/pt-machine.h: New.
2000-07-13 Ulrich Drepper <drepper@redhat.com>
* wrapsyscall.c: Mark non-__ protected names as weak.
PR libc/1466.
2000-07-12 Bruno Haible <haible@clisp.cons.org>
* Examples/ex8.c: Include <sys/wait.h>, not <wait.h>.
2000-07-12 Ulrich Drepper <drepper@redhat.com>
* spinlock.c: Fix code for TEST_FOR_COMPARE_AND_SWAP being defined.
Add tests also to new alternative spinlock implementation.
* spinlock.h: Likewise.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-07-06 Ulrich Drepper <drepper@redhat.com>
* Version: Export __sigaction.
* signals.c: Define __sigaction alias. Use __libc_sigaction instead
of __sigaction.
* pthread.c: Use __libc_sigaction instead of __sigaction.
* condvar.c: Implement pthread_condattr_getpshared and
pthread_condattr_setpshared.
* mutex.c: Implement pthread_mutexattr_getpshared and
pthread_mutexattr_setpshared.
* Versions: Export new functions.
* sysdeps/pthread/pthread.h: Add prototypes for new functions.
* rwlock.c (pthread_rwlockattr_init): Use PTHREAD_PROCESS_PRIVATE.
(pthread_rwlockattr_setpshared): Fail if PTHREAD_PROCESS_PRIVATE
is not selected.
2000-07-04 Greg McGary <greg@mcgary.org>
* sysdeps/pthread/bits/libc-lock.h: Remove BP_SYM from
pragmas. Include bp-sym.h only if _LIBC.
2000-07-04 Ulrich Drepper <drepper@redhat.com>
* spinlock.c (__pthread_unlock): Properly place write barrier.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-07-03 Ulrich Drepper <drepper@redhat.com>
* spinlock.c: Replace fast spinlocks by adaptive spinlocks which are
faster on SMP systems. No more emulation of compare&swap for adaptive
spinlocks.
* spinlock.h: Likewise.
* sysdeps/pthread/pthread.h: Shuffle PTHREAD_MUTEX_* values around.
Replace fast with adaptive mutex.
* mutex.c: Rewrite for replacement of fast by adaptive mutex.
* condvar.c: Likewise.
* pthread.c: Define and initialize __pthread_smp_kernel variable.
* internals.h: Declare __pthread_smp_kernel.
* sysdeps/pthread/bits/pthreadtypes.h: Update comment of
_pthread_fastlock structure.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
* pthread.c: Remove initialization to zero from global variables.
2000-06-29 Jakub Jelinek <jakub@redhat.com>
* shlib-versions: Make sparc64 GLIBC_2.2+ only.
2000-06-28 Greg McGary <greg@mcgary.org>
* weaks.c: Wrap BP_SYM () around weak extern declarations of
pthread functions that have pointers in their return+arg signatures.
2000-06-27 17:17:48 +00:00
2000-06-27 Greg McGary <greg@mcgary.org>
* sysdeps/pthread/bits/libc-lock.h: Wrap BP_SYM () around weak
extern declarations of pthread functions that have pointers in
their return+arg signatures.
2000-06-27 17:17:48 +00:00
2000-06-26 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add ex11. Add rules to build it.
* Examples/ex11.c: New file.
* rwlock.c: Fix complete braindamaged previous try to implement
timedout functions.
* spinlock.c: Pretty print.
2000-06-25 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add ex10. Add rules to build it.
* Versions [GLIBC_2.2] (libpthread): Add pthread_mutex_timedlock,
pthread_rwlock_timedrdlock, and pthread_rwlock_timedwrlock.
* condvar.c (pthread_cond_wait): Allow mutex of kind
PTHREAD_MUTEX_TIMED_NP.
(pthread_cond_timedwait_relative): Likewise.
* mutex.c (__pthread_mutex_init): Default is PTHREAD_MUTEX_TIMED_NP.
(__pthread_mutex_trylock): Use __pthread_alt_trylock for
PTHREAD_MUTEX_ERRORCHECK_NP. Handle PTHREAD_MUTEX_TIMED_NP.
(__pthread_mutex_lock): Use __pthread_alt_lock for
PTHREAD_MUTEX_ERRORCHECK_NP. Handle PTHREAD_MUTEX_TIMED_NP.
(__pthread_mutex_timedlock): New function.
(__pthread_mutex_unlock): Use __pthread_alt_unlock for
PTHREAD_MUTEX_ERRORCHECK_NP. Handle PTHREAD_MUTEX_TIMED_NP.
(__pthread_mutexattr_init): Use PTHREAD_MUTEX_TIMED_NP.
(__pthread_mutexattr_settype): Allow PTHREAD_MUTEX_TIMED_NP.
* spinlock.c: Implement alternate fastlocks.
* spinlock.h: Add prototypes.
* Examples/ex10.c: New file.
* sysdeps/pthread/pthread.h: Add prototypes for new functions.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
* rwlock.c (__pthread_rwlock_rdlock): Optimize loop a bit.
(__pthread_rwlock_timedrdlock): New function.
(__pthread_rwlock_timedwrlock): New function.
Use laternate fastlock function everywhere.
2000-06-21 Andreas Jaeger <aj@suse.de>
* sysdeps/pthread/timer_routines.c: Include <string.h> for memset
prototype.
* join.c: Include <stdlib.h> for exit prototype.
2000-06-20 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/useldt.h: Include <stdlib.h>.
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_BARRIERS.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
* Makefile (libpthread-routines): Add barrier.
(tests): Add ex9. Add rule to build ex9.
* Versions: Export barrier functions.
* barrier.c: New file.
* Examples/ex9.c: New file.
* sysdeps/pthread/pthread.h: Add barrier data types and declarations.
* sysdeps/pthread/bits/pthreadtypes.h: Likewise.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-06-19 H.J. Lu <hjl@gnu.org>
* spinlock.h (HAS_COMPARE_AND_SWAP): Defined if
HAS_COMPARE_AND_SWAP_WITH_RELEASE_SEMANTICS is defined.
(compare_and_swap_with_release_semantics): New. Default to
compare_and_swap if HAS_COMPARE_AND_SWAP_WITH_RELEASE_SEMANTICS
is not defined.
* spinlock.c (__pthread_unlock): Call
compare_and_swap_with_release_semantics () instead of
compare_and_swap ().
2000-06-19 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/timer_create.c: Use _set_errno instead of assigning
to errno directly.
* sysdeps/pthread/timer_delete.c: Likewise.
* sysdeps/pthread/timer_getoverr.c: Likewise.
* sysdeps/pthread/timer_gettime.c: Likewise.
* sysdeps/pthread/timer_settime.c: Likewise.
2000-06-13 Kaz Kylheku <kaz@ashi.footprints.net>
Timer nodes are now reference counted, and can be marked
as deleted. This allows for the safe release of the global mutex
in the middle without losing the timer being operated on.
* sysdeps/pthread/posix-timer.h (struct timer_node): The inuse
member is now an enum with three values, so that an intermediate
state can be represented (deleted but not free for reuse yet).
New refcount member added.
* sysdeps/pthread/timer_routines.c: Likewise.
* sysdeps/pthread/posix-timer.h (timer_addref, timer_delref,
timer_valid): New inline functions added.
* sysdeps/pthread/timer_gettime.c (timer_gettime): Function
restructured, recursive deadlock bug fixed.
* sysdeps/pthread/timer_gettime.c (timer_gettime): Uses new
timer_addref to ensure that timer won't be deleted while mutex is not
held. Also uses timer_invalid to perform validation of timer handle.
* sysdeps/pthread/timer_settime.c (timer_settime): Likewise.
* sysdeps/pthread/timer_getoverr.c (timer_getoverrun): Likewise.
2000-06-14 Ulrich Drepper <drepper@redhat.com>
* shlib-versions: Add entry for SH.
Patch by Kaz Kojima <kkojima@rr.iij4u.or.jp>.
Update. 2000-06-13 Kaz Kylheku <kaz@ashi.footprints.net> A few optimizations. Got rid of unnecessary wakeups of timer threads, tightened up some critical regions and micro-optimized some list manipulation code. * sysdeps/pthread/timer_routines.c (__timer_thread_queue_timer): Returns int value now to indicate whether timer was queued at head. * sysdeps/pthread/posix-timer.h: Likewise. * sysdeps/pthread/timer_settime.c (timer_settime): Takes advantage of new return value from __timer_thread_queue_timer to avoid waking up timer thread unnecessarily. * sysdeps/pthread/posix-timer.h (timer_id2ptr): No longer checks inuse flag, because this requires mutex to be held. Callers updated to do the check when they have the mutex. * sysdeps/pthread/timer_getoverr.c: Add check for inuse here. * sysdeps/pthread/timer_settime.c (timer_settime): Tighter critical regions: avoids making system calls while holding timer mutex, and a few computations were moved outside of the mutex as well. * sysdeps/pthread/timer_gettime.c (timer_gettime): Likewise. * sysdeps/pthread/posix-timer.h (list_unlink_ip): Function name changed to list_unlink_ip, meaning idempotent. Pointer manipulation changed to get better better code out of gcc. * sysdeps/pthread/timer_routines.c (list_unlink): Non-idempotent version of list_unlink added here. * sysdeps/pthread/timer_delete.c: Use appropriate list unlink function in all places: idempotent one for timers, non-idempotent one for thread nodes. * sysdeps/pthread/timer_settime: Likewise. * sysdeps/pthread/timer_routines.c: Likewise.
2000-06-14 06:13:45 +00:00
2000-06-13 Kaz Kylheku <kaz@ashi.footprints.net>
A few optimizations. Got rid of unnecessary wakeups of timer threads,
tightened up some critical regions and micro-optimized some list
manipulation code.
* sysdeps/pthread/timer_routines.c (__timer_thread_queue_timer):
Returns int value now to indicate whether timer was queued at head.
* sysdeps/pthread/posix-timer.h: Likewise.
* sysdeps/pthread/timer_settime.c (timer_settime): Takes advantage of
new return value from __timer_thread_queue_timer to avoid waking
up timer thread unnecessarily.
* sysdeps/pthread/posix-timer.h (timer_id2ptr): No longer checks
inuse flag, because this requires mutex to be held. Callers updated
to do the check when they have the mutex.
* sysdeps/pthread/timer_getoverr.c: Add check for inuse here.
* sysdeps/pthread/timer_settime.c (timer_settime): Tighter critical
regions: avoids making system calls while holding timer mutex, and
a few computations were moved outside of the mutex as well.
* sysdeps/pthread/timer_gettime.c (timer_gettime): Likewise.
* sysdeps/pthread/posix-timer.h (list_unlink_ip): Function name changed
to list_unlink_ip, meaning idempotent. Pointer manipulation
changed to get better better code out of gcc.
* sysdeps/pthread/timer_routines.c (list_unlink): Non-idempotent
version of list_unlink added here.
* sysdeps/pthread/timer_delete.c: Use appropriate list unlink
function in all places: idempotent one for timers, non-idempotent
one for thread nodes.
* sysdeps/pthread/timer_settime: Likewise.
* sysdeps/pthread/timer_routines.c: Likewise.
2000-06-13 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_TIMERS): Define.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
* sysdeps/pthread/Makefile: Remove tests definition.
Update. 2000-06-12 Kazumoto Kojima <kkojima@rr.iij4u.or.jp> Yutaka Niibe <gniibe@chroot.org> * sysdeps/sh/Dist: New file. * sysdeps/sh/Implies: New file. * sysdeps/sh/gmp-mparam.h: New file. * sysdeps/sh/init-first.c: New file. * sysdeps/sh/machine-gmon.h: New file. * sysdeps/sh/memcpy.S: New file. * sysdeps/sh/memprof.h: New file. * sysdeps/sh/memset.S: New file. * sysdeps/sh/sh3/__longjmp.S: New file. * sysdeps/sh/sh3/bits/endian.h: New file. * sysdeps/sh/sh3/bits/huge_val.h: New file. * sysdeps/sh/sh3/bits/setjmp.h: New file. * sysdeps/sh/sh3/bsd-_setjmp.S: New file. * sysdeps/sh/sh3/bsd-setjmp.S: New file. * sysdeps/sh/sh3/dl-machine.h: New file. * sysdeps/sh/sh3/elf/initfini.c: New file. * sysdeps/sh/sh3/elf/start.S: New file. * sysdeps/sh/sh3/setjmp.S: New file. * sysdeps/sh/sh3/sys/ucontext.h: New file. * sysdeps/sh/sh4/__longjmp.S: New file. * sysdeps/sh/sh4/bits/endian.h: New file. * sysdeps/sh/sh4/bits/huge_val.h: New file. * sysdeps/sh/sh4/bits/setjmp.h: New file. * sysdeps/sh/sh4/bsd-_setjmp.S: New file. * sysdeps/sh/sh4/bsd-setjmp.S: New file. * sysdeps/sh/sh4/dl-machine.h: New file. * sysdeps/sh/sh4/elf/initfini.c: New file. * sysdeps/sh/sh4/elf/start.S: New file. * sysdeps/sh/sh4/fpu/bits/fenv.h: New file. * sysdeps/sh/sh4/fpu/bits/huge_val.h: New file. * sysdeps/sh/sh4/fpu/bits/mathdef.h: New file. * sysdeps/sh/sh4/fpu/fclrexcpt.c: New file. * sysdeps/sh/sh4/fpu/fegetenv.c: New file. * sysdeps/sh/sh4/fpu/fegetround.c: New file. * sysdeps/sh/sh4/fpu/feholdexcpt.c: New file. * sysdeps/sh/sh4/fpu/fesetenv.c: New file. * sysdeps/sh/sh4/fpu/fesetround.c: New file. * sysdeps/sh/sh4/fpu/fpu_control.h: New file. * sysdeps/sh/sh4/fpu/fraiseexcpt.c: New file. * sysdeps/sh/sh4/fpu/fsetexcptflg.c: New file. * sysdeps/sh/sh4/fpu/ftestexcept.c: New file. * sysdeps/sh/sh4/fpu/libm-test-ulps: New file. * sysdeps/sh/sh4/setjmp.S: New file. * sysdeps/sh/sh4/sys/ucontext.h: New file. * sysdeps/sh/strlen.S: New file. * sysdeps/sh/sysdep.h: New file. * sysdeps/unix/sh/sysdep.S: New file. * sysdeps/unix/sh/sysdep.h: New file. * sysdeps/unix/sysv/linux/sh/Dist: New file. * sysdeps/unix/sysv/linux/sh/Makefile: New file. * sysdeps/unix/sysv/linux/sh/Versions: New file. * sysdeps/unix/sysv/linux/sh/bits/mman.h: New file. * sysdeps/unix/sysv/linux/sh/bits/resource.h: New file. * sysdeps/unix/sysv/linux/sh/brk.c: New file. * sysdeps/unix/sysv/linux/sh/chown.c: New file. * sysdeps/unix/sysv/linux/sh/clone.S: New file. * sysdeps/unix/sysv/linux/sh/fchown.c: New file. * sysdeps/unix/sysv/linux/sh/fxstat.c: New file. * sysdeps/unix/sysv/linux/sh/getegid.c: New file. * sysdeps/unix/sysv/linux/sh/geteuid.c: New file. * sysdeps/unix/sysv/linux/sh/getgroups.c: New file. * sysdeps/unix/sysv/linux/sh/getresgid.c: New file. * sysdeps/unix/sysv/linux/sh/getresuid.c: New file. * sysdeps/unix/sysv/linux/sh/getrlimit.c: New file. * sysdeps/unix/sysv/linux/sh/getrlimit64.c: New file. * sysdeps/unix/sysv/linux/sh/getuid.c: New file. * sysdeps/unix/sysv/linux/sh/lchown.c: New file. * sysdeps/unix/sysv/linux/sh/lxstat.c: New file. * sysdeps/unix/sysv/linux/sh/msgctl.c: New file. * sysdeps/unix/sysv/linux/sh/oldgetrlimit64.c: New file. * sysdeps/unix/sysv/linux/sh/pipe.S: New file. * sysdeps/unix/sysv/linux/sh/profil-counter.h: New file. * sysdeps/unix/sysv/linux/sh/semctl.c: New file. * sysdeps/unix/sysv/linux/sh/setegid.c: New file. * sysdeps/unix/sysv/linux/sh/seteuid.c: New file. * sysdeps/unix/sysv/linux/sh/setfsgid.c: New file. * sysdeps/unix/sysv/linux/sh/setfsuid.c: New file. * sysdeps/unix/sysv/linux/sh/setgid.c: New file. * sysdeps/unix/sysv/linux/sh/setgroups.c: New file. * sysdeps/unix/sysv/linux/sh/setregid.c: New file. * sysdeps/unix/sysv/linux/sh/setresgid.c: New file. * sysdeps/unix/sysv/linux/sh/setresuid.c: New file. * sysdeps/unix/sysv/linux/sh/setreuid.c: New file. * sysdeps/unix/sysv/linux/sh/setrlimit.c: New file. * sysdeps/unix/sysv/linux/sh/setuid.c: New file. * sysdeps/unix/sysv/linux/sh/sh3/register-dump.h: New file. * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: New file. * sysdeps/unix/sysv/linux/sh/shmctl.c: New file. * sysdeps/unix/sysv/linux/sh/sigcontextinfo.h: New file. * sysdeps/unix/sysv/linux/sh/socket.S: New file. * sysdeps/unix/sysv/linux/sh/sys/io.h: New file. * sysdeps/unix/sysv/linux/sh/sys/ucontext.h: New file. * sysdeps/unix/sysv/linux/sh/sys/user.h: New file. * sysdeps/unix/sysv/linux/sh/syscalls.list: New file. * sysdeps/unix/sysv/linux/sh/sysdep.S: New file. * sysdeps/unix/sysv/linux/sh/sysdep.h: New file. * sysdeps/unix/sysv/linux/sh/vfork.S: New file. * sysdeps/unix/sysv/linux/sh/xstat.c: New file.
2000-06-12 20:50:37 +00:00
2000-06-12 Kazumoto Kojima <kkojima@rr.iij4u.or.jp>
Yutaka Niibe <gniibe@chroot.org>
* sysdeps/sh/pspinlock.c: New file.
* sysdeps/sh/pt-machine.h: New file.
2000-06-12 Ulrich Drepper <drepper@redhat.com>
Update. 2000-06-12 Ulrich Drepper <drepper@redhat.com> * Rules (%.out): Define GCONV_PATH in the environment. * assert/Depend: New file. * iconvdata/Depend: New file. * intl/Depend: New file. * timezone/Makefile (build-testdata): Add GCONV_PATH to environment. * intl/tst-gettext.sh: Likewise. * iconv/Makefile (routines): Add gconv_trans. * iconv/gconv_trans.c: New file. * iconv/gconv.h (struct __gconv_trans_data): New type. (__gconv_fct): New parameter with starting position in output buffer. (__gconv_trans_fct, __gconv_trans_context_fct, __gconv_trans_query_fct, __gconv_trans_init_fct, __gconv_trans_end_fct): New types. (struct __gconv_step): Add new member __trans. * iconv/gconv_int.h: Pretty print prototypes. (gconv_transliterate): New prototype. (__BUILTIN_TRANS): Update for new conversion function interface. * iconv/gconv.c (__gconv): Pass new parameter to conversion function. * iconv/gconv_open.c (__gconv_open): Recognize error handling suffix in names, find appropriate function, and install in the conversion steps it can be used. * iconv/skeleton.c: Add additional parameter for beginning of output buffer. Change calls of downstream functions. * iconv/loop.c: Change loop function interface completely. Pass in step and step_data structure. Remove optimization for BODY with NEED_LENGTH_TEST == 0. * iconv/gconv_simple.c: Update interfaces of functions. Insert appropriate error handling code to use transliteration steps. Remove optimization for BODY with NEED_LENGTH_TEST == 0. * iconvdata/8bit-gap.c: Likewise. * iconvdata/8bit-generic.c: Likewise. * iconvdata/ansi_x3.110.c: Likewise. * iconvdata/big5.c: Likewise. * iconvdata/big5hkscs.c: Likewise. * iconvdata/euc-cn.c: Likewise. * iconvdata/euc-jp.c: Likewise. * iconvdata/euc-kr.c: Likewise. * iconvdata/euc-tw.c: Likewise. * iconvdata/gbgbk.c: Likewise. * iconvdata/gbk.c: Likewise. * iconvdata/iso-2022-cn.c: Likewise. * iconvdata/iso-2022-jp.c: Likewise. * iconvdata/iso-2022-kr.c: Likewise. * iconvdata/iso646.c: Likewise. * iconvdata/iso8859-1.c: Likewise. * iconvdata/iso_6937-2.c: Likewise. * iconvdata/iso_6937.c: Likewise. * iconvdata/johab.c: Likewise. * iconvdata/sjis.c: Likewise. * iconvdata/t.61.c: Likewise. * iconvdata/uhc.c: Likewise. * iconvdata/unicode.c: Likewise. * iconvdata/utf-16.c: Likewise. * libio/iofwide.c: Adjust to new interface of gconv functions. Use DL_CALL_FCT. * wcsmbs/btowc.c: Likewise. * wcsmbs/mbrtowc.c: Likewise. * wcsmbs/mbsnrtowcs.c: Likewise. * wcsmbs/mbsrtowcs.c: Likewise. * wcsmbs/wcrtomb.c: Likewise. * wcsmbs/wcsnrtombs.c: Likewise. * wcsmbs/wcsrtombs.c: Likewise. * wcsmbs/wctob.c: Likewise.
2000-06-12 19:47:50 +00:00
* Makefile (tests): Add joinrace.
* Examples/ex6.c: Test return value of pthread_join.
2000-06-11 Geoff Keating <geoffk@cygnus.com>
* sysdeps/powerpc/pspinlock.c (__pthread_spin_lock): Implement.
(__pthread_spin_trylock): Implement.
(__pthread_spin_unlock): Implement.
(__pthread_spin_init): Implement.
(__pthread_spin_destroy): Implement.
2000-06-10 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/timer_routines.c (list_append): Little fix to
really append the entry.
2000-06-10 Andreas Jaeger <aj@suse.de>
* lockfile.c (__fresetlockfiles): Remove unused variable fp.
2000-06-10 Kaz Kylheku <kaz@ashi.footprints.net>
* sysdeps/pthread/timer_create.c: Thread matching now done on
clock type as well as thread attributes.
There are individual global signal-delivering threads for
different clock types.
* sysdeps/pthread/posix-timer.h: Likewise.
* sysdeps/pthread/timer_routines.c: Likewise.
* sysdeps/pthread/timer_routines.c: Thread allocation and
deallocation function now remembers to put thread on active
list and remove from active list.
Thus now the feature of binding multiple timers
to a single thread actually works.
2000-06-10 Ulrich Drepper <drepper@redhat.com>
* pthread.c (__pthread_create_2_1): Optimize a bit.
* internals.h (invalid_handle): Also test for p_terminated != 0.
(nonexisting_handle): New function. Same as old invalid_handle.
* join.c (pthread_join): Use nonexisting_handle instead of
invalid_handle to test for acceptable thread handle.
* manager.c (pthread_handle_free): Likewise.
2000-06-10 08:02:29 +00:00
* joinrace.c: New file.
Reported by Permaine Cheung <pcheung@cygnus.com>.
2000-06-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/timer_routines.c (__timer_thread_queue_timer):
Correct handling of matching variable.
* sysdeps/pthread/tst-timer.c (main): Rewrite initializers to
avoid warnings.
* sysdeps/pthread/timer_routines.c (__timer_thread_queue_timer):
Be prepared for empty timer list.
* sysdeps/pthread/timer_create.c (timer_create): Correct names of
CPUTIME clock ID. Add support for thread clocks.
* sysdeps/pthread/posix-timer.h (timer_ptr2id): Operands in
subtraction were switched.
* sysdeps/pthread/timer_routines.c (init_module): Use
THREAD_MAXNODES threads.
* sysdeps/pthread/posix-timer.h (struct timer_node): Add creator_pid.
* sysdeps/pthread/timer_create.c: Fill in creator_pid.
* sysdeps/pthread/timer_routines.c (thread_expire_timer): Send signal
with sigqueueinfo is this system call is available.
* sysdeps/pthread/timer_create.c (timer_create): Allow
CLOCK_CPUTIME if _POSIX_CPUTIME is defined.
* sysdeps/pthread/Makefile: New file. Add rules to build timer
functionality.
* sysdeps/unix/sysv/linux/bits/local_lim.h: Add TIMER_MAX.
2000-06-04 Kaz Kylheku <kaz@ashi.footprints.net>
* sysdeps/pthread/posix-timer.h: New file.
* sysdeps/pthread/timer_create.c: New file.
* sysdeps/pthread/timer_delete.c: New file.
* sysdeps/pthread/timer_getoverr.c: New file.
* sysdeps/pthread/timer_gettime.c: New file.
* sysdeps/pthread/timer_routines.c: New file.
* sysdeps/pthread/timer_settime.c: New file.
* sysdeps/pthread/tst-timer.c: New file.
2000-06-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/local_lim.h: Remove OPEN_MAX and
LINK_MAX definitions if necessary.
2000-06-04 Kaz Kylheku <kaz@ashi.footprints.net>
Added missing fork time handling of global libio lock.
* lockfile.c (__fresetlockfiles): Now also resets the list lock,
not just the individual stream locks. Rewritten to use new
iterator interface provided by libio rather than accessing
global variable.
* lockfile.c (__flockfilelist, _funlockfilelist): New functions
which lock and unlock the stream list using the new interface
provied by libio.
* internals.h: Likewise.
* ptfork.c (__fork): Now calls __flockfilelist before fork,
and __funlockfilelist in the parent after the fork.
Child still calls __fresetlockfiles as before.
* linuxthreads.texi: Now explains what happens to streams at
fork time. Also whole new section on forking and thread added.
Definition of pthread_atfork moved out of Miscellaneous Functions
to this new section.
2000-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/sparc32/sparcv9/pspinlock.c (__pthread_spin_lock):
Add missing register.
* sysdeps/sparc/sparc64/pspinlock.c (__pthread_spin_lock): Likewise.
2000-06-02 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/sparc32/pspinlock.c: Implement spinlocks.
* sysdeps/sparc/sparc32/sparcv9/pspinlock.c: New.
* sysdeps/sparc/sparc64/pspinlock.c: Implement spinlocks.
2000-05-31 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/pspinlock.c: Implement spinlocks.
2000-05-28 Ulrich Drepper <drepper@redhat.com>
* spinlock.c (__pthread_lock): Remove ASSERT.
* Makefile (tests): Add ex8.
* Examples/ex8.c: New file.
2000-05-12 Kaz Kylheku <kaz@ashi.footprints.net>
Bugfix: The pthread_atfork mechanism now takes care of its
own internal mutex at fork time.
* ptfork.c (__fork): Revised so that the mutex is held across
the fork operation and while the handlers are called, and so that
the child resets the mutex.
* linuxthreads.texi: Updated pthread_atfork documentation to make
it clear that fork and pthread_atfork can't be reentered from
atfork handlers, that pthread_atfork and fork are mutually atomic,
and that the handlers are inherited by the child process.
2000-05-24 Ulrich Drepper <drepper@redhat.com>
* Makefile (libpthread-routines): Add pspinlock.
* cancel.c: Rename __pthread_spin_unlock back to __pthread_unlock.
Use struct _pthread_fastlock instead of pthread_spinlock_t.
* condvar.c: Likewise.
* internals.h: Likewise.
* join.c: Likewise.
* manager.c: Likewise.
* mutex.c: Likewise.
* pthread.c: Likewise.
* rwlock.c: Likewise.
* semaphore.c: Likewise.
* signals.c: Likewise.
* spinlock.h: Likewise.
* spinlock.c: Likewise. Remove pthread_spin_lock functions.
* sysdeps/alpha/pspinlock.c: New file.
* sysdeps/arm/pspinlock.c: New file.
* sysdeps/i386/pspinlock.c: New file.
* sysdeps/m68k/pspinlock.c: New file.
* sysdeps/mips/pspinlock.c: New file.
* sysdeps/powerpc/pspinlock.c: New file.
* sysdeps/sparc/sparc32/pspinlock.c: New file.
* sysdeps/sparc/sparc64/pspinlock.c: New file.
* sysdeps/pthread/bits/pthreadtypes.h: Remove pthread_spinlock_t
back to _pthread_fastlock. Define new pthread_spinlock_t.
2000-05-24 Andreas Jaeger <aj@suse.de>
* sysdeps/i386/i686/pt-machine.h: Only use LDT on newer kernels.
2000-05-21 Jakub Jelinek <jakub@redhat.com>
* manager.c (pthread_handle_create): Initialize p_res._sock to -1.
2000-05-13 Jakub Jelinek <jakub@redhat.com>
* internals.h (__RES_PTHREAD_INTERNAL): Define.
2000-05-06 Kaz Kylheku <kaz@ashi.footprints.net>
* mutex.c (pthread_once): IN_PROGRESS state of pthread_once_t
object state is represented with additional bits which distinguish
whether that state was set up in the current process, or
in an ancestor process. If that state was set in an ancestor,
it means that a fork happened while thread was executing the init
function. In that case, the state is reset to NEVER.
* mutex.c (__pthread_once_fork_prepare): New function.
(__pthread_once_fork_child): Likewise
(__pthread_once_fork_parent): Likewise
(__pthread_reset_pthread_once): Removed.
* ptfork.c (__fork): Call new handlers in mutex.c.
* internals.h: Declarations of new mutex.c functions added.
Declaration of removed function deleted.
* linuxthreads.texi: Updated documentation about pthread_once
to clarify what happens under cancellation and forking.
2000-05-06 Kaz Kylheku <kaz@ashi.footprints.net>
* internals.h: New thread manager request type, REQ_KICK.
* join.c (pthread_exit): main thread now calls exit() instead
of _exit() in order to proper process cleanup.
* manager.c (__pthread_manager): Do not terminate manager
after unblocking main thread; wait for main thread's
REQ_PROCESS_EXIT request instead.
Also, added REQ_KICK case to handle new request; this just does
nothing.
* manager.c (pthread_exited): Do not terminate manager after
unblocking main thread.
* manager.c (__pthread_manager_sighandler): If the main thread
is waiting for all other threads to die, send a REQ_KICK into
the thread manager request pipe to get it to clean out the threads
and unblock the main thread as soon as possible. This fixes
the 2000 millisecond hang on shutdown bug.
* Examples/ex7.c: New file, tests shutdown behavior when all threads
including the main one call pthread_exit(), or implicitly do so.
* Makefile (tests): Add ex7.
2000-05-05 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/i386/getcpuclockid.c
(pthread_getcpuclockid): Correct test for ourselves.
2000-05-05 Ulrich Drepper <drepper@redhat.com>
* internals.h (struct _pthread_descr_struct): Reorganization.
Allocate room for 16 pointers at head of the structure for future
thread-local data handling. Move p_self member in this area.
* manager.c (pthread_handle_create): Adjust use of p_self.
* sysdeps/i386/useldt.h (THREAD_SELF): Likewise.
* pthread.c (__pthread_initial_thread): Adjust initialization.
(__pthread_manager_thread): Likewise.
2000-04-29 Bruno Haible <haible@clisp.cons.org>
* join.c (pthread_exit): Use THREAD_GETMEM_NC instead of THREAD_GETMEM
for eventmask larger than 1 word.
2000-04-27 Ulrich Drepper <drepper@redhat.com>
* Versions [libpthread] (GLIBC_2.2): Add __pthread_initialize_minimal.
* pthread.c (__pthread_initialize_minimal): New function. Perform
minimal initialization.
(pthread_initialize): Remove this code here.
* sysdeps/i386/i686/pt-machine.h: Include "../useldt.h" again. We
are working around the problem in glibc.
2000-04-25 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/i686/pt-machine.h: Do not use "../useldt.h" for
now. First gcc must be fixed (more concrete: libgcc).
2000-04-24 Ulrich Drepper <drepper@redhat.com>
* pthread.c: Remove special treatement for interrupt handlers on x86.
* manager.c (pthread_free): Use FREE_THREAD not FREE_THREAD_SELF.
* sysdeps/i386/useldt.h: Use "q" constraint instead of "r" where
necessary.
* sysdeps/i386/i686/pt-machine.h: Include "../useldt.h".
2000-04-24 Mark Kettenis <kettenis@gnu.org>
* join.c (pthread_exit): Set p_terminated after reporting the
termination event instead of before.
2000-04-20 Jakub Jelinek <jakub@redhat.com>
* sysdeps/pthread/bits/libc-lock.h: Only declare __pthread_rwlock_*
if __USE_UNIX98.
2000-04-18 Andreas Jaeger <aj@suse.de>
* Versions: Use ld instead of ld.so.
2000-04-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/bits/sigcontext.h (struct sigcontext):
Remove the typedef keyword.
2000-04-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/sparc/sparc64/pt-machine.h (MEMORY_BARRIER): Use membar,
not stbar.
(READ_MEMORY_BARRIER): Define.
* spinlock.c (__pthread_spin_unlock): Use READ_MEMORY_BARRIER, not
MEMORY_BARRIER.
* internals.h (READ_MEMORY_BARRIER): Define if not defined in sysdep
headers.
2000-04-17 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/getcpuclockid.c
(pthread_getcpuclockid): Don't compare thread_id with thread_self,
use thread_handle().
2000-04-16 Ulrich Drepper <drepper@redhat.com>
* condvar.c (pthread_cond_timedwait_relative): Don't test for owner
if fast mutex is used. Don't initialize `already_canceled' twice.
Correctly test for return value of timedsuspend.
* pthread.c: Correct long-time braino. We never set SA_SIGINFO and
therefore don't need the _rt versions of the signal handlers.
2000-04-15 Ulrich Drepper <drepper@redhat.com>
* pthread.c (pthread_yield): New function.
* sysdeps/pthread/pthread.h (pthread_yield): Add prototype.
* Versions [libpthread] (GLIBC_2.2): Add pthread_yield.
* internals.h: Declare __pthread_yield.
* pthread.c (pthread_initialize): Avoid a bit more code if
realtime signals are known to exist.
* pthread.c: Is __ASSUME_REALTIME_SIGNALS then avoid generating code
to dynamically detect RT signals and avoid generating compatibility
functions with old kernel.
* restart.h (restart) [__ASSUME_REALTIME_SIGNALS]: Use
__pthread_restart_new directly.
(suspend) [__ASSUME_REALTIME_SIGNALS]: Use
__pthread_wait_for_restart_signal directly.
(timedsuspend) [__ASSUME_REALTIME_SIGNALS]: Use
__pthread_timedsuspend_new directly.
2000-04-15 Ulrich Drepper <drepper@redhat.com>
* condvar.c: Remove all the special code to handle cond_timedwait.
Use timedsuspend instead.
* internals.h: Declare __pthread_timedsuspend_old,
__pthread_timedsuspend_new, and __pthread_timedsuspend.
Remove declaration of __pthread_init_condvar.
* pthread.c: Define __pthread_timedsuspend variable.
(__pthread_timedsuspend_old): New function. Timed suspension
implementation for old Linux kernels.
(__pthread_timedsuspend_new): New function. Timed suspension
implementation for new Linux kernels.
* restart.h (timedsuspend): New function. Call appropriate
suspension function through __pthread_timedsuspend.
* semaphore.c (sem_timedwait): Use timedsuspend, don't duplicate
the code.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
Update. 2000-04-15 Ulrich Drepper <drepper@redhat.com> * posix/Makefile (headers): Add spawn.h. (distribute): Add spawn_int.h. (routines): Add spawn_faction_init, spawn_faction_destroy, spawn_faction_addclose, spawn_faction_addopen, spawn_faction_adddup2, spawnattr_init, spawnattr_destroy, spawnattr_getdefault, spawnattr_setdefault, spawnattr_getflags, spawnattr_setflags, spawnattr_getpgroup, spawnattr_setpgroup, spawn, spawnp, and spawni. * posix/Versions [libc] (GLIBC_2.2): Add posix_spawn_file_actions_init, posix_spawn_file_actions_destroy, posix_spawn_file_actions_addclose, posix_spawn_file_actions_addopen, posix_spawn_file_actions_adddup2, posix_spawnattr_init, posix_spawnattr_destroy, posix_spawnattr_getdefault, posix_spawnattr_setdefault, posix_spawnattr_getflags, posix_spawnattr_setflags, posix_spawnattr_getpgroup, posix_spawnattr_setpgroup, posix_spawn, and posix_spawnp. * posix/spawn.c: New file. * posix/spawn.h: New file. * posix/spawn_faction_addclose.c: New file. * posix/spawn_faction_adddup2.c: New file. * posix/spawn_faction_addopen.c: New file. * posix/spawn_faction_destroy.c: New file. * posix/spawn_faction_init.c: New file. * posix/spawn_int.h: New file. * posix/spawnattr_destroy.c: New file. * posix/spawnattr_getdefault.c: New file. * posix/spawnattr_getflags.c: New file. * posix/spawnattr_getpgroup.c: New file. * posix/spawnattr_getschedparam.c: New file. * posix/spawnattr_getschedpolicy.c: New file. * posix/spawnattr_getsigmask.c: New file. * posix/spawnattr_init.c: New file. * posix/spawnattr_setdefault.c: New file. * posix/spawnattr_setflags.c: New file. * posix/spawnattr_setpgroup.c: New file. * posix/spawnattr_setschedparam.c: New file. * posix/spawnattr_setschedpolicy.c: New file. * posix/spawnattr_setsigmask.c: New file. * posix/spawni.c: New file. * posix/spawnp.c: New file. * sysdeps/mach/hurd/bits/posix_opt.h: Add _POSIX_SPAWN. * sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
2000-04-15 16:51:16 +00:00
* internals.h (WRITE_MEMORY_BARRIER): Define as MEMORY_BARRIER if
undefined.
* spinlock.c: Use WRITE_MEMORY_BARRIER instead of MEMORY_BARRIER
where possible.
* sysdeps/alpha/pt-machine.h: Define WRITE_MEMORY_BARRIER.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Add _POSIX_SPAWN.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
2000-04-14 Andreas Jaeger <aj@suse.de>
* weaks.c: Fix typo.
* shlib-versions (mips.*-.*-linux.*): Support only GLIBC 2.0 and
2.2 for linuxthreads.
2000-04-13 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/getcpuclockid.c
(pthread_getcpuclockid): Fix typo.
2000-04-12 Ulrich Drepper <drepper@redhat.com>
* Makefile (libpthread-routines): Add getcpuclockid.
* Versions [libpthread] (GLIBC_2.2): Add pthread_getcpuclockid.
* sysdeps/pthread/getcpuclockid.c: New file.
* sysdeps/unix/sysv/linux/i386/getcpuclockid.c: New file.
* sysdeps/pthread/pthread.h: Add prototype for pthread_getcpuclockid.
* sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_SPIN_LOCKS):
Defined.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
* sysdeps/pthread/pthread.h: Add prototypes for pthread_spin_init,
pthread_spin_destroy, pthread_spin_lock, pthread_spin_trylock,
and pthread_spin_unlock.
* sysdeps/pthread/bits/pthreadtypes.h: Change struct _pthread_fastlock
into pthread_spinlock_t. Change all uses.
* spinlock.c: Implement pthread_spin_lock.
Rename __pthread_unlock to __pthread_spin_unlock and define weak
alias for real name.
Define pthread_spin_trylock, pthread_spin_init, and
pthread_spin_destroy.
Change all uses of _pthread_fastlock to pthread_spinlock_t.
* spinlock.h: Rename __pthread_unlock to __pthread_spin_unlock.
Change all uses of _pthread_fastlock to pthread_spinlock_t.
* Versions [libpthread] (GLIBC_2.2): Add pthread_spin_init,
pthread_spin_destroy, pthread_spin_lock, pthread_spin_trylock,
and pthread_spin_unlock.
* cancel.c: Use __pthread_spin_unlock instead of __pthread_unlock.
Change all uses of _pthread_fastlock to pthread_spinlock_t.
* condvar.c: Likewise.
* internals.h: Likewise.
* join.c: Likewise.
* manager.c: Likewise.
* mutex.c: Likewise.
* pthread.c: Likewise.
* rwlock.c: Likewise.
* semaphore.c: Likewise.
* signals.c: Likewise.
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Add various new POSIX
macros.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: New file.
2000-04-11 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Add
_POSIX_SHARED_MEMORY_OBJECTS.
2000-04-11 Andreas Jaeger <aj@suse.de>
* sysdeps/mips/pt-machine.h (MEMORY_BARRIER): Define.
(__compare_and_swap): Mark as modifying memory.
2000-04-11 Geoff Keating <geoffk@cygnus.com>
* sysdeps/powerpc/pt-machine.h (MEMORY_BARRIER): Don't be
__volatile__.
(__compare_and_swap): Replace other 'sync' with MEMORY_BARRIER.
Don't have the 'asm' __volatile__.
2000-04-11 Ulrich Drepper <drepper@redhat.com>
* internals.h: Define MEMORY_BARRIER as empty if not defined already.
* spinlock.c (__pthread_lock): Add memory barriers.
(__pthread_unlock): Likewise.
* sysdeps/alpha/pt-machine.h (MEMORY_BARRIER): Define using mb
instruction.
(RELEASE): Not needed anymore.
(__compare_and_swap): Mark asm as modifying memory.
* sysdeps/powerpc/pt-machine.h (sync): Remove. Replace with definition
of MEMORY_BARRIER.
(__compare_and_swap): Use MEMORY_BARRIER instead of sync.
* sysdeps/sparc/sparc32/pt-machine.h (RELEASE): Not needed anymore.
(MEMORY_BARRIER): Define using stbar.
* sysdeps/sparc/sparc64/pt-machine.h (MEMORY_BARRIER): Define using
stbar.
(__compare_and_swap): Use MEMORY_BARRIER to ensure ordering.
Patch by Xavier Leroy <Xavier.Leroy@inria.fr> based on comments by
Mike Burrows <m3b@pa.dec.com>.
2000-04-09 Ulrich Drepper <drepper@redhat.com>
* signals.c (sigaction): Fix return value for the case SIG is one
of the signals the implementation uses.
Patch by Xavier.Leroy@inria.fr.
2000-04-01 Andreas Jaeger <aj@suse.de>
* attr.c: Use shlib-compat macros.
* oldsemaphore.c: Likewise.
* pthread.c: Likewise.
* weaks.c: Likewise.
2000-03-26 Ulrich Drepper <drepper@redhat.com>
* semaphore.c (sem_timedwait): New function.
Patch by Carl Mailloux <carlm@oricom.ca>.
* semaphore.h: Declare sem_timedwait.
* Versions [libpthread] (GLIBC_2.2): Add sem_timedwait.
2000-03-26 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/pthread/Makefile: File removed.
2000-03-23 Ulrich Drepper <drepper@redhat.com>
* mutex.c (__pthread_reset_pthread_once): Reset once_masterlock.
* internals.h (__pthread_reset_pthread_once): Add prototype.
* ptfork.c (__fork): Call __pthread_reset_pthread_once.
* manager.c (pthread_handle_create): Store ID of new thread before
clone call.
2000-03-21 Ulrich Drepper <drepper@redhat.com>
* attr.c: Use new macros from shlib-compat.h to define versions.
* oldsemaphore.c: Likewise.
* semaphore.c: Likewise.
* weaks.c: Likewise.
* pthread.c: Update for new SHLIB_COMPAT definition.
* manager.c (__pthread_manager): Unmask debug signal.
* pthread.c (pthread_initialize): Test for address of __dso_handle
being NULL, not value. Use __on_exit, not on_exit.
Patch by Andreas Jaeger <aj@suse.de>.
* pthread.c: Use new macros from shlib-compat.h to define versions.
2000-03-19 Ulrich Drepper <drepper@redhat.com>
* pthread.c (pthread_initialize): Instead of on_exit use
__cxa_atexit if __dso_label is available to allow unloading the
libpthread shared library.
2000-03-16 Ulrich Drepper <drepper@redhat.com>
* condvar.c: Make tests for ownership of mutex less strict.
2000-03-14 Ulrich Drepper <drepper@redhat.com>
* condvar.c (pthread_cond_wait): Check whether mutex is owned by
current thread and return error if not.
(pthread_cond_timedwait_relative_old): Likewise.
(pthread_cond_timedwait_relative_new): Likewise.
* mutex.c (__pthread_once): Handle cancelled init function correctly.
(pthread_once_cancelhandler): New function.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-03-14 Andreas Jaeger <aj@suse.de>
* pthread.c (pthread_handle_sigcancel_rt): GS has been renamed to
REG_GS.
(pthread_handle_sigrestart_rt): Likewise.
* signals.c (pthread_sighandler_rt): Likewise.
2000-03-02 Andreas Jaeger <aj@suse.de>
* sysdeps/pthread/bits/libc-lock.h: Fix typo.
Reported by Sean Chen <sean.chen@turbolinux.com>.
2000-02-28 Andreas Jaeger <aj@suse.de>
* rwlock.c: Fix typo.
Update. 2000-02-27 Ulrich Drepper <drepper@redhat.com> * conform/conformtest.pl (@headers): Add wordexp.h, wctype.h, wchar.h, varargs.h, utmpx.h, utime.h, unistd.h, ulimit.h, ucontext.h, time.h, termios.h, tar.h, sys/wait.h, sys/uio.h, sys/types.h, sys/times.h, sys/timeb.h, sys/time.h, sys/statvfs.h, sys/stat.h, sys/shm.h, sys/sem.h, and sys/resource.h. Implement handling of allow-header. * conform/data/fcntl.h-data: Correct various bugs. * conform/data/fnmatch.h-data: Likewise. * conform/data/math.h-data: Likewise. * conform/data/ndbm.h-data: Likewise. * conform/data/nl_types.h-data: Likewise. * conform/data/poll.h-data: Likewise. * conform/data/pthread.h-data: Likewise. * conform/data/semaphore.h-data: Likewise. * conform/data/setjmp.h-data: Likewise. * conform/data/signal.h-data: Likewise. * conform/data/stdarg.h-data: Likewise. * conform/data/stddef.h-data: Likewise. * conform/data/stdio.h-data: Likewise. * conform/data/stdlib.h-data: Likewise. * conform/data/string.h-data: Likewise. * conform/data/strings.h-data: Likewise. * conform/data/stropts.h-data: Likewise. * conform/data/syslog.h-data: Likewise. * conform/data/sys/ipc.h-data: Likewise. * conform/data/sys/mman.h-data: Likewise. * conform/data/sys/msg.h-data: Likewise. * conform/data/tar.h-data: New file. * conform/data/termios.h-data: New file. * conform/data/time.h-data: New file. * conform/data/ucontext.h-data: New file. * conform/data/ulimit.h-data: New file. * conform/data/unistd.h-data: New file. * conform/data/utime.h-data: New file. * conform/data/utmpx.h-data: New file. * conform/data/varargs.h-data: New file. * conform/data/wchar.h-data: New file. * conform/data/wctype.h-data: New file. * conform/data/wordexp.h-data: New file. * conform/data/sys/resource.h-data: New file. * conform/data/sys/sem.h-data: New file. * conform/data/sys/shm.h-data: New file. * conform/data/sys/stat.h-data: New file. * conform/data/sys/statvfs.h-data: New file. * conform/data/sys/time.h-data: New file. * conform/data/sys/timeb.h-data: New file. * conform/data/sys/times.h-data: New file. * conform/data/sys/types.h-data: New file. * conform/data/sys/uio.h-data: New file. * conform/data/sys/wait.h-data: New file. * grp/grp.h (getgrent_r): Declare only if __USE_GNU. * include/sys/time.h (__itimes): Fix type of second parameter. * io/sys/stat.h (S_IFLNK): Define also if __USE_XOPEN. (S_ISVTX): Likewise. * io/sys/statvfs.h: Define fsblkcnt_t and fsfilcnt_t. * locale/langindo.h: Make ERA_YEAR, INT_CURR_SYMBOL, CURRENCY_SYMBOL, MON_DECIMAL_POINT, MON_THOUSANDS_SEP, MON_GROUPING, POSITIVE_SIGN, NEGATIVE_SIGN, INT_FRAC_DIGITS, FRAC_DIGITS, P_CS_PRECEDES, P_SEP_BY_SPACE, N_CS_PRECEDES, N_SEP_BY_SPACE, P_SIGN_POSN, N_SIGN_POSN, DECIMAL_POINT, THOUSANDS_SEP, GROUPING, YESEXPR, NOEXPR, YESSTR, and NOSTR only available if __USE_GNU. * math/bits/mathcalls.h: Don't declare tgamma and scalbn if only __USE_XOPEN. * posix/unistd.h: Don't define ptrdiff_t. (sbrk): Correct type of parameter. * sysdeps/generic/sbrk.c: Likewise. * sysdeps/mach/hurd/sbrk.c: Likewise. * posix/sys/types.h: Allow id_t, suseconds_t, fsblkcnt_t, and fsfilcnt_t being defined elsewhere. * resource/sys/resource.h: Define id_t. If __USE_XOPEN use int for type of first parameter if getrlimit, getrlimit64, setrlimit, setrlimit64, getrusage, getpriority, and setpriority. * sysdeps/generic/getpriority.c: Fix type of second parameter. * sysdeps/generic/setpriority.c: Likewise. * sysdeps/mach/hurd/getpriority.c: Likewise. * sysdeps/mach/hurd/setpriority.c: Likewise. * sysdeps/unix/sysv/irix4/getpriority.c: Likewise. * sysdeps/unix/sysv/irix4/setpriority.c: Likewise. * sysdeps/unix/sysv/linux/getpriority.c: Likewise. * sysdeps/generic/utimes.c: Fix parameter of third parameter. * sysdeps/mach/hurd/utimes.c: Likewise. * sysdeps/posix/utimes.c: Likewise. * sysdeps/generic/bits/shm.h: Define shmatt_t type and use it in struct shmid_ds definition. * 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/sparc/bits/shm.h: Likewise. * sysvipc/sys/shm.h: Define time_t. * sysvipc/sys/sem.h (struct sembuf): Make sem_num field unsigned. * sysdeps/gnu/bits/sem.h: Rename anonymous type struct sem_queue and struct sem_undo to struct __sem_queue and struct __sem_undo resp. * time/time.h: Define suseconds_t if not already done. * sysdeps/unix/sysv/linux/bits/statvfs.h: Rename f_spare to __f_spare. * sysdeps/unix/sysv/linux/fstatvfs64.c: Likewise. * sysdeps/unix/sysv/linux/statvfs64.c: Likewise. * sysdeps/unix/sysv/linux/internal_statvfs.c: Likewise. * intl/bindtextdom.c: Use rwlock to avoid surprising results in multithreaded applications. * intl/dcigettext.c: Likewise. * intl/textdomain.c: Likewise. * intl/*.c: Update copyright. * sysdeps/generic/bits/libc-lock.h: Define __libc_rwlock_* stubs. 2000-02-27 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/configure.in: Treat also "/usr/" as prefix especially. 2000-02-27 Ulrich Drepper <drepper@redhat.com> * po/de.po: Update from translation team. * po/ko.po: Likewise.
2000-02-28 05:08:01 +00:00
2000-02-27 Ulrich Drepper <drepper@redhat.com>
* rwlock.c: Define __* variants of the functions and make old names
aliases.
* Versions [GLIBC_2.2]: Export the __pthread_rwlock_* functions.
* sysdeps/pthread/bits/libc-lock.h: Define __libc_rwlock_* macros.
Update. 2000-02-25 Andreas Jaeger <aj@suse.de> * math/Versions: Move fe* function to GLIBC_2.2. The patches have not been added to glibc 2.1.3. * Versions.def: Remove 2.1.3 entry for math. * sysdeps/alpha/fpu/fclrexcpt.c: Change default version to GLIBC_2.2. * sysdeps/alpha/fpu/fegetenv.c: Likewise. * sysdeps/alpha/fpu/fesetenv.c: Likewise. * sysdeps/alpha/fpu/feupdateenv.c: Likewise. * sysdeps/alpha/fpu/fgetexcptflg.c: Likewise. * sysdeps/alpha/fpu/fraiseexcpt.c: Likewise. * sysdeps/alpha/fpu/fsetexcptflg.c: Likewise. * sysdeps/arm/fpu/fclrexcpt.c: Likewise. * sysdeps/arm/fpu/fegetenv.c: Likewise. * sysdeps/arm/fpu/fesetenv.c: Likewise. * sysdeps/arm/fpu/fraiseexcpt.c: Likewise. * sysdeps/arm/fpu/fsetexcptflg.c: Likewise. * sysdeps/generic/fclrexcpt.c: Likewise. * sysdeps/generic/fegetenv.c: Likewise. * sysdeps/generic/fesetenv.c: Likewise. * sysdeps/generic/feupdateenv.c: Likewise. * sysdeps/generic/fgetexcptflg.c: Likewise. * sysdeps/generic/fraiseexcpt.c: Likewise. * sysdeps/generic/fsetexcptflg.c: Likewise. * sysdeps/i386/fpu/fclrexcpt.c: Likewise. * sysdeps/i386/fpu/fegetenv.c: Likewise. * sysdeps/i386/fpu/fesetenv.c: Likewise. * sysdeps/i386/fpu/feupdateenv.c: Likewise. * sysdeps/i386/fpu/fgetexcptflg.c: Likewise. * sysdeps/i386/fpu/fraiseexcpt.c: Likewise. * sysdeps/i386/fpu/fsetexcptflg.c: Likewise. * sysdeps/m68k/fpu/fclrexcpt.c: Likewise. * sysdeps/m68k/fpu/fegetenv.c: Likewise. * sysdeps/m68k/fpu/fesetenv.c: Likewise. * sysdeps/m68k/fpu/feupdateenv.c: Likewise. * sysdeps/m68k/fpu/fgetexcptflg.c: Likewise. * sysdeps/m68k/fpu/fraiseexcpt.c: Likewise. * sysdeps/m68k/fpu/fsetexcptflg.c: Likewise. * sysdeps/mips/fpu/fclrexcpt.c: Likewise. * sysdeps/mips/fpu/fegetenv.c: Likewise. * sysdeps/mips/fpu/fesetenv.c: Likewise. * sysdeps/mips/fpu/feupdateenv.c: Likewise. * sysdeps/mips/fpu/fgetexcptflg.c: Likewise. * sysdeps/powerpc/fclrexcpt.c: Likewise. * sysdeps/powerpc/fpu/fegetenv.c: Likewise. * sysdeps/powerpc/fpu/fesetenv.c: Likewise. * sysdeps/powerpc/fpu/feupdateenv.c: Likewise. * sysdeps/powerpc/fpu/fgetexcptflg.c: Likewise. * sysdeps/powerpc/fpu/fraiseexcpt.c: Likewise. * sysdeps/powerpc/fpu/fsetexcptflg.c: Likewise. * sysdeps/sparc/fpu/fclrexcpt.c: Likewise. * sysdeps/sparc/fpu/fegetenv.c: Likewise. * sysdeps/sparc/fpu/fesetenv.c: Likewise. * sysdeps/sparc/fpu/feupdateenv.c: Likewise. * sysdeps/sparc/fpu/fgetexcptflg.c: Likewise. * sysdeps/sparc/fpu/fraiseexcpt.c: Likewise. * sysdeps/sparc/fpu/fsetexcptflg.c: Likewise. 2000-02-25 Andreas Jaeger <aj@suse.de> * sysdeps/alpha/fpu/fraiseexcpt.c (__feraiseexcept): Correct declaration to return value. * sysdeps/ieee754/Makefile (CFLAGS-k_standard.c): Added. * math/Makefile: Remove -Wno-write-strings since it's only needed by one file. * intl/Makefile (CFLAGS-bindtextdom.c): The code has been fixed, we don't need to disable the warnings anymore, remove them. (CFLAGS-finddomain.c): Likewise. (CFLAGS-localealias.c): Likewise. 2000-02-25 Andreas Jaeger <aj@suse.de> * configure.in: Allow sed 3.02 or newer versions. * manual/install.texi (Tools for Compilation): Document sed requirement.
2000-02-26 01:21:37 +00:00
2000-02-25 Andreas Jaeger <aj@suse.de>
* Versions: Export pread, __pread64, pread64, pwrite, __pwrite64,
Update. 2000-02-27 Ulrich Drepper <drepper@redhat.com> * conform/conformtest.pl (@headers): Add wordexp.h, wctype.h, wchar.h, varargs.h, utmpx.h, utime.h, unistd.h, ulimit.h, ucontext.h, time.h, termios.h, tar.h, sys/wait.h, sys/uio.h, sys/types.h, sys/times.h, sys/timeb.h, sys/time.h, sys/statvfs.h, sys/stat.h, sys/shm.h, sys/sem.h, and sys/resource.h. Implement handling of allow-header. * conform/data/fcntl.h-data: Correct various bugs. * conform/data/fnmatch.h-data: Likewise. * conform/data/math.h-data: Likewise. * conform/data/ndbm.h-data: Likewise. * conform/data/nl_types.h-data: Likewise. * conform/data/poll.h-data: Likewise. * conform/data/pthread.h-data: Likewise. * conform/data/semaphore.h-data: Likewise. * conform/data/setjmp.h-data: Likewise. * conform/data/signal.h-data: Likewise. * conform/data/stdarg.h-data: Likewise. * conform/data/stddef.h-data: Likewise. * conform/data/stdio.h-data: Likewise. * conform/data/stdlib.h-data: Likewise. * conform/data/string.h-data: Likewise. * conform/data/strings.h-data: Likewise. * conform/data/stropts.h-data: Likewise. * conform/data/syslog.h-data: Likewise. * conform/data/sys/ipc.h-data: Likewise. * conform/data/sys/mman.h-data: Likewise. * conform/data/sys/msg.h-data: Likewise. * conform/data/tar.h-data: New file. * conform/data/termios.h-data: New file. * conform/data/time.h-data: New file. * conform/data/ucontext.h-data: New file. * conform/data/ulimit.h-data: New file. * conform/data/unistd.h-data: New file. * conform/data/utime.h-data: New file. * conform/data/utmpx.h-data: New file. * conform/data/varargs.h-data: New file. * conform/data/wchar.h-data: New file. * conform/data/wctype.h-data: New file. * conform/data/wordexp.h-data: New file. * conform/data/sys/resource.h-data: New file. * conform/data/sys/sem.h-data: New file. * conform/data/sys/shm.h-data: New file. * conform/data/sys/stat.h-data: New file. * conform/data/sys/statvfs.h-data: New file. * conform/data/sys/time.h-data: New file. * conform/data/sys/timeb.h-data: New file. * conform/data/sys/times.h-data: New file. * conform/data/sys/types.h-data: New file. * conform/data/sys/uio.h-data: New file. * conform/data/sys/wait.h-data: New file. * grp/grp.h (getgrent_r): Declare only if __USE_GNU. * include/sys/time.h (__itimes): Fix type of second parameter. * io/sys/stat.h (S_IFLNK): Define also if __USE_XOPEN. (S_ISVTX): Likewise. * io/sys/statvfs.h: Define fsblkcnt_t and fsfilcnt_t. * locale/langindo.h: Make ERA_YEAR, INT_CURR_SYMBOL, CURRENCY_SYMBOL, MON_DECIMAL_POINT, MON_THOUSANDS_SEP, MON_GROUPING, POSITIVE_SIGN, NEGATIVE_SIGN, INT_FRAC_DIGITS, FRAC_DIGITS, P_CS_PRECEDES, P_SEP_BY_SPACE, N_CS_PRECEDES, N_SEP_BY_SPACE, P_SIGN_POSN, N_SIGN_POSN, DECIMAL_POINT, THOUSANDS_SEP, GROUPING, YESEXPR, NOEXPR, YESSTR, and NOSTR only available if __USE_GNU. * math/bits/mathcalls.h: Don't declare tgamma and scalbn if only __USE_XOPEN. * posix/unistd.h: Don't define ptrdiff_t. (sbrk): Correct type of parameter. * sysdeps/generic/sbrk.c: Likewise. * sysdeps/mach/hurd/sbrk.c: Likewise. * posix/sys/types.h: Allow id_t, suseconds_t, fsblkcnt_t, and fsfilcnt_t being defined elsewhere. * resource/sys/resource.h: Define id_t. If __USE_XOPEN use int for type of first parameter if getrlimit, getrlimit64, setrlimit, setrlimit64, getrusage, getpriority, and setpriority. * sysdeps/generic/getpriority.c: Fix type of second parameter. * sysdeps/generic/setpriority.c: Likewise. * sysdeps/mach/hurd/getpriority.c: Likewise. * sysdeps/mach/hurd/setpriority.c: Likewise. * sysdeps/unix/sysv/irix4/getpriority.c: Likewise. * sysdeps/unix/sysv/irix4/setpriority.c: Likewise. * sysdeps/unix/sysv/linux/getpriority.c: Likewise. * sysdeps/generic/utimes.c: Fix parameter of third parameter. * sysdeps/mach/hurd/utimes.c: Likewise. * sysdeps/posix/utimes.c: Likewise. * sysdeps/generic/bits/shm.h: Define shmatt_t type and use it in struct shmid_ds definition. * 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/sparc/bits/shm.h: Likewise. * sysvipc/sys/shm.h: Define time_t. * sysvipc/sys/sem.h (struct sembuf): Make sem_num field unsigned. * sysdeps/gnu/bits/sem.h: Rename anonymous type struct sem_queue and struct sem_undo to struct __sem_queue and struct __sem_undo resp. * time/time.h: Define suseconds_t if not already done. * sysdeps/unix/sysv/linux/bits/statvfs.h: Rename f_spare to __f_spare. * sysdeps/unix/sysv/linux/fstatvfs64.c: Likewise. * sysdeps/unix/sysv/linux/statvfs64.c: Likewise. * sysdeps/unix/sysv/linux/internal_statvfs.c: Likewise. * intl/bindtextdom.c: Use rwlock to avoid surprising results in multithreaded applications. * intl/dcigettext.c: Likewise. * intl/textdomain.c: Likewise. * intl/*.c: Update copyright. * sysdeps/generic/bits/libc-lock.h: Define __libc_rwlock_* stubs. 2000-02-27 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/configure.in: Treat also "/usr/" as prefix especially. 2000-02-27 Ulrich Drepper <drepper@redhat.com> * po/de.po: Update from translation team. * po/ko.po: Likewise.
2000-02-28 05:08:01 +00:00
pwrite64, lseek64, open64, and __open64 with version 2.2.
2000-02-22 Ulrich Drepper <drepper@redhat.com>
* semaphore.h (SEM_FAILED): Use 0 not NULL.
2000-02-14 Ulrich Drepper <drepper@redhat.com>
* condvar.c (pthread_cond_timedwait_relative_old): Tight loop with
nanosleep does not work either. Get absolute time inside the
loop.
(pthread_cond_timedwait_relative_new): Likewise.
Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-02-13 Andreas Jaeger <aj@suse.de>
* condvar.c (pthread_cond_timedwait_relative_new): Fix last patch.
(pthread_cond_timedwait_relative_old): Likewise.
2000-02-13 Ulrich Drepper <drepper@redhat.com>
* condvar.c (pthread_cond_timedwait_relative_old): Undo last patch
but keep the code around. A bug in the kernel prevent us from
using the code.
(pthread_cond_timedwait_relative_new): Likewise.
(PR libc/1597 and libc/1598).
2000-02-01 Kaz Kylheku <kaz@ashi.footprints.net>
* condvar.c (pthread_cond_timedwait_relative_old): Do tight
loop around nanosleep calls instead of around most of the function
(pthread_cond_timedwait_relative_new): Likewise.
body. Got rid of backwards goto and one local.
2000-01-31 Ulrich Drepper <drepper@redhat.com>
* condvar.c (pthread_cond_timedwait_relative_old): Recompute time
before every nanosleep call to account for time spent in the rest
of the function.
(pthread_cond_timedwait_relative_new): Likewise.
Patch by khendricks@ivey.uwo.ca (PR libc/1564).
Update. * locale/loadlocale.c (_nl_load_locale): Optimize a bit. Pretty print. Add checks for _POSIX_MMAPPED_FILES where necessary. (_nl_unload_locale): If locale data was mmapped use munmap. 2000-01-29 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/i386/sys/io.h: Add missing ints, use _EXTERN_INLINE, compile inline assembler functions only with gcc. 2000-01-29 Ulrich Drepper <drepper@redhat.com> * catgets/catgets.c (catopen): Handle NL_CAT_LOCALE correctly. * catgets/gencat.c (read_input_file): Remove messages correctly. * catgets/open_catalog.c (__open_catalog): Handle trailing colons and adjacent colons correctly. Correct loops to read territory and and codeset part. Patches by Geoff Clare <gwc@unisoft.com> (PR libc/1559). * rt/aio_misc.c (get_elem): Assign pointer to new row to correct pool entry. Patch by Jens Moeller <jens.moeller@waii.com> (PR libc/1558). 2000-01-28 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/arm/Versions: Export the new *rlimit interface with symbol version GLIBC_2.2. * sysdeps/unix/sysv/linux/i386/Versions: Likewise. * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise. * sysdeps/unix/sysv/linux/i386/getrlimit64.c: Likewise. * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise. 2000-01-27 Scott Bambrough <scottb@netwinder.org> * sysdeps/unix/sysv/linux/arm/Makefile: Backout rlimit changes for resource directory. * sysdeps/unix/sysv/linux/arm/syscalls.list: Backout changes for versioning setrlimit and getrlimit. 2000-01-27 Andreas Jaeger <aj@suse.de> * sysdeps/powerpc/fpu/libm-ulps: Renamed to ... * sysdeps/powerpc/fpu/libm-test-ulps: ...this. 2000-01-27 Ruediger Oertel <ro@suse.de> * sysdeps/unix/sysv/linux/i386/sys/io.h: Change "::" to ": :" for g++. 2000-01-29 Ulrich Drepper <drepper@redhat.com>
2000-01-29 12:04:45 +00:00
2000-01-29 Ulrich Drepper <drepper@redhat.com>
* condvar.c (pthread_cond_timedwait_relative_old): Get remaining time
from nanosleep call so that in case we restart we only wait for the
remaining time.
(pthread_cond_timedwait_relative_new): Likewise.
Patch by khendricks@ivey.uwo.ca (PR libc/1561).
2000-01-18 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_allocate_stack): Compute guard page address
correctly. Patch by HJ Lu.
* sysdeps/pthread/pthread.h: Define
PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP.
2000-01-16 Ulrich Drepper <drepper@cygnus.com>
* rwlock.c (pthread_rwlock_unlock): Correct one more problem with
preference handling.
(pthread_rwlockattr_setkind_np): Allow
PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP.
Patches by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-01-12 Ulrich Drepper <drepper@cygnus.com>
* internals.h (pthread_readlock_info): New structure.
(_pthread_descr_struct): Add p_readlock_list, p_readlock_free, and
p_untracked_readlock_count.
* pthread.c (__pthread_initial_thread, pthread_manager_thread):
Add initializers for new fields.
* manager.c (pthread_free): Free read/write lock lists.
* queue.h (queue_is_empty): New function.
* rwlock.c: Implement requirements about when readers should get
locks assigned.
* sysdeps/pthread/pthread.h
(PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP): New definition.
* sysdeps/pthread/bits/pthreadtypes.h (struct _pthread_rwlock_t):
Define this name as well.
Patches by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-01-05 Ulrich Drepper <drepper@cygnus.com>
* pthread.c (__pthread_initial_thread, pthread_manager_thread):
Adjust initializers for struct _pthread_descr_struct change.
* internals.h (struct _pthread_descr_struct): Move new elements to
the end.
2000-01-03 Kaz Kylheku <kaz@ashi.footprints.net>
Redesigned how cancellation unblocks a thread from internal
cancellation points (sem_wait, pthread_join,
pthread_cond_{wait,timedwait}).
Cancellation won't eat a signal in any of these functions
(*required* by POSIX and Single Unix Spec!).
* condvar.c: Spontaneous wakeup on pthread_cond_timedwait won't eat a
simultaneous condition variable signal (not required by POSIX
or Single Unix Spec, but nice).
* spinlock.c: __pthread_lock queues back any received restarts
that don't belong to it instead of assuming ownership of lock
upon any restart; fastlock can no longer be acquired by two threads
simultaneously.
* restart.h: Restarts queue even on kernels that don't have
queued real time signals (2.0, early 2.1), thanks to atomic counter,
avoiding a rare race condition in pthread_cond_timedwait.
1999-12-31 Andreas Jaeger <aj@suse.de>
* internals.h: Remove duplicate prototype declarations.
* weaks.c: Remove __THROW from prototypes since the file is not
compiled by a C++ compiler.
* internals.h: Likewise.
1999-12-30 Andreas Jaeger <aj@suse.de>
* sysdeps/pthread/pthread.h: Move internal functions to...
* sysdeps/pthread/bits/libc-lock.h: ...here.
1999-12-29 Andreas Jaeger <aj@suse.de>
* sysdeps/pthread/pthread.h: Fix typos, reformat comments.
1999-12-28 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/alpha/pt-machine.h: Move stack_pointer definition to the
beginning.
* manager.c (__pthread_start): Add one more cast to prevent
warning on 64bit machines.
1999-12-21 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_handle_create): Set p_pid of new thread
before calling the callback function to report a new thread.
Update. 1999-12-21 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/i386/getmsg.c: New file. * sysdeps/unix/sysv/linux/i386/getpmsg.c: New file. * sysdeps/unix/sysv/linux/i386/putmsg.c: New file. * sysdeps/unix/sysv/linux/i386/putpmsg.c: New file. * sysdeps/unix/sysv/linux/m68k/getmsg.c: New file. * sysdeps/unix/sysv/linux/m68k/getpmsg.c: New file. * sysdeps/unix/sysv/linux/m68k/putmsg.c: New file. * sysdeps/unix/sysv/linux/m68k/putpmsg.c: New file. * sysdeps/unix/sysv/linux/mips/getmsg.c: New file. * sysdeps/unix/sysv/linux/mips/getpmsg.c: New file. * sysdeps/unix/sysv/linux/mips/putmsg.c: New file. * sysdeps/unix/sysv/linux/mips/putpmsg.c: New file. * sysdeps/unix/sysv/linux/powerpc/getmsg.c: New file. * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: New file. * sysdeps/unix/sysv/linux/powerpc/putmsg.c: New file. * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: New file. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add getpmsg and putpmsg. 1999-12-20 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/lxstat64.c: Include "kernel-features.h" before testing for __ASSUME_STAT64_SYSCALL. * sysdeps/unix/sysv/linux/fxstat64.c: Likewise. * sysdeps/unix/sysv/linux/xstat64.c: Likewise. 1999-12-20 Andreas Schwab <schwab@suse.de> * manual/install.texi (Running make install): Clearify that install_root should be an absolute file name. * iconv/gconv.c (__gconv): Deal with outbuf being NULL. * iconv/iconv.c (iconv): Allow omitting output buffer if no input buffer is given to place conversion descriptor in initial state. * iconvdata/gconv-modules: Correct aliases CSPC850MULTILINGUAL and CSPC862LATINHEBREW. * iconvdata/gconv-modules: Add aliases GB2312 and csGB2312 (according to IANA registry). Reported by Bruno Haible <haible@ilog.fr>. * iconvdata/johab.c: Correct completely broken conversion to JOHAB.
1999-12-21 08:10:06 +00:00
1999-12-20 Andreas Jaeger <aj@suse.de>
* pthread.c (pthread_initialize): Move getrlimit call after
setting of errno.
Update. 1999-12-17 Ulrich Drepper <drepper@cygnus.com> * string/bits/string2.h (__strtok_r_1c): Help gcc optimizing string access. * locale/programs/ld-collate.c: Implement handling of absolute ellipsis. Parsing of file and constructing the internal data structures should now be complete. (collate_finish): Start adding support to generate the data structures which are written out to the file. * intl/dcgettext.c: Rewrite to handle caching of previous results here instead of in the dcgettext macro. * intl/libintl.h (dcgettext): Don't define for systems using this glibc or systems with tsearch. * sysdeps/generic/mathdef.h: Protect definitions for math.h against double inclusion. * sysdeps/alpha/fpu/bits/mathdef.h: Likewise. * sysdeps/i386/fpu/bits/mathdef.h: Likewise. * sysdeps/m68k/fpu/bits/mathdef.h: Likewise. * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise. * sysdeps/i386/fpu/libm-test-ulps: Add more deltas (are mobile PIIs that different?). 1999-12-17 Andreas Jaeger <aj@suse.de> * rt/aio.h (struct aiocb64): Add member __next_prio to sync the struct with aiocb. * rt/Makefile (tests): Added tst-aio64. Added dependency rules for tst-aio64. * rt/tst-aio64.c: New file, copied from tst-aio.c and changed for 64bit tests. 1999-12-15 Thorsten Kukuk <kukuk@suse.de> * sysdeps/unix/sysv/linux/alpha/oldgetrlimit64.c: Removed. * sysdeps/unix/sysv/linux/alpha/oldsetrlimit64.c: Removed. * sysdeps/unix/sysv/linux/bits/resource.h: Change RLIM_INFINITY back to old value (signed long). * sysdeps/unix/sysv/linux/i386/bits/resource.h: New, with unsigned long RLIM_INFINITY. * sysdeps/unix/sysv/linux/getrlimit.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/getrlimit.c: ... here. * sysdeps/unix/sysv/linux/getrlimit64.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/getrlimit64.c: ... here. * sysdeps/unix/sysv/linux/oldgetrlimit64.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: ... here. * sysdeps/unix/sysv/linux/oldsetrlimit64.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/oldsetrlimit64.c: ... here. * sysdeps/unix/sysv/linux/setrlimit.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/setrlimit.c: ... here. * sysdeps/unix/sysv/linux/setrlimit64.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/setrlimit64.c: ... here. * sysdeps/unix/sysv/linux/sparc/bits/resource.h: New. * sysdeps/unix/sysv/linux/sparc/sparc64/oldgetrlimit64.c: Removed. * sysdeps/unix/sysv/linux/sparc/sparc64/oldsetrlimit64.c: Removed. 1999-12-17 Andreas Jaeger <aj@suse.de> * elf/ldconfig.c: Add new option -l to manualy link shared libraries. (options): Added option. (parse_opt): Set option. (main): Handle option. (manual_link): New function. 1999-12-17 Thorsten Kukuk <kukuk@suse.de> * string/bits/string2.h: Fix patch from 1999-12-07. 1999-12-16 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/strsep.c: If delim string has only one character don't run over end of string. * locale/programs/ld-collate.c (insert_weights): Also update next pointer of last cursor element. (insert_value): Return nonzero value if nothing got inserted. (handle_ellipsis): Don't do anything if to-value cannot be inserted. 1999-12-10 Jakub Jelinek <jakub@redhat.com> * stdlib/longlong.h (__sparc_v9__): Use %rDIGIT instead of %DIGIT where appropriate. 1999-12-10 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction): Copy sa_flags into kernel sigaction structure. 1999-12-14 Andreas Jaeger <aj@suse.de> * string/tester.c (test_strsep): More tests for access beyond the final NUL. The first two tests come from PR libc/1486 by martinea@iro.umontreal.ca. 1999-12-14 Thorsten Kukuk <kukuk@suse.de> * nis/ypclnt.c: Correct handling of cached client handles. (__xdr_ypresp_all): Call callback function for errors, too, like Solaris does. * nis/nss_compat/compat-grp.c: Make sure errno is always set correct. * nis/nss_compat/compat-initgroups.c: Likewise. * nis/nss_compat/compat-spwd.c: Likewise. * nis/nss_nis/nis-alias.c: Likewise. * nis/nss_nis/nis-ethers.c: Likewise. * nis/nss_nis/nis-grp.c: Likewise. * nis/nss_nis/nis-hosts.c: Likewise. * nis/nss_nis/nis-netgrp.c: Likewise. * nis/nss_nis/nis-publickey.c: Likewise. * nis/nss_nis/nis-service.c: Likewise. Also use services.byservicename Map if available, optimize query if name/port and protocol is known.
1999-12-18 19:45:25 +00:00
1999-12-18 Ulrich Drepper <drepper@cygnus.com>
* Versions: Export pread, __pread64, pread64, pwrite, __pwrite64,
pwrite64, lseek64, open64, and __open64.
* wrapsyscall.c: Define pread, __pread64, pread64, pwrite, __pwrite64,
pwrite64, lseek64, open64, and __open64.
Update. 1999-12-17 Ulrich Drepper <drepper@cygnus.com> * string/bits/string2.h (__strtok_r_1c): Help gcc optimizing string access. * locale/programs/ld-collate.c: Implement handling of absolute ellipsis. Parsing of file and constructing the internal data structures should now be complete. (collate_finish): Start adding support to generate the data structures which are written out to the file. * intl/dcgettext.c: Rewrite to handle caching of previous results here instead of in the dcgettext macro. * intl/libintl.h (dcgettext): Don't define for systems using this glibc or systems with tsearch. * sysdeps/generic/mathdef.h: Protect definitions for math.h against double inclusion. * sysdeps/alpha/fpu/bits/mathdef.h: Likewise. * sysdeps/i386/fpu/bits/mathdef.h: Likewise. * sysdeps/m68k/fpu/bits/mathdef.h: Likewise. * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise. * sysdeps/i386/fpu/libm-test-ulps: Add more deltas (are mobile PIIs that different?). 1999-12-17 Andreas Jaeger <aj@suse.de> * rt/aio.h (struct aiocb64): Add member __next_prio to sync the struct with aiocb. * rt/Makefile (tests): Added tst-aio64. Added dependency rules for tst-aio64. * rt/tst-aio64.c: New file, copied from tst-aio.c and changed for 64bit tests. 1999-12-15 Thorsten Kukuk <kukuk@suse.de> * sysdeps/unix/sysv/linux/alpha/oldgetrlimit64.c: Removed. * sysdeps/unix/sysv/linux/alpha/oldsetrlimit64.c: Removed. * sysdeps/unix/sysv/linux/bits/resource.h: Change RLIM_INFINITY back to old value (signed long). * sysdeps/unix/sysv/linux/i386/bits/resource.h: New, with unsigned long RLIM_INFINITY. * sysdeps/unix/sysv/linux/getrlimit.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/getrlimit.c: ... here. * sysdeps/unix/sysv/linux/getrlimit64.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/getrlimit64.c: ... here. * sysdeps/unix/sysv/linux/oldgetrlimit64.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: ... here. * sysdeps/unix/sysv/linux/oldsetrlimit64.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/oldsetrlimit64.c: ... here. * sysdeps/unix/sysv/linux/setrlimit.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/setrlimit.c: ... here. * sysdeps/unix/sysv/linux/setrlimit64.c: Moved from here to ... * sysdeps/unix/sysv/linux/i386/setrlimit64.c: ... here. * sysdeps/unix/sysv/linux/sparc/bits/resource.h: New. * sysdeps/unix/sysv/linux/sparc/sparc64/oldgetrlimit64.c: Removed. * sysdeps/unix/sysv/linux/sparc/sparc64/oldsetrlimit64.c: Removed. 1999-12-17 Andreas Jaeger <aj@suse.de> * elf/ldconfig.c: Add new option -l to manualy link shared libraries. (options): Added option. (parse_opt): Set option. (main): Handle option. (manual_link): New function. 1999-12-17 Thorsten Kukuk <kukuk@suse.de> * string/bits/string2.h: Fix patch from 1999-12-07. 1999-12-16 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/strsep.c: If delim string has only one character don't run over end of string. * locale/programs/ld-collate.c (insert_weights): Also update next pointer of last cursor element. (insert_value): Return nonzero value if nothing got inserted. (handle_ellipsis): Don't do anything if to-value cannot be inserted. 1999-12-10 Jakub Jelinek <jakub@redhat.com> * stdlib/longlong.h (__sparc_v9__): Use %rDIGIT instead of %DIGIT where appropriate. 1999-12-10 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction): Copy sa_flags into kernel sigaction structure. 1999-12-14 Andreas Jaeger <aj@suse.de> * string/tester.c (test_strsep): More tests for access beyond the final NUL. The first two tests come from PR libc/1486 by martinea@iro.umontreal.ca. 1999-12-14 Thorsten Kukuk <kukuk@suse.de> * nis/ypclnt.c: Correct handling of cached client handles. (__xdr_ypresp_all): Call callback function for errors, too, like Solaris does. * nis/nss_compat/compat-grp.c: Make sure errno is always set correct. * nis/nss_compat/compat-initgroups.c: Likewise. * nis/nss_compat/compat-spwd.c: Likewise. * nis/nss_nis/nis-alias.c: Likewise. * nis/nss_nis/nis-ethers.c: Likewise. * nis/nss_nis/nis-grp.c: Likewise. * nis/nss_nis/nis-hosts.c: Likewise. * nis/nss_nis/nis-netgrp.c: Likewise. * nis/nss_nis/nis-publickey.c: Likewise. * nis/nss_nis/nis-service.c: Likewise. Also use services.byservicename Map if available, optimize query if name/port and protocol is known.
1999-12-18 19:45:25 +00:00
* manager.c (pthread_allocate_stack): Correct computation of
new_thread_bottom. Correct handling of stack size and when the
rlimit method to guard for stack growth is used.
* pthread.c (pthread_initialize): Stack limit must be STACK_SIZE
minus one pagesize (not two).
Update. 1999-12-03 Andreas Jaeger <aj@suse.de> * nss/getXXbyYY.c: Include <resolv.h> (FUNCTION_NAME): Use res_ninit instead of res_init. * nss/getXXbyYY_r.c [NEED__RES]: Include <resolv.h> for _res declaration and prototypes. Remove extra _res declaration. (INTERNAL): Use thread aware res_ninit function. * inet/gethstbyad_r.c: Include <resolv.h>. * resolv/res_data.c: Update from Bind 8.2.2-P5. Moved res_init to res_libc.c. Disabled unneeded functions. * resolv/res_libc.c: New file. * Versions.def: Add version GLIBC_2.2 for libpthread. Add versions GLIBC_2.1 and GLIBC_2.2 for libresolv. * include/resolv.h: Add internal interfaces. * resolv/Makefile (routines): Add new files. (libresolv-routines): Likewise. (distribute): Likewise. * resolv/gethnamaddr.c: Use thread safe resolver functions. * resolv/nss_dns/dns-host.c: Likewise. * resolv/nss_dns/dns-network.c: Likewise. * resolv/arpa/nameser.h: Update from Bind 8.2.2-P5. * resolv/nsap_addr.c: Likewise. * resolv/res_comp.c: Likewise. * resolv/res_debug.c: Likewise. * resolv/res_init.c: Likewise. * resolv/res_mkquery.c: Likewise. * resolv/res_query.c: Likewise. * resolv/res_send.c: Likewise. * resolv/resolv.h: Likewise. * resolv/Versions: Add __res_state and __res_ninit with version GLIBC_2.2 to libc. Add new interfaces with version GLIBC_2.2 to libresolv. * resolv/Banner: Update. * include/arpa/nameser_compat.h: New file. * resolv/ns_name.c: New file from Bind 8.2.2-P5. * resolv/ns_netint.c: Likewise. * resolv/ns_parse.c: Likewise. * resolv/ns_print.c: Likewise. * resolv/ns_samedomain.c: Likewise. * resolv/ns_ttl.c: Likewise. * resolv/arpa/nameser_compat.h: Likewise. * resolv/res_debug.h: Likewise. Some patches are based on work done by Adam D. Bradley <artdodge@cs.bu.edu>. * sysdeps/unix/sysv/linux/configure.in: Remove check for ldconfig, set always use_ldconfig instead.
1999-12-04 18:05:55 +00:00
1999-12-03 Andreas Jaeger <aj@suse.de>
* Versions: Add __res_state with version GLIBC_2.2.
* errno.c (__res_state): New function to return thread specific
resolver state.
* pthread.c (pthread_initialize): Initialize p_resp.
(__pthread_reset_main_thread): Also set p_resp.
* manager.c (pthread_handle_create): Initialize p_resp.
* internals.h: Add thread specific resolver state.
Based on patches by Adam D. Bradley <artdodge@cs.bu.edu>.
Update. 1999-12-01 Andreas Jaeger <aj@suse.de> * sysdeps/generic/if_index.c (__protocol_available): Add missing int for parameter. * stdio/stdio.h: Fix typo. Patches by Marcus G. Daniels <mgd@santafe.edu>. 1999-12-01 Andreas Jaeger <aj@suse.de> * scripts/test-installation.pl (installation_problem): Filter out libpthread_db. 1999-12-01 Andreas Schwab <schwab@suse.de> * sysdeps/unix/sysv/linux/alpha/bits/types.h: Fix signedness of __rlim_t and __rlim64_t. * sysdeps/unix/sysv/linux/mips/bits/types.h: Likewise. * sysdeps/unix/sysv/linux/sparc/bits/types.h: Likewise. 1999-12-01 Andreas Schwab <schwab@suse.de> * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add oldgetrlimit64 and oldsetrlimit64 for subdir = resource. * sysdeps/unix/sysv/linux/Versions: Add getrlimit, setrlimit, getrlimit64 and setrlimit64 to version GLIBC_2.1.3. * sysdeps/unix/sysv/linux/setrlimit.c: Correct handling of old and new kernel version. Add symbol versions. * sysdeps/unix/sysv/linux/syscalls.list: Add oldsetrlimit and oldgetrlimit. * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add s_getrlimit and s_ugetrlimit. * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/getrlimit.c: New file. * sysdeps/unix/sysv/linux/getrlimit64.c: New file. * sysdeps/unix/sysv/linux/oldgetrlimit64.c: New file. * sysdeps/unix/sysv/linux/oldsetrlimit64.c: New file. * sysdeps/unix/sysv/linux/setrlimit64.c: New file. * sysdeps/unix/sysv/linux/alpha/oldgetrlimit64.c: New file. * sysdeps/unix/sysv/linux/alpha/oldsetrlimit64.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/oldgetrlimit64.c: New file. * sysdeps/unix/sysv/linux/sparc/sparc64/oldsetrlimit64.c: New file.
1999-12-02 08:21:38 +00:00
1999-12-01 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/pt-machine.h: Move stack_pointer definition to the
beginning.
* sysdeps/i386/i686/pt-machine.h: Likewise.
Patches by Alan Modra <alan@SPRI.Levels.UniSA.Edu.Au>.
1999-11-23 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_start_thread_event): Initialize p_pid already
here.
1999-11-22 Ulrich Drepper <drepper@cygnus.com>
* internals.h: Add prototype for __pthread_manager_event.
* manager.c (__pthread_manager_event): New function.
(pthread_start_thread_event): Correct computation of self.
Use INIT_THREAD_SELF.
* pthread.c (__pthread_manager_thread): Initialize p_lock.
(__pthread_initialize_manager): Respect event flags also for creation
of the manager thread.
1999-11-08 Ulrich Drepper <drepper@cygnus.com>
* pthread.c (__pthread_initialize_manager): Initialize
__pthread_manager_thread.p_tid.
1999-11-02 Ulrich Drepper <drepper@cygnus.com>
* internals.h: Declare __pthread_last_event.
* manager.c: Define __pthread_last_event.
(pthread_handle_create): Set __pthread_last_event.
(pthread_exited): Likewise.
* join.c (pthread_exit): Likewise.
* Makefile (libpthread-routines): Add events.
* events.c: New file.
* internals.h: Protect against multiple inclusion.
Include thread_dbP.h header.
(struct _pthread_descr_struct): Add new fields p_report_events and
p_eventbuf.
Declare event reporting functions.
* join.c (pthread_exit): Signal event if this is wanted.
* manager.c (__pthread_threads_events): New variable.
(pthread_handle_create): Take new parameters with event information.
Signal TD_CREATE event if wanted.
(__pthread_manager): Adjust pthread_handle_create call.
(pthread_start_thread_event): New function. Block until manager is
finished and then call pthread_start_thread.
(pthread_exited): Signal TD_REAP event if wanted.
1999-10-26 Ulrich Drepper <drepper@cygnus.com>
* restart.h (suspend_with_cancellation): Rewrite as a macro.
* condvar.c (pthread_cond_timedwait_relative): Don't mark as inline.
1999-10-25 Andreas Jaeger <aj@suse.de>
* internals.h: Remove K&R compatibility.
* no-tsd.c: Likewise.
* semaphore.h: Likewise.
* signals.c: Likewise.
* sysdeps/pthread/bits/libc-tsd.h: Likewise.
* sysdeps/unix/sysv/linux/bits/sigthread.h: Likewise.
* weaks.c: Likewise.
Update. 1999-10-24 Ulrich Drepper <drepper@cygnus.com> * math/libm-test.inc: Disable some boundary case tests for inline function testing. * math/math.h: Pretty printing. * sysdeps/i386/fpu/e_atanh.S: Correct handling of NaN. * sysdeps/i386/fpu/e_atanhf.S: Likewise. * sysdeps/i386/fpu/e_atanhl.S: Likewise. * sysdeps/i386/fpu/e_log10.S: Likewise. * sysdeps/i386/fpu/e_log10f.S: Likewise. * sysdeps/i386/fpu/e_log10l.S: Likewise. * sysdeps/i386/fpu/s_log1p.S: Likewise. * sysdeps/i386/fpu/s_log1pf.S: Likewise. * sysdeps/i386/fpu/s_log1pl.S: Likewise. * sysdeps/i386/fpu/s_log2.S: Likewise. * sysdeps/i386/fpu/s_log2f.S: Likewise. * sysdeps/i386/fpu/s_log2l.S: Likewise. * sysdeps/i386/fpu/libm-test-ulps: New file. * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Correct return value for x == 0. (pow): Correct case x == 0. (__sgn1l): Correct handling of -0.0. 1999-10-22 Andreas Jaeger <aj@suse.de> * math/libm-test.inc (asinh_test): Add test for NaN as input parameter. (atan_test): Likewise. (atanh_test): Likewise. (atan2_test): Likewise. (carg_test): Likewise. (ceil_test): Likewise. (cos_test): Likewise. (cosh_test): Likewise. (cpow_test): Likewise. (erf_test): Likewise. (erfc_test): Likewise. (exp_test): Likewise. (exp10_test): Likewise. (exp2_test): Likewise. (expm1_test): Likewise. (fabs_test): Likewise. (floor_test): Likewise. (fmod_test): Likewise. (gamma_test): Likewise. (lgamma_test): Likewise. (log10_test): Likewise. (log1p_test): Likewise. (log2_test): Likewise. (logb_test): Likewise. (nearbyint_test): Likewise. (remainder_test): Likewise. (remquo_test): Likewise. (sin_test): Likewise. (sincos_test): Likewise. (sinh_test): Likewise. (sqrt_test): Likewise. (tan_test): Likewise. (tanh_test): Likewise. (tgamma_test): Likewise.
1999-10-24 22:04:52 +00:00
1999-10-21 Xavier Leroy <Xavier.Leroy@inria.fr>
* pthread.c: For i386, wrap pthread_handle_sigrestart and
pthread_handle_sigcancel with functions that restore %gs from the
signal context. For each signal handling function, two wrappers
are required, one for a non-RT signal and one for a RT signal.
* signal.c: For i386, add code to restore %gs from the signal
context in pthread_sighandler and pthread_sighandler_rt.
Update. 1999-10-24 Ulrich Drepper <drepper@cygnus.com> * math/libm-test.inc: Disable some boundary case tests for inline function testing. * math/math.h: Pretty printing. * sysdeps/i386/fpu/e_atanh.S: Correct handling of NaN. * sysdeps/i386/fpu/e_atanhf.S: Likewise. * sysdeps/i386/fpu/e_atanhl.S: Likewise. * sysdeps/i386/fpu/e_log10.S: Likewise. * sysdeps/i386/fpu/e_log10f.S: Likewise. * sysdeps/i386/fpu/e_log10l.S: Likewise. * sysdeps/i386/fpu/s_log1p.S: Likewise. * sysdeps/i386/fpu/s_log1pf.S: Likewise. * sysdeps/i386/fpu/s_log1pl.S: Likewise. * sysdeps/i386/fpu/s_log2.S: Likewise. * sysdeps/i386/fpu/s_log2f.S: Likewise. * sysdeps/i386/fpu/s_log2l.S: Likewise. * sysdeps/i386/fpu/libm-test-ulps: New file. * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Correct return value for x == 0. (pow): Correct case x == 0. (__sgn1l): Correct handling of -0.0. 1999-10-22 Andreas Jaeger <aj@suse.de> * math/libm-test.inc (asinh_test): Add test for NaN as input parameter. (atan_test): Likewise. (atanh_test): Likewise. (atan2_test): Likewise. (carg_test): Likewise. (ceil_test): Likewise. (cos_test): Likewise. (cosh_test): Likewise. (cpow_test): Likewise. (erf_test): Likewise. (erfc_test): Likewise. (exp_test): Likewise. (exp10_test): Likewise. (exp2_test): Likewise. (expm1_test): Likewise. (fabs_test): Likewise. (floor_test): Likewise. (fmod_test): Likewise. (gamma_test): Likewise. (lgamma_test): Likewise. (log10_test): Likewise. (log1p_test): Likewise. (log2_test): Likewise. (logb_test): Likewise. (nearbyint_test): Likewise. (remainder_test): Likewise. (remquo_test): Likewise. (sin_test): Likewise. (sincos_test): Likewise. (sinh_test): Likewise. (sqrt_test): Likewise. (tan_test): Likewise. (tanh_test): Likewise. (tgamma_test): Likewise.
1999-10-24 22:04:52 +00:00
1999-10-17 Ulrich Drepper <drepper@cygnus.com>
* internals.h (PTHREAD_START_ARGS_INITIALIZER): Add cast.
1999-10-14 Ulrich Drepper <drepper@cygnus.com>
* pthread.c (__pthread_initial_thread): Pass argument to
PTHREAD_START_ARGS_INITIALIZER.
(__pthread_manager_thread): Likewise.
* internals.h (PTHREAD_START_ARGS_INITIALIZER): Add parameter to
initialize function.
* manager.c (pthread_handle_create): Remove p_startfct initialization.
* internals.h (_pthread_descr_struct): We don't need p_startfct field.
1999-10-12 Ulrich Drepper <drepper@cygnus.com>
* internals.h: Correct return types for __libc_read and __libc_write.
1999-10-09 Andreas Jaeger <aj@suse.de>
* internals.h: Add __new_sem_post to get prototype in
manager.c; include semaphore.h for needed types.
1999-10-08 22:25:13 +00:00
1999-10-08 Ulrich Drepper <drepper@cygnus.com>
* manager.c (__pthread_manager) [REQ_POST]: Use __new_sem_post
directly instead of calling sem_post which should not be necessary
but is faster and might help in some case to work around problems.
Patch by khendricks@ivey.uwo.ca [libc/1382].
1999-10-08 22:25:13 +00:00
1999-10-08 Andreas Schwab <schwab@suse.de>
* sysdeps/pthread/Subdirs: New file.
* Implies: Removed.
1999-10-07 Ulrich Drepper <drepper@cygnus.com>
* Implies: New file.
* internals.h (struct _pthread_descr_struct): Add p_startfct.
* manager.c (pthread_handle_create): Initialize p_startfct.
* pthread.c: Define __linuxthread_pthread_sizeof_descr variable.
1999-09-25 Ulrich Drepper <drepper@cygnus.com>
* manager.c (__linuxthreads_pthread_threads_max): New variable.
* specific.c (__linuxthreads_pthread_keys_max): New variable.
(__linuxthreads_pthread_key_2ndlevel_size): New variable.
* condvar.c (pthread_cond_timedwait_relative): Never return with
EINTR. Patch by Andreas Schwab.
1999-09-19 Ulrich Drepper <drepper@cygnus.com>
* signals.c (sigaction): Correct last patch. Don't select
pthread_sighandler_rt based on the signal number but instead of
the SA_SIGINFO flag.
1999-09-23 Ulrich Drepper <drepper@cygnus.com>
* specific.c: Move definitions of struct pthread_key_struct and
destr_function to ...
* internals.h: ...here.
1999-09-18 Ulrich Drepper <drepper@cygnus.com>
* pthread.c (pthread_handle_sigrestart_rt): New function. Use
this instead of pthread_handle_sigrestart if the signal is an RT
signal.
* signals.c: Handle passing through of sighandler arguments also
for real-time signals.
1999-09-03 Andreas Schwab <schwab@suse.de>
* ptfork.c (__fork): Renamed from fork and use __libc_fork. Add
fork as weak alias.
(__vfork): New function, alias vfork.
* Versions: Export __fork, vfork, and __vfork in libpthread.
1999-08-23 Andreas Schwab <schwab@suse.de>
* signals.c (pthread_sighandler): Add SIGCONTEXT_EXTRA_ARGS to
call to signal handler.
1999-08-20 Ulrich Drepper <drepper@cygnus.com>
* pthread.c (__pthread_reset_main_thread): Undo last change.
(__pthread_kill_other_threads_np): Reset signal handlers for the
signals we used in the thread implementation here.
1999-08-19 Ulrich Drepper <drepper@cygnus.com>
* pthread.c (__pthread_reset_main_thread): Reset signal handlers
for the signals we used in the thread implementation [PR libc/1234].
* Versions: Export __pthread_kill_other_threads_np from libpthread
for GLIBC_2.1.2.
* signals.c: Pass sigcontext through wrapper to the user function.
1999-08-01 Ulrich Drepper <drepper@cygnus.com>
* Versions [ld.so] (GLIBC_2.0): Export __libc_internal_tsd_get and
__libc_internal_tsd_set.
1999-07-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* manager.c: Remove inclusion of <linux/tasks.h> since it's not
needed anymore.
1999-07-16 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* internals.h: Align _pthread_descr_struct to 32 bytes.
Reported by Tim Hockin <thockin@cobaltnet.com>, close PR
libc/1206.
1999-07-09 Ulrich Drepper <drepper@cygnus.com>
* oldsemaphore.c (sem_compare_and_swap): Fix use of compare and
swap function.
1999-07-09 Cristian Gafton <gafton@redhat.com>
* Makefile (libpthread-routines): Add oldsemaphore routine.
* Versions: Add sem_destroy, sem_getvalue, sem_init, sem_post,
sem_trywait, and sem_wait to GLIBC_2.1.
* oldsemaphore.c: New file.
* semaphore.c: Add default_symbol_versions for the changed functions.
(__new_sem_init): Rename from sem_init.
(__new_sem_post): Rename from sem_post.
(__new_sem_wait): Rename from sem_wait.
(__new_sem_trywait): Rename from sem_trywait.
(__new_sem_getvalue): Rename from sem_getvalue.
(__new_sem_destroy): Rename from sem_destroy.
1999-06-23 Robey Pointer <robey@netscape.com>
* internals.h: Added p_nextlock entry to separate queueing for a
lock from queueing for a CV (sometimes a thread queues on a lock
to serialize removing itself from a CV queue).
* pthread.c: Added p_nextlock to initializers.
* spinlock.c: Changed to use p_nextlock instead of p_nextwaiting.
1999-07-09 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_handle_create): Free mmap region after stack
if clone failed. Patch by Kaz Kylheku <kaz@ashi.FootPrints.net>.
1999-05-23 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* man/pthread_cond_init.man: Correct example.
Reported by Tomas Berndtsson <tomas@nocrew.org>.
* linuxthreads.texi (Condition Variables): Likewise.
1999-05-18 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/sparc/sparc64/pt-machine.h (__compare_and_swap): Use
casx not cas, also successful casx returns the old value in rd
and not the new value.
1999-05-16 Xavier Leroy <Xavier.Leroy@inria.fr>
* manager.c: If pthread_create() is given a NULL attribute
and the thread manager runs with a realtime policy, set the
scheduling policy of the newly created thread back to SCHED_OTHER.
* manager.c: If the PTHREAD_INHERIT_SCHED attribute is given,
initialize the schedpolicy field of new_thread->p_start_args
to that of the calling thread.
1999-04-29 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/sparc/sparc64/pt-machine.h (__compare_and_swap): cas
instruction does not allow memory element to use offset.
1999-04-28 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_allocate_stack): Optimize initialization of new
thread descriptor.
* sysdeps/pthread/bits/libc-lock.h (__libc_lock_define_initialized):
Don't use initializer since it is all zeroes.
(__libc_once_define): Likewise.
1999-04-16 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/arm/Implies: Removed since cmpxchg/no-cmpxchg
doesn't exist anymore.
* sysdeps/i386/Implies: Likewise.
* sysdeps/m68k/Implies: Likewise.
* sysdeps/mips/Implies: Likewise.
* sysdeps/powerpc/Implies: Likewise.
* sysdeps/sparc/sparc32/Implies: Likewise.
* sysdeps/sparc/sparc64/Implies: Likewise.
1999-04-15 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/alpha/bits/semaphore.h: Removed.
* sysdeps/powerpc/bits/semaphore.h: Removed.
* sysdeps/pthread/cmpxchg/bits/semaphore.h: Removed.
* sysdeps/pthread/no-cmpxchg/bits/semaphore.h: Removed.
* Makefile (headers): Remove bits/semaphore.h.
* semaphore.h: Define _pthread_descr if necessary.
Don't include limits.h. Define SEM_VALUE_MAX directly.
Define SEM_FAILED.
(sem_t): Protect element names with leading __.
Add declarations for sem_close, sem_open, and sem_unlink.
* semaphore.c: Adjust all functions for new element names.
Define sem_close, sem_open, and sem_unlink.
* Versions (libthread): Add sem_close, sem_open, and sem_unlink for
GLIBC_2.1.1.
* sysdeps/pthread/bits/pthreadtypes.h: Define _pthread_descr only if
necessary.
1999-03-16 H.J. Lu <hjl@gnu.org>
* specific.c (pthread_key_delete): Check th->p_terminated to see
if the thread is running.
* Versions (__libc_internal_tsd_get, __libc_internal_tsd_set):
Added to GLIBC_2.0 for libc.so.
1999-02-12 H.J. Lu <hjl@gnu.org>
* Versions (__libc_current_sigrtmin, __libc_current_sigrtmax,
__libc_allocate_rtsig): Added to GLIBC_2.1.
* internals.h (DEFAULT_SIG_RESTART): Removed.
(DEFAULT_SIG_CANCEL): Removed.
* pthread.c (init_rtsigs, __libc_current_sigrtmin,
__libc_current_sigrtmax, __libc_allocate_rtsig): New functions.
(__pthread_sig_restart, __pthread_sig_cancel,
__pthread_sig_debug): Initialized.
(pthread_initialize): Call init_rtsigs () to initialize
real-time signals.
1999-02-03 H.J. Lu <hjl@gnu.org>
* manager.c (__pthread_manager): Do block __pthread_sig_debug.
Don't restart the thread which sent REQ_DEBUG.
(pthread_start_thread): Check if __pthread_sig_debug > 0
before debugging.
* pthread.c (__pthread_initialize_manager): Suspend ourself
after sending __pthread_sig_debug to gdb instead of
__pthread_sig_cancel.
1999-01-24 H.J. Lu <hjl@gnu.org>
* manager.c (__pthread_manager): Delete __pthread_sig_debug
from mask if __pthread_sig_debug > 0.
(pthread_handle_create): Increment __pthread_handles_num.
* manager.c (pthread_handle_create): Don't pass CLONE_PTRACE to clone.
* pthread.c (__pthread_initialize_manager): Likewise.
* pthread.c (pthread_initialize): Use __libc_allocate_rtsig (1)
instead of __libc_allocate_rtsig (2).
(__pthread_initialize_manager): Send __pthread_sig_debug to gdb
instead of __pthread_sig_cancel.
(pthread_handle_sigdebug): Fix comments.
1999-01-21 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_allocate_stack): Set
__pthread_nonstandard_stacks if user-specified stack is used.
1999-01-16 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Add _LFS_ASYNCHRONOUS_IO,
_LFS_LARGEFILE, _LFS64_LARGEFILE, and _LFS64_STDIO from Unix98.
1999-01-07 Xavier Leroy <Xavier.Leroy@inria.fr>
* pthread.c: Use a third signal __pthread_sig_debug distinct
from __pthread_sig_cancel to notify gdb when a thread is
created
* manager.c: Likewise.
* internals.h: Likewise.
* signals.c: The implementation of sigwait(s) assumed that
all signals in s have signal handlers already attached.
This is not required by the standard, so make it work
also if some of the signals have no handlers.
1999-01-05 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* linuxthreads.texi: Remove pointers from first @node. Move old
@node spec inside comment.
Update. 1998-12-31 Ulrich Drepper <drepper@cygnus.com> * iconvdata/Makefile: Use rpath $ORIGIN for modules which use any of the conversion libraries. * include/features.h: Mention latest extensions in _POSIX_C_SOURCE description. * libio/genops.c (list_all_lock): New variable. (_IO_un_link, _IO_link_in): Acquire lock before modifying _IO_list_all. [PR libc/911]. * sysdeps/i386/i686/strtok.s: Add missing cld. * sysdeps/i386/i686/mempcpy.S: New file. 1998-12-30 Geoff Keating <geoffk@ozemail.com.au> Suppress parentheses warnings: * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_FIND_ARG_COMPONENTS): here, * sysdeps/powerpc/dl-machine.c: here, * sysdeps/powerpc/fclrexcpt.c (feclearexcept): here, * sysdeps/powerpc/fesetround.c (fesetround): here, * sysdeps/powerpc/feupdateenv.c (feupdateenv): here, * sysdeps/powerpc/fraiseexcpt.c (feraiseexcept): here, * sysdeps/powerpc/fsetexcptflg.c (fesetexceptflag): here, * sysdeps/powerpc/s_rint.c (__rint): here, * sysdeps/powerpc/s_rintf.c (__rintf): here, * sysdeps/powerpc/w_sqrt.c (__sqrt): here, * sysdeps/powerpc/w_sqrtf.c (__sqrtf): and here. 1998-12-30 Geoff Keating <geoffk@ozemail.com.au> * wcsmbs/wcstold.c [__NO_LONG_DOUBLE_MATH]: Include wchar.h. * wcsmbs/wcstold_l.c [__NO_LONG_DOUBLE_MATH]: Likewise. Also define appropropriate prototypes, correct procedure names. 1998-12-30 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/generic/crypt-entry.c: Prototype __crypt_r, suppress warning. (__crypt_r): Add __restrict. * sysdeps/generic/crypt.h: Remove internal routine. Add __restrict. 1998-12-31 Ulrich Drepper <drepper@cygnus.com> * stdlib/longlong.h: Add missing #else in SPARC definitions. 1998-12-30 Andreas Jaeger <aj@arthur.rhein-neckar.de> Patches by Ralf Baechle <ralf@gnu.org>: * sysdeps/unix/sysv/linux/mips/sgidefs.h: Removed. * sysdeps/unix/sysv/linux/mips/sys/asm.h: Removed. * sysdeps/unix/sysv/linux/mips/sys/regdef.h: Removed. * sysdeps/unix/sysv/linux/mips/sys/fpregdef.h: Removed. * sysdeps/unix/sysv/linux/mips/regdef.h: Removed. * sysdeps/unix/sysv/linux/mips/fpregdef.h: Removed. * sysdeps/unix/sysv/linux/mips/Makefile: Remove delete files. * sysdeps/unix/sysv/linux/mips/Dist: Remove deleted files. * sysdeps/mips/sys/fpregdef.h: New files, enhanced versions of deleted linux specific files. * sysdeps/mips/sys/asm.h: Likewise. * sysdeps/mips/sgidefs.h: Likewise. * sysdeps/mips/fpregdef.h: Likewise. * sysdeps/mips/regdef.h: Likewise. * sysdeps/mips/Makefile: Add new headers. * sysdeps/mips/Dist: Add new files. * sysdeps/mips/fpu_control.h (_FPU_DEFAULT): Change value. 1998-12-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * iconvdata/Makefile: Remove variable assignments and rules that are now auto-generated. Include $(objpfx)iconv-rules instead. Btw, that removes a few typos. (charmaps): New variable. ($(objpfx)iconv-rules): New target. (gen-8bit-modules): Renamed from sed-generated-headers, remove .h suffixes. (gen-8bit-gap-modules): Renamed from awk-generated-headers, remove .h suffixes. (gen-special-modules): New variable. (generated-modules): New variable. (headers): Use it. (before-compile): Likewise. (generated): Likewise, and add iconv-rules. * iconvdata/euc-cn.c: Renamed from euccn.c. * iconvdata/euc-jp.c: Renamed from eucjp.c. * iconvdata/euc-kr.c: Renamed from euckr.c. * iconvdata/euc-tw.c: Renamed from euctw.c. * iconvdata/iso_6937.c: Renamed from iso6937.c. * iconvdata/iso_6937-2.c: Renamed from iso6937-2.c. * iconvdata/t.61.c: Renamed from t61.c. * iconvdata/Makefile (distribute): Adjusted for those renames. Remove $(objpfx) from names. 1998-12-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/generic/hp-timing.h: Fix comment. * sysdeps/generic/dl-hash.h: Likewise. * sysdeps/i386/i686/hp-timing.h: Likewise. 1998-12-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * posix/fnmatch.c (fnmatch): Always pass unsigned char values to FOLD macro. 1998-12-28 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * nss/db-Makefile ($(VAR_DB)/shadow.db): Fix last change. 1998-12-29 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Sync with current Linux 2.1.132 kernel sources. 1998-12-28 Andreas Jaeger <aj@arthur.rhein-neckar.de> Patches by Ralf Baechle <ralf@gnu.org> for Linux/MIPS: * sysdeps/unix/sysv/linux/mips/syscalls.list: Add ipc, change pread/pwrite and llseek calls. * sysdeps/unix/sysv/linux/mips/sysdep.S: New file. 1998-12-29 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * malloc/thread-m.h [_LIBC] : Fix for NO_THREADS case.
1998-12-31 18:19:19 +00:00
1998-12-31 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/pthread/bits/stdio-lock.h: Define _IO_lock_lock and
_IO_lock_unlock.
1998-12-29 Ulrich Drepper <drepper@cygnus.com>
* semaphore.c (sem_trywait): Don't forget to unlock the semaphore
lock. Patch by Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>.
1998-12-21 Ulrich Drepper <drepper@cygnus.com>
* manager.c: Threads now send __pthread_sig_cancel on termination.
Change clone call and signal masks.
* thread.c (pthread_handle_sigrestart): Remove special code for
manager.
(pthread_handle_sigcancel): In manager thread call
__pthread_manager_sighandler.
* sysdeps/i386/pt-machine.h (__compare_and_swap): Add memory clobber.
* sysdeps/i386/i686/pt-machine.h: Likewise.
Patches by Xavier Leroy.
Update. 1998-12-12 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * timezone/Makefile: Protect inclusion of z.* by avoid-generated and inhibit_timezone_rules instead of no_deps. * Make-dist: Pass inhibit_timezone_rules=t when making echo-distinfo. 1998-12-12 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * manual/Makefile (distribute): Remove dir-add.texinfo. * sysdeps/unix/sysv/linux/powerpc/Dist: Add sys/procfs.h and sys/user.h. 1998-12-11 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * manual/Makefile (stamp-summary): Use ^L as separator for sorting. * manual/arith.texi: Add comments before all @deffoox lines to get them added to the summary. * manual/creature.texi: Likewise. * manual/math.texi: Likewise. 1998-12-13 Andreas Jaeger <aj@arthur.rhein-neckar.de> * math/libm-test.c: Remove macro ISINF. Change all usages of ISINF to isinf. 1998-12-13 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/alpha/fpu/fsetexcptflg.c: Avoid -Wparentheses warning. * sysdeps/libm-ieee754/s_expm1.c (__expm1): Avoid -Wparentheses warning. * sysdeps/libm-ieee754/s_log1p.c (__log1p): Likewise. * sysdeps/libm-ieee754/e_logf.c (__ieee754_logf): Likewise. * sysdeps/libm-ieee754/s_expm1f.c (__expm1f): Likewise. * sysdeps/libm-ieee754/e_log.c (__ieee754_log): Likewise. * sysdeps/libm-ieee754/s_log1pf.c (__log1pf): Likewise. 1998-12-13 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sunrpc/svc_udp.c (svcudp_bufcreate): Declare len as socklen_t. (svcudp_recv): Likewise. 1998-12-13 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nss-nisplus.h: Change some mappings of NIS+ errors to NSS error codes to avoid endless loops. 1998-12-12 Geoff Keating <geoffk@ozemail.com.au> * posix/fnmatch.c (fnmatch): Arguments to FOLD must not have side-effects.
1998-12-14 09:14:02 +00:00
1998-12-14 Ulrich Drepper <drepper@cygnus.com>
* spinlock.c (__pthread_unlock): Don't crash if called for an
untaken mutex. Reported by Ruslan V. Brushkoff <rus@Snif.Te.Net.UA>.
Update. 1998-12-12 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * timezone/Makefile: Protect inclusion of z.* by avoid-generated and inhibit_timezone_rules instead of no_deps. * Make-dist: Pass inhibit_timezone_rules=t when making echo-distinfo. 1998-12-12 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * manual/Makefile (distribute): Remove dir-add.texinfo. * sysdeps/unix/sysv/linux/powerpc/Dist: Add sys/procfs.h and sys/user.h. 1998-12-11 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * manual/Makefile (stamp-summary): Use ^L as separator for sorting. * manual/arith.texi: Add comments before all @deffoox lines to get them added to the summary. * manual/creature.texi: Likewise. * manual/math.texi: Likewise. 1998-12-13 Andreas Jaeger <aj@arthur.rhein-neckar.de> * math/libm-test.c: Remove macro ISINF. Change all usages of ISINF to isinf. 1998-12-13 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/alpha/fpu/fsetexcptflg.c: Avoid -Wparentheses warning. * sysdeps/libm-ieee754/s_expm1.c (__expm1): Avoid -Wparentheses warning. * sysdeps/libm-ieee754/s_log1p.c (__log1p): Likewise. * sysdeps/libm-ieee754/e_logf.c (__ieee754_logf): Likewise. * sysdeps/libm-ieee754/s_expm1f.c (__expm1f): Likewise. * sysdeps/libm-ieee754/e_log.c (__ieee754_log): Likewise. * sysdeps/libm-ieee754/s_log1pf.c (__log1pf): Likewise. 1998-12-13 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sunrpc/svc_udp.c (svcudp_bufcreate): Declare len as socklen_t. (svcudp_recv): Likewise. 1998-12-13 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nis/nss-nisplus.h: Change some mappings of NIS+ errors to NSS error codes to avoid endless loops. 1998-12-12 Geoff Keating <geoffk@ozemail.com.au> * posix/fnmatch.c (fnmatch): Arguments to FOLD must not have side-effects.
1998-12-14 09:14:02 +00:00
* Examples/ex6.c: Unbuffer stdout and reduce sleep time to reduce
overall runtime.
1998-12-13 Ulrich Drepper <drepper@cygnus.com>
* Examples/ex3.c: Wait until all threads are started before
searching for the number to avoid race condition on very fast
systems.
1998-12-08 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/pthread/pthread.h: Remove __pthread_setcanceltype
declaration since it's not needed.
* sysdeps/pthread/pthread.h: Move internal functions to ...
* internals.h: ...here.
Update. 1998-12-04 Ulrich Drepper <drepper@cygnus.com> * argp/argp.h: Add __retrict. * dirent/dirent.h: Likewise. * elf/dlfcn.h: Likewise. * grp/grp.h: Likewise. * iconv/iconv.h: Likewise. * inet/aliases.h: Likewise. * libio/libio.h: Likewise. * libio/stdio.h: Likewise. * locale/locale.h: Likewise. * misc/mntent.h: Likewise. * posix/wordexp.h: Likewise. * pwd/pwd.h: Likewise. * resolv/netdb.h: Likewise. * rt/aio.h: Likewise. * stdio-common/printf.h: Likewise. * stdlib/monetary.h: Likewise. * stdlib/stdlib.h: Likewise. * string/argz.h: Likewise. * string/envz.h: Likewise. * string/string.h: Likewise. * time/time.h: Likewise. 1998-12-04 Zack Weinberg <zack@rabi.phys.columbia.edu> * misc/sys/cdefs.h: Only include features.h if _FEATURES_H isn't defined. gcc's redundant include optimizer isn't clever enough to prevent a reinclusion here. Define __restrict to the empty string only if not GCC or GCC version less than 2.92. 1998-12-03 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/unix/sysv/linux/configure.in: Fix last change. 1998-12-03 Mark Kettenis <kettenis@phys.uva.nl> * time/strptime.c (strptime_internal): Make use of `%C' format specifier if it is seen together with the `%y' specifier. 1998-12-04 Ulrich Drepper <drepper@cygnus.com> * po/sk.po: New file. 1998-12-03 Scott Bambrough <scottb@corelcomputer.com> * sysdeps/arm/dl-machine.h (dl_start_user): Incorrect address for _dl_main_searchlist passed to _dl_init_next. 1998-12-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * math/libm-test.c: Expand literal tabs in strings. Normalize whitespace. 1998-12-02 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sysdeps/unix/sysv/linux/sys/fsuid.h: Fix spelling.
1998-12-04 20:58:15 +00:00
1998-12-02 H.J. Lu <hjl@gnu.org>
* pthread.c (__pthread_sig_restart): Initiliaze to 0 if
SIGRTMIN is defined.
(__pthread_sig_cancel): Likewise.
1998-12-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* wrapsyscall.c: Include <sys/mman.h> for msync,
<stdlib.h> for system and <termios.h> for tcdrain prototype.
Correct msync declaration.
Update. 1998-11-30 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nscd/nscd_getpw_r.c: Include nscd_proto.h for prototypes. * sysdeps/generic/errno-loc.c: Include <errno.h> for prototype, undefine errno to get variable. * sysdeps/unix/sysv/linux/i386/setfsuid.c: Include <sys/fsuid.h> instead of <unistd.h> for prototype. * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise. 1998-11-30 Ulrich Drepper <drepper@cygnus.com> * misc/err.h: Correct comments and use protected attribute keywords. Reported by Joseph Myers <jsm28@cam.ac.uk>. 1998-11-29 Roland McGrath <roland@baalperazim.frob.com> * malloc/thread-m.h [_LIBC]: Include <bits/libc-tsd.h>, and remove tsd stuff from pthreads/cthreads libc sections. Use __libc_tsd_define for MALLOC key. [_LIBC] (tsd_key_t, tsd_key_create): Define to a zero-size type and a no-op, respectively. [_LIBC] (tsd_setspecific, tsd_getspecific): Use __libc_tsd_get/set. * elf/dl-error.c: Include <bits/libc-tsd.h>. Use __libc_tsd_define for DL_ERROR key. (tsd_setspecific, tsd_getspecific): Rewritten using __libc_tsd_get/set. * sysdeps/mach/hurd/bits/libc-tsd.h: New file. * sysdeps/generic/bits/libc-tsd.h: New file. * Makefile (distribute): Add bits/libc-tsd.h. 1998-10-12 Roland McGrath <roland@baalperazim.frob.com> * elf/dl-error.c: Remove kludge to check for ld.so load address. There is no need if weak undefined symbols are not used in ld.so; see linuxthreads/ChangeLog for changes to files linuxthreads/sysdeps/pthread/bits/libc-lock.h and linuxthreads/sysdeps/pthread/bits/libc-tsd.h. 1998-11-30 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/i386/bits/string.h (__memset_cc): Fix typo (s->__s). * sysdeps/i386/i486/bits/string.h: Add prototypes for all new inline functions. * sysdeps/i386/bits/string.h: Likewise. 1998-11-30 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Remove ipc_kludge. 1998-11-30 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * db2/progs/db_load/db_load.c (main): Avoid -Wparentheses warning.
1998-11-30 14:21:53 +00:00
1998-11-29 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/pthread/bits/libc-tsd.h (__libc_tsd_define, __libc_tsd_get,
__libc_tsd_set): New macros for new interface.
* no-tsd.c: New file, provide uninitialized defns of
__libc_internal_tsd_get and __libc_internal_tsd_set.
* Makefile (routines): Add no-tsd.
1998-10-12 Roland McGrath <roland@baalperazim.frob.com>
* internals.h: Include <bits/libc-tsd.h>, not <bits/libc-lock.h>.
* sysdeps/pthread/bits/libc-lock.h (__libc_internal_tsd_get,
__libc_internal_tsd_set): Move decls to ...
* sysdeps/pthread/bits/libc-tsd.h: New file for __libc_internal_tsd_*
declarations.
* sysdeps/pthread/bits/libc-lock.h (__libc_internal_tsd_get,
__libc_internal_tsd_set): Make these pointers to functions, not
functions; remove #pragma weak decls for them.
* specific.c (__libc_internal_tsd_get, __libc_internal_tsd_set):
Define static functions and initialized pointers to them.
1998-11-18 Ulrich Drepper <drepper@cygnus.com>
* Makefile (CFLAGS-mutex.c): Define as -D__NO_WEAK_PTHREAD_ALIASES.
(CFLAGS-specific.c): Likewise.
(CFLAGS-pthread.c): Likewise.
(CFLAGS-ptfork.c): Likewise.
(CFLAGS-cancel.c): Likewise.
* sysdeps/pthread/bits/libc-lock.h: Don't mark __pthread_* functions
as weak references if __NO_WEAK_PTHREAD_ALIASES is defined.
* mutex.c (pthread_mutex_init): Define as strong symbol.
(pthread_mutex_destroy): Likewise.
(pthread_mutex_trylock): Likewise.
(pthread_mutex_lock): Likewise.
(pthread_mutex_unlock): Likewise.
(pthread_mutexattr_init): Likewise.
(pthread_mutexattr_destroy): Likewise.
(pthread_once): Likewise.
* ptfork.c (pthread_atfork): Likewise.
* specific.c (pthread_key_create): Likewise.
(pthread_setspecific): Likewise.
(pthread_getspecific): Likewise.
Update. 1998-11-16 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/opendir.c: Use o_directory_works differently. Treat zero value as uninitialized so that variable can go into .bss. * dirent/opendir-tst1.c: Print error strings to stdout. * sysdeps/unix/sysv/linux/mmap64.c: New file. Empty. * sysdeps/unix/sysv/linux/syscalls.list: Add mmap with mmap64 alias. * sysdeps/unix/sysv/linux/arm/mmap.S: Add mmap64 alias. * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise. * sysdeps/unix/sysv/linux/m68k/mmap.S: Likewise. 1998-11-16 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * time/tzfile.c (__tzfile_read): Check that types[i].isdst is in range. 1998-11-16 Ulrich Drepper <drepper@cygnus.com> * libio/bits/stdio.h (fread_unlocked): Do handle zero size and number. (fwrite_unlocked): Likewise. 1998-11-16 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * libio/bits/stdio.h (fread_unlocked): Don't evaluate non-constant twice. Don't bother handling zero size. (frwite_unlocked): Likewise. 1998-11-15 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * configure.in: Fix regex for makeinfo version string. 1998-11-15 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * sunrpc/rpc_sample.c (write_sample_server): Avoid -Wparentheses warning. * sunrpc/rpc_svcout.c (write_program): Likewise. 1998-11-15 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> * time/Makefile (CFLAGS-test_time.c): Add -Wno-format. 1998-11-16 Ulrich Drepper <drepper@cygnus.com * misc/sys/mman.h: Pretty print prototypes. 1998-11-15 Ulrich Drepper <drepper@cygnus.com * misc/error.c (error): Don't use result of strerror_r call directly since at least DEC Unix has a wrong return type. Patch by Johan Danielsson <joda@pdc.kth.se>. 1998-11-16 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1998-11-16 12:02:08 +00:00
1998-11-15 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* linuxthreads.texi: Fix punctuation after xref.
Update. 1998-11-12 Ulrich Drepper <drepper@cygnus.com> * inet/netinet/in.h: Add a few more IPPROTO_* macros. * libio/Makefile (headers): Add bits/stdio.h. * libio/iofread_u.c: Undefine fread_unlocked before definition. * libio/iofwrite_u.c: Undefine fwrite_unlocked before definition. * libio/stdio.h: Move optimizations into ... * libio/bits/stdio.h: ...here. New file. * libio/iofread.c: Pretty print. 1998-11-12 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/gnu/bits/utmpx.h: Protect members of struct __exit_status with `__'. Rename pad member of struct utmpx to __unused. (RUN_LVL): Define unconditionally. * sysdeps/gnu/bits/utmp.h: Rename pad member of struct utmpx to __unused. 1998-11-12 Philip Blundell <philb@gnu.org> * sysdeps/unix/sysv/linux/netlink/netlink.h: New file, support for Linux AF_NETLINK sockets (needed since the kernel version is unusable). * sysdeps/unix/sysv/linux/Makefile: Install it. * sysdeps/unix/sysv/linux/Dist: Distribute it. 1998-11-12 Andreas Jaeger <aj@arthur.rhein-neckar.de> * timezone/tst-timezone.c (tests): Add entry for America/Chicago to test for bug in PR libc/863. 1998-11-12 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Cleanup comment. * elf/dynamic-link.h (_ELF_DYNAMIC_DO_RELOC): Rename macro parameter lazy to do_lazy to avoid clashing with struct member name. Reported by Ralf Baechle <ralf@uni-koblenz.de>. 1998-11-10 H.J. Lu <hjl@gnu.org> * sysdeps/unix/sysv/linux/bits/local_lim.h: Undefine NR_OPEN if it is defined in <linux/limits.h>. 1998-11-09 13:07 -0500 Zack Weinberg <zack@rabi.phys.columbia.edu> * include/protocols/routed.h: Include the real header with a full path from the top of the source tree. * include/protocols/rwhod.h: Likewise. * include/protocols/talkd.h: Likewise. * include/protocols/timed.h: Likewise. * timezone/Makefile: Don't include z.ZONE files if no_deps is set, not if avoid-generated is set. 1998-11-12 Ulrich Drepper <drepper@cygnus.com> * signal/signal.h: Undo last change. Get definition of timespec if __USE_POSIX199309. * string/bits/string2.h (__strpbrk_c2): Add intermediate cast to size_t to prevent gcc warning when using -Wqual-cast. (__strpbrk_c3): Likewise. Suggested by Alan Curry <pacman@cqc.com>.
1998-11-12 18:06:31 +00:00
1998-11-10 H.J. Lu <hjl@gnu.org>
* sysdeps/unix/sysv/linux/bits/local_lim.h: Undefine NR_OPEN
if it is defined in <linux/limits.h>.
1998-10-29 14:28 Ulrich Drepper <drepper@cygnus.com>
* spinlock.h (__pthread_trylock): Define inline.
(__pthread_lock): Add extra parameter to declaration. Declare
using internal_function.
(__pthread_unlock): Declare using internal_function.
* spinlock.c (__pthread_lock): Add new parameter. Use it instead
of local variable self. Avoid recomputing self. Define using
internal_function.
(__pthread_trylock): Remove.
(__pthread_unlock): Define using internal_function.
* cancel.c: Adjust for __pthread_lock interface change. Use already
computed self value is possible.
* condvar.c: Likewise.
* join.c: Likewise.
* manager.c: Likewise.
* mutex.c: Likewise.
* pthread.c: Likewise.
* rwlock.c: Likewise.
* semaphore.c: Likewise.
* signals.c: Likewise.
1998-10-27 13:46 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/pthread/pthread.h (struct _pthread_cleanup_buffer): Prepend
__ to field names of the struct.
* sysdeps/pthread/bits/pthreadtypes.h (struct _pthread_fastlock):
Likewise.
(pthread_attr_t): Likewise.
(pthread_cond_t): Likewise.
(pthread_condattr_t): Likewise.
(pthread_mutex_t): Likewise.
(pthread_mutexattr_t): Likewise.
(pthread_rwlock_t): Likewise.
(pthread_rwlockattr_t): Likewise.
* attr.c: Adjust for pthread.h and pthreadtypes.h change.
* cancel.c: Likewise.
* condvar.c: Likewise.
* manager.c: Likewise.
* mutex.c: Likewise.
* pthread.c: Likewise.
* ptlongjmp.c: Likewise.
* rwlock.c: Likewise.
* spinlock.c: Likewise.
1998-10-09 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/pt-machine.h (get_eflags, set_eflags): Mark these
also with PT_EI.
* sysdeps/i386/i686/pt-machine.h: Remove unused inline
definitions.
* Makefile (libpthread-routines): Add pt-machine.
* pt-machine.c: New file.
* sysdeps/alpha/pt-machine.h: Define PT_EI as extern inline is not
yet defined. Use PT_EI in extern inline definitions.
* sysdeps/arm/pt-machine.h: Likewise.
* sysdeps/i386/pt-machine.h: Likewise.
* sysdeps/i386/i686/pt-machine.h: Likewise.
* sysdeps/m68k/pt-machine.h: Likewise.
* sysdeps/mips/pt-machine.h: Likewise.
* sysdeps/powerpc/pt-machine.h: Likewise.
* sysdeps/sparc/sparc32/pt-machine.h: Likewise.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
1998-10-02 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* semaphore.h: Include <sys/types.h> so that _pthread_descr
is declared.
1998-09-15 David S. Miller <davem@pierdol.cobaltmicro.com>
* sysdeps/sparc/sparc32/pt-machine.h (INIT_THREAD_SELF): Add nr
argument.
* sysdeps/sparc/sparc64/pt-machine.h (INIT_THREAD_SELF): Likewise.
1998-09-12 14:24 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* sysdeps/unix/sysv/linux/bits/sigthread.h: Add multiple inclusion
guard.
1998-09-02 11:08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* signals.c (sigaction): Check that sig is less than NSIG to avoid
array index overflow.
1998-09-06 10:56 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/pthread/semaphore.h: New file.
1998-09-06 09:08 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/pthread/bits/libc-lock.h (enum __libc_tsd_key_t): Add
_LIBC_TSD_KEY_DL_ERROR.
1998-08-31 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/i386/i686/pt-machine.h (testandset): Add memory clobber.
* sysdeps/i386/pt-machine.h: Likewise.
Suggested by Roland McGrath.
1998-08-28 13:58 Ulrich Drepper <drepper@cygnus.com>
* internals.h: Also define THREAD_GETMEM_NC and THREAD_SETMEM_NC to
access thread data with non-constant offsets.
* specific.c: Use THREAD_GETMEM_NC and THREAD_SETMEM_NC where
necessary.
* sysdeps/i386/useldt.h: Fix typo. Add THREAD_GETMEM_NC and
THREAD_SETMEM_NC definitions.
* sysdeps/sparc/sparc32/pt-machine.h: Define THREAD_GETMEM_NC and
THREAD_SETMEM_NC.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
1998-08-26 15:46 Ulrich Drepper <drepper@cygnus.com>
* internals.h: Define THREAD_GETMEM and THREAD_SETMEM to default if
not already defined.
(struct _pthread_descr_struct): Add p_self and p_nr field.
* manager.c (__pthread_handles): Define second element to point
to manager thread.
(__pthread_handles_num): Initialize to 2.
(__pthread_manager): Use INIT_THREAD_SELF with two arguments.
(pthread_start_thread): Likewise.
(pthread_handle_create): Start search for free slot at entry 2.
Initialize new fields p_self and p_nr.
Call __clone with CLONE_PTRACE if available.
(pthread_free): Call FREE_THREAD_SELF if available.
* pthread.c (__pthread_initial_thread): Initialize new fields.
(__pthread_manager_thread): Likewise.
(__pthread_initialize_manager): Call __clone with CLONE_PTRACE.
* cancel.c: Use THREAD_GETMEM and THREAD_SETMEM to access the
elements of the thread descriptor.
* condvar.c: Likewise.
* errno.c: Likewise.
* join.c: Likewise.
* manager.c: Likewise.
* pthread.c: Likewise.
* ptlongjmp.c: Likewise.
* semaphore.c: Likewise.
* signals.c: Likewise.
* specific.c: Likewise.
* spinlock.c: Likewise.
* sysdeps/alpha/pt-machine.h (INIT_THREAD_SELF): Add extra parameter.
* sysdeps/i386/useldt.h: New file.
* sysdeps/i386/i686/pt-machine.h: Show how to use this file.
* sysdeps/sparc/sparc32/pt-machine.h: Define THREAD_GETMEM and
THREAD_SETMEM using __thread_self.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
Update. 1998-08-24 16:34 Ulrich Drepper <drepper@cygnus.com> * debug/catchsegv.sh: Handle text preceding backtrace better. * sysdeps/generic/segfault.c: Allow register dump. Allow handler to be installed for other signals than SIGSEGV. * sysdeps/generic/register-dump.h: New file. * sysdeps/i386/register-dump.h: New file. * sysdeps/powerpc/register-dump.h: New file. * sysdeps/unix/sysv/linux/i386/profil-counter.h: Use macros from sigcontextinfo.h. * sysdeps/unix/sysv/linux/powerpc/profil-counter.h: Use i386 version. 1998-08-24 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/unix/sysv/linux/powerpc/sigcontextinfo.h: New file. 1998-08-09 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/unix/sysv/linux/powerpc/chown.c: New file. * sysdeps/unix/sysv/linux/powerpc/lchown.S: New file. * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Add chown, remove getresuid, getresgid. 1998-08-16 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/unix/sysv/linux/powerpc/clone.S: Fix bugs. Set up stack pointer in userland. 1998-08-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/sys/mount.h (MNT_FORCE): Define as enum and fix value. 1998-08-22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/ldd.bash.in: Add missing quotes around $file. Make loop over arguments Bourne shell compatible. Don't exit unsuccessfully if nonelf returns successfully. Avoid duplicating most of the script. * sysdeps/unix/sysv/linux/ldd-rewrite.sed: Add missing quotes around $file. 1998-08-24 10:37 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/Versions (_IO_do_write, _IO_file_attach, _IO_file_close_it, _IO_file_finish, _IO_file_fopen, _IO_file_init, _IO_file_overflow, _IO_file_seekoff, _IO_file_setbuf, _IO_file_sync, _IO_file_underflow, _IO_file_write, _IO_file_xsputn): Added to GLIBC_2.1. * libio/fileops.c (_IO_do_write, _IO_file_attach, _IO_file_close_it, _IO_file_finish, _IO_file_fopen, _IO_file_init, _IO_file_overflow, _IO_file_seekoff, _IO_file_setbuf, _IO_file_sync, _IO_file_underflow, _IO_file_write, _IO_file_xsputn): Change the prefix to "_IO_new_". Added to GLIBC_2.1. * libio/libioP.h (_IO_do_write, _IO_file_attach, _IO_file_close_it, _IO_file_finish, _IO_file_fopen, _IO_file_init, _IO_file_overflow, _IO_file_seekoff, _IO_file_setbuf, _IO_file_sync, _IO_file_underflow, _IO_file_write, _IO_file_xsputn): Add prototypes for the prefix "_IO_new_". * libio/oldfileops.c (_IO_do_write, _IO_file_attach, _IO_file_close_it, _IO_file_finish, _IO_file_fopen, _IO_file_init, _IO_file_overflow, _IO_file_seekoff, _IO_file_setbuf, _IO_file_sync, _IO_file_underflow, _IO_file_write, _IO_file_xsputn): Added to GLIBC_2.0. * csu/initfini.c: Return to .text before __gmon_start__. * elf/elf.h (EM_FAKE_ALPHA): Rename from EM_OLD_ALPHA. (STO_MIPS_*): Rename from STO_*. (STB_MIPS_SPLIT_COMMON): Rename from STB_SPLIT_COMMON. (STO_ALPHA_NOPV, STO_ALPHA_STD_GPLOAD): New. * math/atest-exp.c (mpn_bitsize): Fix bit location calculation. (main): e3s is negative on zero. * math/atest-exp2.c: Likewise. 1998-08-23 Andreas Jaeger <aj@arthur.rhein-neckar.de> * Makerules (install): Add comment about absolute paths.
1998-08-24 16:46:16 +00:00
1998-08-24 Geoff Keating <geoffk@ozemail.com.au>
* spinlock.c (__pthread_lock): Reset p_nextwaiting to NULL if it
turned out that we didn't need to queue after all.
1998-08-22 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/pt-machine.h: Remove testandset, it's not used
and wastes space; correct types.
1998-08-08 11:18 H.J. Lu <hjl@gnu.org>
* signals.c (sigaction): Handle NULL argument.
1998-08-04 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/bits/sigthread.h: Use __sigset_t instead
of sigset_t.
Update. 1998-08-03 16:36 Ulrich Drepper <drepper@cygnus.com> * catgets/catgets.c: Use mmap/munmap only is _POSIX_MAPPED_FILES is defined. * catgets/open_catalog.c: Likewise. * iconv/iconv_prog.c: Likewise. * intl/loadmsgcat.c: Likewise. * locale/findlocale.c: Likewise. * locale/loadlocale.c: Likewise. * locale/programs/localedef.c: Likewise. * malloc/malloc.c: Likewise. * elf/elf.h: Fix typo. * math/Makefile: Use $(LN_S) instead of ln. * sysdeps/generic/getpgid.c: Fix return type. 1998-08-01 02:49 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu> * sysdeps/posix/tempname.c (__stdio_gen_tempname): Rename to __gen_tempname and simplify the interface. Strip out the code to do path search and create FILE objects. This function now takes a mktemp() style template and returns either a name or a file descriptor. (__path_search): New function; searches for directories for temp files. * sysdeps/generic/tempname.c: Stub out __gen_tempname and __path_search, not __stdio_gen_tempname. * libio/stdio.h: Prototype __gen_tempname and __path_search, not __stdio_gen_tempname. * stdio/stdio.h: Likewise. * stdio-common/tempnam.c: Use __path_search and __gen_tempname. * stdio-common/tmpfile.c: Likewise. * stdio-common/tmpfile64.c: Likewise. * stdio-common/tmpnam.c: Likewise. * stdio-common/tmpnam_r.c: Likewise. * misc/mkstemp.c: New file. Use __gen_tempname. * misc/mktemp.c: Likewise. * sysdeps/posix/mkstemp.c: Removed. * sysdeps/posix/mktemp.c: Removed. * sysdeps/generic/mkstemp.c: Removed. * sysdeps/generic/mktemp.c: Removed. 1998-08-02 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * configure.in: Check, if door add-on is installed. * config.make.in: Add have_doors. * sunrpc/Makefile: Add HAVE_DOOR define. * sunrpc/key_call.c: Add keyserv/door interface. * sunrpc/svc_unix.c: Call setsockopt only if SO_PASSCRED is defined. * sunrpc/clnt_unix.c: Likewise. 1998-08-02 Andreas Jaeger <aj@arthur.rhein-neckar.de> * inet/netinet/in.h (IN_CLASSC): Correct mask. Reported by Ian Staniforth <I.Staniforth@sheffield.ac.uk> [fixes PR libc/727]. 1998-08-03 10:23 Ulrich Drepper <drepper@cygnus.com> * misc/Makefile: Fix installation problem with --disable-shared. * posix/Makefile: Likewise. 1998-08-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * posix/regex.c (re_search_2): Optimize searching for anchored pattern if '^' cannot match at embedded newlines. (regerror): Renamed from __regerror, which it should only be called if _LIBC. 1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sunrpc/svc_unix.c (__msgread): Check setsockopt return value. 1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/glob.c: Remove obsolete cast. 1998-07-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Rules (tests): Fix last change.
1998-08-03 16:47:01 +00:00
1998-08-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (linuxthreads-version): Extract correct number from
Banner.
1998-07-29 Xavier Leroy <Xavier.Leroy@inria.fr>
* Banner: Bump version number to 0.8
* FAQ.html: Many updates, in particular w.r.t. debugging.
* manager.c: Support for non-default stacksize for
LinuxThreads-allocated stacks;
don't use guard pages for stacks with default size, rely on
rlimit(RLIMIT_STACK) instead (it's cheaper).
* attr.c: Likewise.
* cancel.c: Use __pthread_sig_cancel and __pthread_sig_restart
everywhere instead of PTHREAD_SIG_CANCEL and PTHREAD_SIG_RESTART.
* condvar.c: Likewise.
* internals.h: Likewise.
* restart.h: Likewise.
* signals.c: Likewise.
* pthread.c: Likewise; set rlimit(RLIMIT_STACK) as we need it.
1998-07-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* weaks.c: Define pthread_mutexattr_[sg]ettype instead of
__pthread_mutexattr_[sg]ettype. Add more weak aliases.
* Versions: Put __pthread_mutexattr_settype under version
GLIBC_2.0. Don't export __pthread_mutexattr_setkind_np and
__pthread_mutexattr_gettype.
1998-07-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/pthread/bits/libc-lock.h: Make
__pthread_mutexattr_settype weak. Don't make
__pthread_mutexattr_setkind_np weak.
Update. 1998-07-16 10:23 Ulrich Drepper <drepper@cygnus.com> * argp/argp-fmtstream.c: Unify names of used global functions. * argp/argp-help.c: Likewise. * assert/assert-perr.c: Likewise * assert/assert.c: Likewise * dirent/scandir.c: Likewise * dirent/scandir64.c: Likewise * dirent/versionsort.c: Likewise * dirent/versionsort64.c: Likewise * gmon/bb_exit_func.c: Likewise. * gmon/gmon.c: Likewise. * grp/initgroups.c: Likewise. * iconv/gconv_conf.c: Likewise. * inet/getnameinfo.c: Likewise. * inet/getnetgrent_r.c: Likewise. * inet/inet_ntoa.c: Likewise. * inet/rcmd.c: Likewise. * inet/rexec.c: Likewise. * inet/ruserpass.c: Likewise. * io/fts.c: Likewise. * io/ftw.c: Likewise. * io/ftw64.c: Likewise. * io/getdirname.c: Likewise. * io/getwd.c: Likewise. * io/lockf.c: Likewise. * libio/iofdopen.c: Likewise. * libio/iopopen.c: Likewise. * login/utmp_daemon.c: Likewise. * malloc/mtrace.c: Likewise. * malloc/obstack.c * misc/daemon.c: Likewise. * misc/efgcvt_r.c: Likewise. * misc/err.c: Likewise. * misc/error.c: Likewise. * misc/fstab.c: Likewise. * misc/getpass.c: Likewise. * misc/getttyent.c: Likewise. * misc/mntent_r.c: Likewise. * misc/search.h: Likewise. * misc/syslog.c: Likewise. * nscd/nscd_getgr_r.c: Likewise. * nscd/nscd_getpw_r.c: Likewise. * posix/getpgrp.c: Likewise. * posix/wordexp.c: Likewise. * pwd/fgetpwent_r.c: Likewise. * pwd/getpw.c: Likewise. * resolv/herror.c: Likewise. * resolv/res_init.c: Likewise. * shadow/fgetspent_r.c: Likewise. * shadow/lckpwdf.c: Likewise. * signal/sigrelse.c: Likewise. * stdio-common/asprintf.c: Likewise. * stdio-common/dprintf.c: Likewise. * stdio-common/getw.c: Likewise. * stdio-common/putw.c: Likewise. * stdio-common/snprintf.c: Likewise. * stdio-common/sprintf.c: Likewise. * stdio-common/sscanf.c: Likewise. * stdlib/lrand48_r.c: Likewise. * stdlib/mrand48_r.c: Likewise. * string/argz-replace.c: Likewise. * string/envz.c: Likewise. * sunrpc/auth_des.c: Likewise. * sunrpc/auth_unix.c: Likewise. * sunrpc/bindrsvprt.c: Likewise. * sunrpc/clnt_gen.c: Likewise. * sunrpc/clnt_perr.c: Likewise. * sunrpc/clnt_simp.c: Likewise. * sunrpc/clnt_tcp.c: Likewise. * sunrpc/clnt_udp.c: Likewise. * sunrpc/get_myaddr.c: Likewise. * sunrpc/key_call.c: Likewise. * sunrpc/netname.c: Likewise. * sunrpc/openchild.c: Likewise. * sunrpc/pmap_rmt.c: Likewise. * sunrpc/rpc_dtable.c: Likewise. * sunrpc/rtime.c: Likewise. * sunrpc/svc_run.c: Likewise. * sunrpc/svc_simple.c: Likewise. * sunrpc/svc_tcp.c: Likewise. * sunrpc/svc_udp.c: Likewise. * sunrpc/svcauth_des.c: Likewise. * sunrpc/xdr_array.c: Likewise. * sunrpc/xdr_rec.c: Likewise. * sunrpc/xdr_ref.c: Likewise. * sunrpc/xdr_stdio.c: Likewise. * sysdeps/generic/abort.c: Likewise. * sysdeps/generic/dl-sysdep.c: Likewise. * sysdeps/generic/fstatfs64.c: Likewise. * sysdeps/generic/ftruncate64.c: Likewise. * sysdeps/generic/getrlimit64.c: Likewise. * sysdeps/generic/glob.c: Likewise. * sysdeps/generic/prof-freq.c: Likewise. * sysdeps/generic/putenv.c: Likewise. * sysdeps/generic/statfs64.c: Likewise. * sysdeps/generic/ttyname_r.c: Likewise. * sysdeps/generic/utmp_file.c: Likewise. * sysdeps/generic/vlimit.c: Likewise. * sysdeps/generic/vtimes.c: Likewise. * sysdeps/posix/cuserid.c: Likewise. * sysdeps/posix/euidaccess.c: Likewise. * sysdeps/posix/mkstemp.c: Likewise. * sysdeps/posix/mktemp.c: Likewise. * sysdeps/posix/pread.c: Likewise. * sysdeps/posix/pread64.c: Likewise. * sysdeps/posix/profil.c: Likewise. * sysdeps/posix/pwrite.c: Likewise. * sysdeps/posix/pwrite64.c: Likewise. * sysdeps/posix/sigblock.c: Likewise. * sysdeps/posix/sigpause.c: Likewise. * sysdeps/posix/ttyname.c: Likewise. * sysdeps/posix/ttyname_r.c: Likewise. * sysdeps/posix/waitid.c: Likewise. * sysdeps/unix/getlogin_r.c: Likewise. * sysdeps/unix/grantpt.c: Likewise. * sysdeps/unix/rewinddir.c: Likewise. * sysdeps/unix/sysv/linux/gethostid.c: Likewise. * sysdeps/unix/sysv/linux/getpt.c: Likewise. * sysdeps/unix/sysv/linux/if_index.c: Likewise. * sysdeps/unix/sysv/linux/ptsname.c: Likewise. * sysdeps/unix/sysv/linux/sendmsg.c: Likewise. * sysdeps/unix/sysv/linux/statvfs.c: Likewise. * sysdeps/unix/sysv/linux/ttyname.c: Likewise. * sysdeps/unix/sysv/linux/ttyname_r.c: Likewise. * sysdeps/unix/sysv/linux/ulimit.c: Likewise. * sysdeps/unix/sysv/linux/unlockpt.c: Likewise. * sysvipc/sys/shm.h: Likewise. * time/ctime_r.c: Likewise. * time/strptime.c: Likewise. * wcsmbs/mbrlen.c: Likewise. * wcsmbs/wcsdup.c: Likewise. * wcsmbs/wcsxfrm.c: Likewise. * wctype/wcfuncs.c: Likewise. * sysdeps/unix/sysv/linux/i386/socker.S: Change to honor NO_WEAK_ALIAS. * sysdeps/unix/sysv/linux/accept.S: Don't generate __ name. * sysdeps/unix/sysv/linux/bind.S: Likewise. * sysdeps/unix/sysv/linux/getsockname.S: Likewise. * sysdeps/unix/sysv/linux/listen.S: Likewise. * sysdeps/unix/sysv/linux/recvfrom.S: Likewise. * sysdeps/unix/sysv/linux/sendto.S: Likewise. * sysdeps/unix/sysv/linux/setsockopt.S: Likewise. * grp/fgetgrent_r.c: Use explicit locking of the stream. * elf/Makefile (rtld-routines): Add dl-environ. * sysdeps/generic/dl-environ.c: New file. * libio/Makefile [REENTRANT] (routines): Add iofputs_u. * libio/Versions: Add fputs_unlocked. * libio/iofputs_u.c: New file. * libio/stdio.h: Add prototype for fputs_unlocked. * sunrpc/rpc/auth.h: Use __PMT instead of __P in type definitions. * sunrpc/rpc/clnt.h: Likewise. * sunrpc/rpc/pmap_clnt.h: Likewise. * sunrpc/rpc/svc.h: Likewise. * sunrpc/rpc/xdr.h: Likewise. * sysdeps/i386/memchr.S: Correct for more strict gas. * sysdeps/i386/fpu/bits/mathinline.h: Likewise. * sysdeps/libm-i387/i686/s_fdim.S: Likewise. * sysdeps/libm-i387/i686/s_fdimf.S: Likewise. * sysdeps/libm-i387/i686/s_fdiml.S: Likewise. 1998-07-15 Andreas Jaeger <aj@arthur.rhein-neckar.de> * configure.in: Change message for binutils version from 2.8.1.0.17->2.8.1.0.23. 1998-07-15 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h: Define LOC. Patch by John Tobey <jtobey@banta-im.com>.
1998-07-16 11:44:36 +00:00
1998-07-16 10:52 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_handle_create): Check whether sched_setscheduler
call can succeed here.
* mutex.c: Define __pthread_mutexattr_settype and make
__pthread_mutexattr_setkind_np an alias.
Likewise for __pthread_mutexattr_gettype.
1998-07-15 11:00 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* attr.c (pthread_attr_setschedpolicy): Don't check whether caller
is root.
1998-07-14 19:38 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/pthread/bits/libc-lock.h: Define __libc_cleanup_end.
1998-07-11 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* Examples/ex6.c: Include <unistd.h> for usleep.
1998-06-13 11:04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Examples/ex4.c (main): Use exit, not pthread_exit.
1998-07-09 13:39 Ulrich Drepper <drepper@cygnus.com>
* Versions: Add __pthread_mutexattr_gettype and
__pthread_mutexattr_settype.
* lockfile.c: Use __pthread_mutexattr_settype instead of
__pthread_mutexattr_setkind_np.
* mutex.c: Define __pthread_mutexattr_gettype and
__pthread_mutexattr_settype.
* weak.c: Likewise.
Update. 1998-07-09 13:34 Ulrich Drepper <drepper@cygnus.com> * grp/grp.h: Define gid_t also for __USE_XOPEN. * io/fcntl.h: Include <sys/stat.h> also for __USE_XOPEN. * io/utime.h: Define time_t also for __USE_XOPEN. * io/sys/stat.h: Define time_t also for __USE_XOPEN. Define *_t types except for pid_t also for __USE_XOPEN. Define S_* macros also for __USE_XOPEN. * locale/langinfo.h: Define CODESET, CRNCYSTR, RADIXCHAR, and THOUSEP also for __USE_XOPEN. * math/math.c: Define M_* macros also for __USE_XOPEN. * math/bits/mathcalls.h: Declare hypot also for __USE_XOPEN. * posix/fnmatch.h: Define FNM_NOSYS and for if _XOPEN_SOURCE is defined. * posix/glob.h: Likewise for GLOB_NOSYS. * posix/regex.h: Likewise for REG_NOSYS. * posix/wordexp.h: Likewise for WRDE_NOSYS. * posix/unistd.h: Define *_t types also for __USE_XOPEN. * posix/sys/wait.h: Define pid_t for __USE_XOPEN. * pwd/pwd.h: Define gid_t and pid_t also for __USE_XOPEN. * signal/signal.h: Define pid_t also fir __USE_XOPEN. * sysdeps/unix/sysv/linux/bits/fcntl.h: Define _RSYNC and O_DSYNC also for __USE_POSIX199309. * sysdeps/unix/sysv/linux/bits/termios.h: Define the various B* constants also for __USE_XOPEN. * wcsmbs/wchar.h: For XPG4 include wctype.h. * intl/dcgettext.c (find_msg): Initialize act to prevent warning. * locale/setlocale.c (new_composite_name): Likewise for last_len. * libio/stdio.h: Don't declare fclose_unlocked. * sysdeps/posix/fpathconf.c: Handle _PC_FILESIZEBITS. 1998-07-08 Mark Kettenis <kettenis@phys.uva.nl> * stdio/stdio.h: Add prototypes for fflush_unlocked, getc_unlocked, getchar_unlocked, putc_unlocked, putchar_unlocked, fgets_unlocked, fread_unlocked, fwrite_unlocked, clearerr_unlocked, feof_unlocked, ferror_unlocked, fileno_unlocked, flockfile, ftrylockfile, funlockfile. [__USE_XOPEN && !__USE_GNU] Declare optarg, optind, opterr. Add prototype for getopt. * stdio/clearerr.c (clearerr_unlocked): Weak alias for clearerr. * stdio/feof.c (feof_unlocked): Weak alias for feof. * stdio/ferror.c (ferror_unlocked): Weak alias for ferror. * stdio/fflush.c (fflush_unlocked): Weak alias for fflush. * stdio/fgets.c (fgets_unlocked): Weak alias for fgets. * stdio/fileno.c (fileno_unlocked): Weak alias for fileno. * stdio/fputc.c (fputc_unlocked): Weak alias for fputc. * stdio/fread.c (fread_unlocked): Weak alias for fread. * stdio/fwrite.c (fwrite_unlocked): Weak alias for fwrite. * stdio/getc.c (getchar_unlocked): Weak alias for getc. * stdio/getchar.c (getchar_unlocked): Weak alias for getchar. * stdio/putc.c (putc_unlocked): Weak alias for putc. * stdio/putchar.c (putchar_unlocked): Weak alias for putchar. * stdio/Versions [GLIBC_2.1]: Add clearerr_unlocked, feof_unlocked, ferror_unlocked, fflush_unlocked, fgets_unlocked, fileno_unlocked, fputc_unlocked, fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked, putc_unlocked and putchar_unlocked. * libio/Versions: Move flockfile, ftrylockfile and funlockfile from here ... * stdio-common/Versions: ... to here. 1998-07-09 Andreas Jaeger <aj@arthur.rhein-neckar.de> * Makerules (versioning): Correct typo.
1998-07-09 13:58:47 +00:00
* sysdeps/pthread/pthread.h: Declare __pthread_mutexattr_gettype and
__pthread_mutexattr_settype.
* sysdeps/pthread/bits/libc-lock.h (__libc_lock_init_recursive):
Use __pthread_mutexattr_settype.
Update. 1998-07-08 22:18 Ulrich Drepper <drepper@cygnus.com> * elf/Versions: Add _dl_mcount_wrapper_check. * elf/dlfcn.h (DL_CALL_FCT): Don't test _dl_profile_map, simply use _dl_mcount_wrapper_check. * iconv/skeleton.c: Use DL_CALL_FCT, not _CALL_DL_FCT. * elf/dl-reloc.c (_dl_relocate_object): Don't declare using internal_function. * elf/ldsodefs.h: Likewise. * io/fcntl.h: Define SEEK_SET, SEEK_CUR, and SEEK_END. * libio/stdio.h: Make sure va_list is defined for X/Open. Define P_tmpdir for X/Open. * posix/regex.h: Fix typo. * posix/unistd.h: Define intptr_t if not already happened. Add pthread_atfork prototype. * sysdeps/generic/bits/types.h: Define __intptr_t. * sysdeps/unix/sysv/linux/alpha/bits/types.h: Likewise. * sysdeps/unix/sysv/linux/bits/types.h: Likewise. * sysdeps/unix/sysv/linux/bits/mips/types.h: Likewise. * sysdeps/unix/sysv/linux/bits/sparc/sparc64/types.h: Likewise. * sysdeps/unix/sysv/sysv4/solaris2/bits/types.h: Likewise. * sysdeps/wordsize-32/stdint.h: Don't define intptr_t if already done. * sysdeps/wordsize-64/stdint.h: Likewise. * posix/bits/posix1_lim.h: Define _POSIX_CLOCKRES_MIN. * signal/Makefile (headers): Add bits/sigthread.h. * signal/signal.h: Include bits/sigthread.h. * sysdeps/generic/bits/sigthread.h: New file. * stdlib/stdlib.h: Declare rand_r use __USE_POSIX. * sysdeps/generic/bits/confname.h: Define _PC_FILESIZEBITS. * sysdeps/posix/pathconf.c: Handle _PC_FILESIZEBITS. * sysdeps/unix/sysv/linux/alpha/fpathconf.c: New file. * sysdeps/unix/sysv/linux/alpha/pathconf.c: New file. * sysdeps/generic/bits/dlfcn.h: Define RTLD_LOCAL. * elf/rtld.c: Remove preloading and loadpath variables in SUID programs. * sysdeps/generic/dl-sysdep.c: Define unsetenv. * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Define other envvar names. * sysdeps/unix/sysv/linux/bits/errno.h: Define ECANCELED. * sysdeps/unix/sysv/linux/bits/fcntl.h: Define O_RSYNC and O_DSYNC. Remove O_READ and O_WRITE definition. * sysdeps/unix/sysv/linux/bits/resource.h: Define RLIM_SAVED_MAX and RLIM_SAVED_CUR. * sysdeps/unix/sysv/linux/fstatvfs.h: Handle UFS filesystem. 1998-07-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules ($(common-objpfx)sysd-versions): Expect awk script in scripts directory. Pass move-if-change to awk. (common-generated): Add $(version-maps) and sysd-versions. * versions.awk: Moved to... * scripts/versions.awk: ... here. Use move-if-change to void touching unchanged files. Print "version-maps = ..." instead of "all-version-maps = ..." and without $(common-objpfx). Explain expected variable names. * Makefile (distribute): Updated. 1998-07-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getttyent.c (getttyent): Don't return with locked stream. * misc/mntent_r.c (__getmntent_r): Likewise. 1998-07-07 18:24 Ulrich Drepper <drepper@cygnus.com> * libio/fileops.c (_IO_do_write): Don't shrink wwrite buffer to zero if stream is line buffered. (_io_file_overflow): Likewise. * libio/libio.h (_IO_putc_unlocked): Make sure that for line-buffered streams writing '\n' flushes the string.
1998-07-08 22:53:56 +00:00
1998-07-08 22:26 Ulrich Drepper <drepper@cygnus.com>
* Versions: Add pthread_mutexattr_gettype, pthread_mutexattr_settype.
* mutex.c: Define weak alias pthread_mutexattr_gettype and
pthread_mutexattr_settype.
* sysdeps/pthread/pthread.h: Declare these functions.
Move pthread_sigmask and pthread_kill declaration in separate header.
* sysdeps/unix/sysv/linux/bits/sigthread.h: New file.
1998-07-07 15:20 Ulrich Drepper <drepper@cygnus.com>
* Makefile: Add rules to compile and run tests.
* Examples/ex1.c: Little changes to fix warnings.
* Examples/ex2.c: Likewise.
* Examples/ex3.c: Likewise.
* Examples/ex4.c: Likewise.
* Examples/ex5.c: Likewise.
* Examples/ex6.c: New file.
1998-07-05 11:54 Ulrich Drepper <drepper@cygnus.com>
* Versions: Add pthread_attr_init to GLIBC_2.1 version in libc.
Update. 1998-07-04 10:14 Ulrich Drepper <drepper@cygnus.com> * libio/Makefile (routines): Add iofread_u and iofwrite_u. * libio/Versions: Add fread_unlocked and fwrite_unlocked. * Makerules (lib%.so): Adjust ignore pattern for last makefile change. * time/tzfile.c (decode): Optimize by using bswap_32. (__tzfile_read): Use _unlocked stream functions. Correct setting of __tzname array values. (__tzfile_compute): Correct setting of __tzname array values. * time/tzset.c (__tzstring): Clean up a bit. 1998-06-29 19:01 Jim Wilson <wilson@cygnus.com> * posix/regex.c (re_comp): Add cast to char * before gettext calls. 1998-06-30 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/bsd/poll.c (__poll): Allocate fd_set dynamically so that fd can be bigger than FD_SETSIZE. 1998-07-01 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nscd/grpcache.c: Include <unistd.h>. * nscd/pwdcache.c: Likewise. * nis/nis_modify.c: Include <string.h>. * nis/nis_add.c: Likewise. * nis/nis_checkpoint.c: Likewise. * posix/runptests.c: Likewise. * sysdeps/generic/statvfs64.c: Likewise. * sysdeps/generic/fstatvfs64.c: Likewise. 1998-07-03 13:16 Ulrich Drepper <drepper@cygnus.com> * localedata/charmaps/ISO-8859-9: Change mapping for 0xea, 0xec, 0xef to match data from Unicode. Reported by Michael Deutschmann <michael@talamasca.wkpowerlink.com>. 1998-07-03 11:45 Ulrich Drepper <drepper@cygnus.com> * stdio-common/printf.h: Define printf_function and printf_arginfo_function types using __PMT not __P. Reported by Marc Lehmann. 1998-07-02 14:07 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu> * assert/test-assert.c: New test. * assert/test-assert-perr.c: New test. * assert/Makefile (tests): Add test-assert and test-assert-perr. 1998-07-02 13:45 Zack Weinberg <zack@rabi.phys.columbia.edu> BSD-style SCM_CREDS support. * sysdeps/unix/sysv/linux/socket.h: Define struct cmsgcred and SCM_CREDS. * sysdeps/unix/sysv/linux/sendmsg.c: New file. Convert user visible SCM_CREDS packet to what the kernel wants. * sysdeps/unix/sysv/linux/recvmsg.c: New file. Convert SCM_CREDS packet output by kernel to what users want. * sysdeps/unix/sysv/linux/sendmsg.S: Moved to... * sysdeps/unix/sysv/linux/__sendmsg.S: here. * sysdeps/unix/sysv/linux/recvmsg.S: Moved to... * sysdeps/unix/sysv/linux/__recvmsg.S: here. * sysdeps/unix/sysv/linux/Makefile [subdir=socket]: Add __sendmsg and __recvmsg to sysdep_routines. * sysdeps/unix/sysv/linux/Dist: Add __sendmsg.S and __recvmsg.S. 1998-07-02 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * nscd/grpcache.c: Fix gid pointer handling and debug messages. * nscd/pwdcache.c: Fix uid pointer handling and debug messages. * nscd/nscd.c: Check, if pthread_create fails. 1998-07-02 Andreas Jaeger <aj@arthur.rhein-neckar.de> * stdio-common/test_rdwr.c (main): Use %Zu for size_t in printf format strings. * stdio-common/bug1.c (main): Likewise. * stdio-common/bug5.c (main): Likewise. * stdio-common/tstgetln.c (main): Likewise. * elf/sprof.c (generate_call_graph): Likewise. (load_shobj): Likewise. * posix/runptests.c (main): Likewise. * string/tst-strlen.c (main): Likewise. * sysdeps/libm-ieee754/e_acos.c (__ieee754_acos): Remove unused variable q3. * sysdeps/libm-ieee754/e_asin.c (__ieee754_asin): Likewise 1998-07-03 Andreas Jaeger <aj@arthur.rhein-neckar.de> * wctype/Versions: Add __towctrans. Noticed by Alex Buell <alex.buell@tahallah.demon.co.uk>. 1998-07-02 Mark Kettenis <kettenis@phys.uva.nl> * grp/initgroups.c (compat_call): Only call dynamically loaded functions if they are really present. 1998-07-02 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/unix/sysv/linux/bits/sched.h: Move __END_DECLS within #ifdef that contains __BEGIN_DECLS. 1998-07-02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/iofwrite.c: Fix return value when size == 0. 1998-07-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * posix/Makefile (distribute): Add annexc.c. (generated): Add $(objpfx)annexc and $(objpfx)annexc.out. 1998-07-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add bits/pthreadtypes.h here, and do not clobber headers. * sysdeps/unix/sysv/linux/Dist: Add bits/pthreadtypes.h. 1998-07-03 Andreas Jaeger <aj@arthur.rhein-neckar.de> * timezone/tst-timezone.c: Add tests for tzname variable. 1998-07-03 12:17 Zack Weinberg <zack@rabi.phys.columbia.edu> * Makefile [versioning=yes]: Build the mapfiles with a pattern rule that lists all of them as targets. (sysd-versions): Depend only on Versions.def. Write a Makefile fragment that defines $(vers-libs) based on contents of that file; then include it. (lib-noranlib): Depend on lib-mapfiles not sysd-versions. (lib-mapfiles): New target, depends on sysd-versions and $(vers-libs). Predicate all this on avoid-generated unset as well as versioning. 1998-07-03 14:35 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1998-07-04 10:39:13 +00:00
1998-07-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* attr.c: Include <string.h>.
1998-06-30 11:47 Ulrich Drepper <drepper@cygnus.com>
* attr.c: Include errno.h. Use memcpy to copy sched_param.
* internals.h: Include limits.h.
* manager.c: Use memcpy to copy sched_param.
* ptfork.c: Include errno.h.
* pthread.c: Likewise.
* semaphore.c: Likewise.
* specific.c: Likewise.
* spinlock.h: Likewise.
* sysdeps/pthread/pthread.h: Include only allowed headers. Move
type definition to ...
* sysdeps/pthread/bits/pthreadtypes.h: ...here. New file.
Update. 1998-06-29 12:27 Ulrich Drepper <drepper@cygnus.com> * argp/argp.h: Use __PMT instead of __P for function pointer. * iconv/gconv.h: Likewise. * io/fts.h: Likewise. * io/ftw.h: Likewise. * libio/libio.h: Likewise. * malloc/mcheck.h: Likewise. * misc/search.h: Likewise. * posix/glob.h: Likewise. * resolv/resolv.h: Likewise. * signal/signal.h: Likewise. * stdlib/stdlib.h: Likewise. * sysdeps/unix/sysv/linux/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise. 1998-06-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makeconfig (CPPFLAGS): Use $($(subdir)-CPPFLAGS) only once. 1998-06-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * posix/wordexp.c (parse_param): Fix memory leak. 1998-06-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libc.map: Export _IO_ftrylockfile. 1998-06-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/aio_sigqueue.c: Use get[pu]id instead of __get[pu]id. 1998-06-28 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-misc.c (_dl_debug_message): Don't cache the pid. * elf/dl-runtime.c (_dl_object_relocation_scope): Avoid adding the same search list twice. 1998-06-29 Andreas Jaeger <aj@arthur.rhein-neckar.de> * login/programs/utmpd.c (handle_requests): Set and use maximal fd used to optimize loop/select. 1998-06-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/init-first.c: Don't define __libc_pid. * sysdeps/unix/sysv/linux/init-first.c: Likewise. * sysdeps/mach/hurd/i386/init-first.c: Likewise. * sysdeps/mach/hurd/mips/init-first.c: Likewise. * sysdeps/arm/init-first.c: Likewise. * posix/getopt_init.c: Don't use __libc_pid. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/linux/sigqueue.c: Likewise. * libc.map: Remove __libc_uid and __libc_pid.
1998-06-29 12:44:22 +00:00
1998-06-29 12:34 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/pthread/pthread.h: Use __PMT not __P for function pointers.
* sysdeps/pthread/pthread.h: Define various PTHREAD_* symbols also
as macros as demanded in POSIX.1, Annex C.
1998-06-29 12:29 Ulrich Drepper <drepper@cygnus.com>
* internals.h (struct pthread_request): For free use pthread_t
instead of pthread_descr.
* join.c (pthread_join): Pass thread_id, not th to manager.
(pthread_detach): Likewise.
* manager.c (__pthread_manager): Except thread ID in FREE_REQ case.
(pthread_exited): Remove detached queue code.
(pthread_handle_free): Expect thread ID parameter and use it to
validate the thread decsriptor. Don't use detached queue.
Patches by Xavier Leroy.
1998-06-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libpthread.map: Export accept, longjmp, sigaction, siglongjmp,
_IO_flockfile, _IO_ftrylockfile, _IO_funlockfile,
__pthread_atfork, __pthread_key_create, __pthread_once.
* internals.h: Doc fix.
* pthread.c (__pthread_initialize): Define again.
1998-06-26 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_exited): If thread is not detached put it on
special list.
(pthread_handle_free): If thread is not on list with living threads
search on list with detached threads.
* sysdeps/pthread/pthread.h (PTHREAD_RWLOCK_INITIALIZER): Correct
for new definition of pthread_rwlock_t.
* spinlock.c: Correct test whether to compile
__pthread_compare_and_swap or not.
1998-06-25 19:27 Ulrich Drepper <drepper@cygnus.com>
* attr.c: Finish user stack support. Change locking code to be safe
in situations with different priorities.
* cancel.c: Likewise.
* condvar.c: Likewise.
* internals.h: Likewise.
* join.c: Likewise.
* manager.c: Likewise.
* mutex.c: Likewise.
* pthread.c: Likewise.
* ptlongjmp.c: Likewise.
* queue.h: Likewise.
* rwlock.c: Likewise.
* semaphore.c: Likewise.
* semaphore.h: Likewise.
* signals.c: Likewise.
* spinlock.c: Likewise.
* spinlock.h: Likewise.
* sysdeps/pthread/pthread.h: Likewise.
1998-06-26 10:15:28 +00:00
Patches by Xavier Leroy.
* sysdeps/i386/i686/pt-machine.h: New file.
1998-06-25 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/pthread/pthread.h: Make [sg]et_stacksize and
[sg]et_stackaddr prototypes always available.
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
_POSIX_THREAD_ATTR_STACKSIZE and _POSIX_THREAD_ATTR_STACKADDR.
1998-06-24 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_free): Undo patch from 980430.
Reported by David Wragg <dpw@doc.ic.ac.uk>.
Update. * db2/btree/bt_close.c: Likewise. * db2/btree/bt_compare.c: Likewise. * db2/btree/bt_conv.c: Likewise. * db2/btree/bt_cursor.c: Likewise. * db2/btree/bt_delete.c: Likewise. * db2/btree/bt_open.c: Likewise. * db2/btree/bt_page.c: Likewise. * db2/btree/bt_put.c: Likewise. * db2/btree/bt_rec.c: Likewise. * db2/btree/bt_recno.c: Likewise. * db2/btree/bt_rsearch.c: Likewise. * db2/btree/bt_search.c: Likewise. * db2/btree/bt_split.c: Likewise. * db2/btree/bt_stat.c: Likewise. * db2/btree/btree.src: Likewise. * db2/btree/btree_auto.c: Likewise. * db2/clib/getlong.c: Likewise. * db2/common/db_appinit.c: Likewise. * db2/common/db_apprec.c: Likewise. * db2/common/db_byteorder.c: Likewise. * db2/common/db_err.c: Likewise. * db2/common/db_log2.c: Likewise. * db2/common/db_region.c: Likewise. * db2/common/db_salloc.c: Likewise. * db2/common/db_shash.c: Likewise. * db2/db/db.c: Likewise. * db2/db/db.src: Likewise. * db2/db/db_auto.c: Likewise. * db2/db/db_conv.c: Likewise. * db2/db/db_dispatch.c: Likewise. * db2/db/db_dup.c: Likewise. * db2/db/db_overflow.c: Likewise. * db2/db/db_pr.c: Likewise. * db2/db/db_rec.c: Likewise. * db2/db/db_ret.c: Likewise. * db2/db/db_thread.c: Likewise. * db2/db185/db185.c: Likewise. * db2/db185/db185_int.h: Likewise. * db2/dbm/dbm.c: Likewise. * db2/hash/hash.c: Likewise. * db2/hash/hash.src: Likewise. * db2/hash/hash_auto.c: Likewise. * db2/hash/hash_conv.c: Likewise. * db2/hash/hash_debug.c: Likewise. * db2/hash/hash_dup.c: Likewise. * db2/hash/hash_func.c: Likewise. * db2/hash/hash_page.c: Likewise. * db2/hash/hash_rec.c: Likewise. * db2/hash/hash_stat.c: Likewise. * db2/include/btree.h: Likewise. * db2/include/btree_ext.h: Likewise. * db2/include/clib_ext.h: Likewise. * db2/include/common_ext.h: Likewise. * db2/include/cxx_int.h: Likewise. * db2/include/db.h.src: Likewise. * db2/include/db_185.h.src: Likewise. * db2/include/db_am.h: Likewise. * db2/include/db_auto.h: Likewise. * db2/include/db_cxx.h: Likewise. * db2/include/db_dispatch.h: Likewise. * db2/include/db_ext.h: Likewise. * db2/include/db_int.h.src: Likewise. * db2/include/db_page.h: Likewise. * db2/include/db_shash.h: Likewise. * db2/include/db_swap.h: Likewise. * db2/include/hash.h: Likewise. * db2/include/hash_ext.h: Likewise. * db2/include/lock.h: Likewise. * db2/include/lock_ext.h: Likewise. * db2/include/log.h: Likewise. * db2/include/log_ext.h: Likewise. * db2/include/mp.h: Likewise. * db2/include/mp_ext.h: Likewise. * db2/include/mutex_ext.h: Likewise. * db2/include/os_ext.h: Likewise. * db2/include/os_func.h: Likewise. * db2/include/queue.h: Likewise. * db2/include/shqueue.h: Likewise. * db2/include/txn.h: Likewise. * db2/lock/lock.c: Likewise. * db2/lock/lock_conflict.c: Likewise. * db2/lock/lock_deadlock.c: Likewise. * db2/lock/lock_region.c: Likewise. * db2/lock/lock_util.c: Likewise. * db2/log/log.c: Likewise. * db2/log/log.src: Likewise. * db2/log/log_archive.c: Likewise. * db2/log/log_auto.c: Likewise. * db2/log/log_compare.c: Likewise. * db2/log/log_findckp.c: Likewise. * db2/log/log_get.c: Likewise. * db2/log/log_put.c: Likewise. * db2/log/log_rec.c: Likewise. * db2/log/log_register.c: Likewise. * db2/mp/mp_bh.c: Likewise. * db2/mp/mp_fget.c: Likewise. * db2/mp/mp_fopen.c: Likewise. * db2/mp/mp_fput.c: Likewise. * db2/mp/mp_fset.c: Likewise. * db2/mp/mp_open.c: Likewise. * db2/mp/mp_pr.c: Likewise. * db2/mp/mp_region.c: Likewise. * db2/mp/mp_sync.c: Likewise. * db2/mutex/68020.gcc: Likewise. * db2/mutex/mutex.c: Likewise. * db2/mutex/parisc.gcc: Likewise. * db2/mutex/parisc.hp: Likewise. * db2/mutex/sco.cc: Likewise. * db2/os/os_abs.c: Likewise. * db2/os/os_alloc.c: Likewise. * db2/os/os_config.c: Likewise. * db2/os/os_dir.c: Likewise. * db2/os/os_fid.c: Likewise. * db2/os/os_fsync.c: Likewise. * db2/os/os_map.c: Likewise. * db2/os/os_oflags.c: Likewise. * db2/os/os_open.c: Likewise. * db2/os/os_rpath.c: Likewise. * db2/os/os_rw.c: Likewise. * db2/os/os_seek.c: Likewise. * db2/os/os_sleep.c: Likewise. * db2/os/os_spin.c: Likewise. * db2/os/os_stat.c: Likewise. * db2/os/os_unlink.c: Likewise. * db2/progs/db_archive/db_archive.c: Likewise. * db2/progs/db_checkpoint/db_checkpoint.c: Likewise. * db2/progs/db_deadlock/db_deadlock.c: Likewise. * db2/progs/db_dump/db_dump.c: Likewise. * db2/progs/db_dump185/db_dump185.c: Likewise. * db2/progs/db_load/db_load.c: Likewise. * db2/progs/db_printlog/db_printlog.c: Likewise. * db2/progs/db_recover/db_recover.c: Likewise. * db2/progs/db_stat/db_stat.c: Likewise. * db2/txn/txn.c: Likewise. * db2/txn/txn.src: Likewise. * db2/txn/txn_auto.c: Likewise. * db2/txn/txn_rec.c: Likewise. * sysdeps/generic/libc-start.c: Always set __libc_stack_end. * sysdeps/i386/backtrace.c: Test whether frame pointer is legal before following it.
1998-06-09 16:02:40 +00:00
1998-06-09 15:07 Ulrich Drepper <drepper@cygnus.com>
* manager.c: Define __pthread_manager_adjust_prio and use it to
increase priority when needed.
* internals.h: Add prototype for __pthread_manager_adjust_prio.
* mutex.c: Optimize mutexes to wake up only one thread.
* pthread.c: Move PID of manager for global variable in structure
Update. * db2/btree/bt_close.c: Likewise. * db2/btree/bt_compare.c: Likewise. * db2/btree/bt_conv.c: Likewise. * db2/btree/bt_cursor.c: Likewise. * db2/btree/bt_delete.c: Likewise. * db2/btree/bt_open.c: Likewise. * db2/btree/bt_page.c: Likewise. * db2/btree/bt_put.c: Likewise. * db2/btree/bt_rec.c: Likewise. * db2/btree/bt_recno.c: Likewise. * db2/btree/bt_rsearch.c: Likewise. * db2/btree/bt_search.c: Likewise. * db2/btree/bt_split.c: Likewise. * db2/btree/bt_stat.c: Likewise. * db2/btree/btree.src: Likewise. * db2/btree/btree_auto.c: Likewise. * db2/clib/getlong.c: Likewise. * db2/common/db_appinit.c: Likewise. * db2/common/db_apprec.c: Likewise. * db2/common/db_byteorder.c: Likewise. * db2/common/db_err.c: Likewise. * db2/common/db_log2.c: Likewise. * db2/common/db_region.c: Likewise. * db2/common/db_salloc.c: Likewise. * db2/common/db_shash.c: Likewise. * db2/db/db.c: Likewise. * db2/db/db.src: Likewise. * db2/db/db_auto.c: Likewise. * db2/db/db_conv.c: Likewise. * db2/db/db_dispatch.c: Likewise. * db2/db/db_dup.c: Likewise. * db2/db/db_overflow.c: Likewise. * db2/db/db_pr.c: Likewise. * db2/db/db_rec.c: Likewise. * db2/db/db_ret.c: Likewise. * db2/db/db_thread.c: Likewise. * db2/db185/db185.c: Likewise. * db2/db185/db185_int.h: Likewise. * db2/dbm/dbm.c: Likewise. * db2/hash/hash.c: Likewise. * db2/hash/hash.src: Likewise. * db2/hash/hash_auto.c: Likewise. * db2/hash/hash_conv.c: Likewise. * db2/hash/hash_debug.c: Likewise. * db2/hash/hash_dup.c: Likewise. * db2/hash/hash_func.c: Likewise. * db2/hash/hash_page.c: Likewise. * db2/hash/hash_rec.c: Likewise. * db2/hash/hash_stat.c: Likewise. * db2/include/btree.h: Likewise. * db2/include/btree_ext.h: Likewise. * db2/include/clib_ext.h: Likewise. * db2/include/common_ext.h: Likewise. * db2/include/cxx_int.h: Likewise. * db2/include/db.h.src: Likewise. * db2/include/db_185.h.src: Likewise. * db2/include/db_am.h: Likewise. * db2/include/db_auto.h: Likewise. * db2/include/db_cxx.h: Likewise. * db2/include/db_dispatch.h: Likewise. * db2/include/db_ext.h: Likewise. * db2/include/db_int.h.src: Likewise. * db2/include/db_page.h: Likewise. * db2/include/db_shash.h: Likewise. * db2/include/db_swap.h: Likewise. * db2/include/hash.h: Likewise. * db2/include/hash_ext.h: Likewise. * db2/include/lock.h: Likewise. * db2/include/lock_ext.h: Likewise. * db2/include/log.h: Likewise. * db2/include/log_ext.h: Likewise. * db2/include/mp.h: Likewise. * db2/include/mp_ext.h: Likewise. * db2/include/mutex_ext.h: Likewise. * db2/include/os_ext.h: Likewise. * db2/include/os_func.h: Likewise. * db2/include/queue.h: Likewise. * db2/include/shqueue.h: Likewise. * db2/include/txn.h: Likewise. * db2/lock/lock.c: Likewise. * db2/lock/lock_conflict.c: Likewise. * db2/lock/lock_deadlock.c: Likewise. * db2/lock/lock_region.c: Likewise. * db2/lock/lock_util.c: Likewise. * db2/log/log.c: Likewise. * db2/log/log.src: Likewise. * db2/log/log_archive.c: Likewise. * db2/log/log_auto.c: Likewise. * db2/log/log_compare.c: Likewise. * db2/log/log_findckp.c: Likewise. * db2/log/log_get.c: Likewise. * db2/log/log_put.c: Likewise. * db2/log/log_rec.c: Likewise. * db2/log/log_register.c: Likewise. * db2/mp/mp_bh.c: Likewise. * db2/mp/mp_fget.c: Likewise. * db2/mp/mp_fopen.c: Likewise. * db2/mp/mp_fput.c: Likewise. * db2/mp/mp_fset.c: Likewise. * db2/mp/mp_open.c: Likewise. * db2/mp/mp_pr.c: Likewise. * db2/mp/mp_region.c: Likewise. * db2/mp/mp_sync.c: Likewise. * db2/mutex/68020.gcc: Likewise. * db2/mutex/mutex.c: Likewise. * db2/mutex/parisc.gcc: Likewise. * db2/mutex/parisc.hp: Likewise. * db2/mutex/sco.cc: Likewise. * db2/os/os_abs.c: Likewise. * db2/os/os_alloc.c: Likewise. * db2/os/os_config.c: Likewise. * db2/os/os_dir.c: Likewise. * db2/os/os_fid.c: Likewise. * db2/os/os_fsync.c: Likewise. * db2/os/os_map.c: Likewise. * db2/os/os_oflags.c: Likewise. * db2/os/os_open.c: Likewise. * db2/os/os_rpath.c: Likewise. * db2/os/os_rw.c: Likewise. * db2/os/os_seek.c: Likewise. * db2/os/os_sleep.c: Likewise. * db2/os/os_spin.c: Likewise. * db2/os/os_stat.c: Likewise. * db2/os/os_unlink.c: Likewise. * db2/progs/db_archive/db_archive.c: Likewise. * db2/progs/db_checkpoint/db_checkpoint.c: Likewise. * db2/progs/db_deadlock/db_deadlock.c: Likewise. * db2/progs/db_dump/db_dump.c: Likewise. * db2/progs/db_dump185/db_dump185.c: Likewise. * db2/progs/db_load/db_load.c: Likewise. * db2/progs/db_printlog/db_printlog.c: Likewise. * db2/progs/db_recover/db_recover.c: Likewise. * db2/progs/db_stat/db_stat.c: Likewise. * db2/txn/txn.c: Likewise. * db2/txn/txn.src: Likewise. * db2/txn/txn_auto.c: Likewise. * db2/txn/txn_rec.c: Likewise. * sysdeps/generic/libc-start.c: Always set __libc_stack_end. * sysdeps/i386/backtrace.c: Test whether frame pointer is legal before following it.
1998-06-09 16:02:40 +00:00
element.
Patches by Xavier Leroy.
Update. 1998-06-07 13:32 Ulrich Drepper <drepper@cygnus.com> * libc.map: Add _dl_profile. * elf/dl-reloc.c (_dl_relocate_object): Take extra argument, pass this to ELF_DYNAMIC_RELOCATE. Always allocate array for relocation result if LD_PROFILE is defined. * elf/ldsodefs.h: Adjust prototypes. * elf/dl-open.c (_dl_open): Call relocation function with extra argument. * elf/rtld.c: Likewise. * elf/dl-profile.c (_dl_mcount): Don't mark as internal function. Correct loop condition. * elf/dynamic-link.h: Don't examine _dl_profile variable, pass consider_profile to runtime setup function. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Use _dl_runtime_profile for all shared objects if LD_PROFILE is defined. * elf/dl-support.c: Define __libc_stack_end. * elf/rtld.c: Likewise. * sysdeps/generic/libc-start.c: Store last stack address in __libc_stack_end. * sysdeps/i386/dl-machine.h (_dl_start_user): Store stack address. * sysdeps/i386/elf/start.s: Call __libc_start_main with extra argument. * elf/elf.h: Include <features.h>, not <sys/cdefs.h>. Include <stdint.h>, not <inttypes.h>. * elf/sprof.c: Implement flat profiling. * libio/fgetc.c: Call _IO_cleanup_region_end with 0 and call _IO_funlockfile explicitly. * libio/fileops.c: Likewise. * libio/fputc.c: Likewise. * libio/freopen.c: Likewise. * libio/freopen64.c: Likewise. * libio/fseek.c: Likewise. * libio/fseeko.c: Likewise. * libio/fseeko64.c: Likewise. * libio/ftello.c: Likewise. * libio/ftello64.c: Likewise. * libio/getc.c: Likewise. * libio/getchar.c: Likewise. * libio/iofclose.c: Likewise. * libio/iofflush.c: Likewise. * libio/iofgetpos.c: Likewise. * libio/iofgetpos64.c: Likewise. * libio/iofgets.c: Likewise. * libio/iofputs.c: Likewise. * libio/iofread.c: Likewise. * libio/iofsetpos.c: Likewise. * libio/iofsetpos64.c: Likewise. * libio/ioftell.c: Likewise. * libio/iofwrite.c: Likewise. * libio/iogetdelim.c: Likewise. * libio/iogets.c: Likewise. * libio/ioputs.c: Likewise. * libio/ioseekoff.c: Likewise. * libio/ioseekpos.c: Likewise. * libio/iosetbuffer.c: Likewise. * libio/iosetvbuf.c: Likewise. * libio/ioungetc.c: Likewise. * libio/iovsprintf.c: Likewise. * libio/iovsscanf.c: Likewise. * libio/oldfileops.c: Likewise. * libio/oldiofclose.c: Likewise. * libio/peekc.c: Likewise. * libio/putc.c: Likewise. * libio/putchar.c: Likewise. * libio/rewind.c: Likewise. * malloc/mtrace.c: Pretty print. * misc/mntent.h (struct mentent): Make string elements const char *. * nis/nis_printf.c: Optimize I/O a little bit. * signal/Makefile (distribute): Add sigset-cvt-mask.h. * sysdeps/generic/sigset-cvt-mask.h: New file. * sysdeps/unix/sysv/linux/sigset-cvt-mask.h: New file. * sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h: New file. * sysdeps/posix/sigvec.c: Rewrite the use definitions from sigset-cvt-mask.h to do the dirty work. Patches by Joe Keane. * sysdeps/posix/mkstemp.c: Save one precious byte of rodata. * sysdeps/unix/sysv/linux/i386/sysdep.h: Rewrite PSEUDO etc to make syscall_error label in case of PIC anonymous. * sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/i386/clone.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/mmap.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/s_pread64.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/s_pwrite64.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/socket.S: Adapt for this change. * sysdeps/unix/sysv/linux/i386/syscall.S: Adapt for this change.
1998-06-07 14:06:56 +00:00
1998-06-07 13:47 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/pthread/bits/libc-lock.h: Optimize cleanup handlers a bit.
1998-06-03 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* attr.c: Correct typo.
1998-05-01 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_free): Unmap guard before the stack.
Patch by Matthias Urlichs.
1998-04-30 Ulrich Drepper <drepper@cygnus.com>
* manager.c (pthread_free): Detect already free child.
Patch by Xavier Leroy, reported by Matthias Urlichs.
1998-04-23 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (linuxthreads-version): Renamed back from
libpthread-version.
1998-04-21 Ulrich Drepper <drepper@cygnus.com>
* ptlongjmp.c: Add prototypes for __libc_siglongjmp and
__libc_longjmp.
Update. 1998-04-20 18:00 Ulrich Drepper <drepper@cygnus.com> * libc.map: Add __dgettext to GLIBC_2.0 and __libc_longjmp, and __libc_siglongjmp to GLIBC_2.1. * elf/dl-minimal.c (__assert_perror_fail): Don't use strerror, use __strerror_r. * iconv/Makefile: Don't run tests now. * iconv/iconv_prog.c (process_block): If loop is repeated, call iconv with correct output buffer. Major rewrite of the low-level gconv functionality. * iconv/gconv.c: Rewritten. * iconv/gconv.h: Likewise. * iconv/gconv_builtin.c: Likewise. * iconv/gconv_builtin.h: Likewise. * iconv/gconv_conf.c: Likewise. * iconv/gconv_int.h: Likewise. * iconv/gconv_open.c: Likewise. * iconv/gconv_simple.c: Likewise. * iconv/iconv.c: Likewise. * iconvdata/8bit-gap.c: Likewise. * iconvdata/8bit-generic.c: Likewise. * iconvdata/Makefile: Likewise. * iconvdata/big5.c: Likewise. * iconvdata/cns11643.c: Likewise. * iconvdata/cns11643.h: Likewise. * iconvdata/cns11643l1.c: Likewise. * iconvdata/cns11643l1.h: Likewise. * iconvdata/ebcdic-at-de-a.c: Likewise. * iconvdata/ebcdic-at-de.c: Likewise. * iconvdata/ebcdic-ca-fr.c: Likewise. * iconvdata/euccn.c: Likewise. * iconvdata/eucjp.c: Likewise. * iconvdata/euckr.c: Likewise. * iconvdata/euctw.c: Likewise. * iconvdata/gb2312.c: Likewise. * iconvdata/gb2312.h: Likewise. * iconvdata/hp-roman8.c: Likewise. * iconvdata/iso646.c: Likewise. * iconvdata/iso6937.c: Likewise. * iconvdata/iso8859-1.c: Likewise. * iconvdata/iso8859-10.c: Likewise. * iconvdata/iso8859-2.c: Likewise. * iconvdata/iso8859-3.c: Likewise. * iconvdata/iso8859-4.c: Likewise. * iconvdata/iso8859-5.c: Likewise. * iconvdata/iso8859-6.c: Likewise. * iconvdata/iso8859-7.c: Likewise. * iconvdata/iso8859-8.c: Likewise. * iconvdata/iso8859-9.c: Likewise. * iconvdata/jis0201.c: Likewise. * iconvdata/jis0201.h: Likewise. * iconvdata/jis0208.c: Likewise. * iconvdata/jis0208.h: Likewise. * iconvdata/jis0212.c: Likewise. * iconvdata/jis0212.h: Likewise. * iconvdata/johab.c: Likewise. * iconvdata/koi-8.c: Likewise. * iconvdata/koi8-r.c: Likewise. * iconvdata/ksc5601.c: Likewise. * iconvdata/ksc5601.h: Likewise. * iconvdata/latin-greek-1.c: Likewise. * iconvdata/latin-greek.c: Likewise. * iconvdata/run-iconv-test.sh: Likewise. * iconvdata/sjis.c: Likewise. * iconvdata/t61.c: Likewise. * iconvdata/uhc.c: Likewise. * wcsmbs/btowc.c: Likewise. * wcsmbs/mbrtowc.c: Likewise. * wcsmbs/mbsnrtowcs.c: Likewise. * wcsmbs/mbsrtowcs.c: Likewise. * wcsmbs/wcrtomb.c: Likewise. * wcsmbs/wcsmbsload.c: Likewise. * wcsmbs/wcsnrtombs.c: Likewise. * wcsmbs/wcsrtombs.c: Likewise. * wcsmbs/wctob.c: Likewise. * iconv/loop.c: New file. * iconv/skeleton.c: New file. * stdlib/mblen.c: Handle empty input string correctly. * stdlib/mbtowc.c: Likewise. * posix/getopt.c: Various cleanups. * sysdeps/arm/bits/setjmp.h: Add copyright text. * sysdeps/i386/bits/setjmp.h: Likewise. * sysdeps/m68k/bits/setjmp.h: Likewise. * sysdeps/powerpc/bits/setjmp.h: Likewise. * sysdeps/sparc/sparc32/bits/setjmp.h: Likewise. * sysdeps/generic/longjmp.c: Rename function to __libc_siglongjmp and make longjmp weak alias. 1998-04-18 20:29 Philip Blundell <Philip.Blundell@pobox.com> * iconv/Makefile (routines): Only include gconv_dl if building for an ELF system - dynamic linking is not available on a.out. (CFLAGS-gconv_conf.c): Define STATIC_GCONV if omitting gconv_dl due to above check. * iconv/gconv_db.c: If STATIC_GCONV defined, don't try to call routines from gconv_dl. 1998-04-17 Gordon Matzigkeit <gord@profitpress.com> * csu/init.c (_IO_stdin_used): Protect with USE_IN_LIBIO so that we can compile without libio. 1998-04-20 16:28 Ulrich Drepper <drepper@cygnus.com> * sysdeps/mach/hurd/Subdirs: Remove login. 1998-04-11 Gordon Matzigkeit <gord@profitpress.com> * db2/compat.h: Include <errno.h>, to make sure we get the definition of EFTYPE before we define it ourselves. 1998-04-10 Gordon Matzigkeit <gord@profitpress.com> * sysdeps/generic/bits/socket.h: Protect against multiple inclusion. * sysdeps/mach/hurd/bits/ioctls.h: Likewise. Fix typo to allow inclusion from sys/ioctl.h again. 1998-04-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * iconvdata/*.[ch]: Clean up namespace. Optimize character lookup. 1998-04-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libc.map: Export __strerror_r. Remove _strerror_internal. 1998-04-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/strcasestr.c: Undefine strcasestr, not strstr. Also undefine __strcasestr. 1998-04-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * posix/regex.c: Rename __re_max_failures back to re_max_failures, aliases do not work with global variables due to copy relocations. 1998-04-20 15:12 Ulrich Drepper <drepper@cygnus.com> * manual/creature.texi: Fix type. Patch by Andreas Schwab. 1998-04-20 13:47 Ulrich Drepper <drepper@cygnus.com> * signal/sighold.c: Include stddef.h for NULL definition. * signal/sigrelse.c: Likewise. * sysdeps/posix/sigignore.c: Likewise. * sysdeps/posix/sigset.c: Likewise. * sysdeps/posix/waitid.c: Likewise. * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Likewise. * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Likewise. * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise. * wcsmbs/mbsrtowcs.c: Include stdlib.h for MB_CUR_MAX. Patch by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>. 1998-04-13 Mark Kettenis <kettenis@phys.uva.nl> * login/Makefile (headers): Remove utmpx.h and bits/utmpx.h. * login/getutent.c (getutxent): Remove alias. * login/getutent_r.c (setutxent, pututxline, endutxent): Remove aliases. * login/getutid.c (getutxid): Remove alias. * login/getutline.c (getutxline): Remove alias. * login/utmp.h: Add prototypes for __updwtmp, __getutent, __getutid, __getutline and __pututline. * login/utmpx.h: Moved to ... * sysdeps/gnu/utmpx.h: ... here. [__USE_GNU]: Define UTMPX_FILE, UTMPX_FILENAME, WTMPX_FILE and WTMPX_FILENAME, declare utmpxname and updwtmpx. * login/updwtmp.c: Moved to ... * sysdeps/generic/updwtmp.c: ... here. (updwtmp): Generalized by allowing file name transformation. * sysdeps/gnu/updwtmp.c: New file. Use generic implementation with additional file name transformation. * sysdeps/unix/sysv/linux/updwtmp.c: Likewise. * login/utmp_file.c: Moved to ... * sysdeps/generic/utmp_file.c: ... here. (setutent_file): Generalized by allowing file name transformation. Do not print error message. Library functions should not print them. Reported by Jim Meyering. * sysdeps/gnu/utmp_file.c: New file. Use generic implementation with additional file name transformation. * sysdeps/unix/sysv/linux/utmp_file.c: Likewise. * sysdeps/gnu/Makefile [$(subdir)=login] (sysdep_routines): Add setutxent, getutxent, endutxent, getutxid, getutxid, getutxline, pututxline, utmpxname and updwtmpx. (sysdep_headers): Add utmpx.h and bits/utmpx.h. * sysdeps/gnu/bits/utmpx.h [__USE_GNU] Include paths.h. (_PATH_UTMPX): Define to _PATH_UTMP. (_PATH_WTMPX): Define to _PATH_WTMPX. (RUN_LVL): Define only if __USE_GNU. (ACCOUNTING): Define if __USE_GNU. * sysdeps/gnu/setutxent.c: New file. * sysdeps/gnu/getutxent.c: New file. * sysdeps/gnu/endutxent.c: New file. * sysdeps/gnu/getutxid.c: New file. * sysdeps/gnu/getutxline.c: New file. * sysdeps/gnu/pututxline.c: New file. * sysdeps/gnu/utmpxname.c: New file. * sysdeps/gnu/updwtmpx.c: New file. * sysdeps/unix/sysv/linux/paths.h (_PATH_UTMP_DB): Remove. * sysdeps/generic/bits/utmpx.h: Remove. 1998-04-20 Ulrich Drepper <drepper@cygnus.com> * posix/wordexp-test.c (main): Initialize ifs element of ts for ~root test. 1998-04-17 07:53 H.J. Lu <hjl@gnu.org> * sysdeps/unix/sysv/linux/i386/s_pread64.S: Fix a typo. 1998-04-17 11:32 Ulrich Drepper <drepper@cygnus.com> * libio/oldfileops.c (_IO_old_file_seekoff): Define temporary st variable using _G_stat64. * libio/fileops.c: Remove macro definition of fstat, it is in the global header. Reported by Thorsten Kukuk <kukuk@weber.uni-paderborn.de>. 1998-04-17 Philip Blundell <pb@nexus.co.uk> * sysdeps/arm/strlen.S: New file, based on code by Matthew Wilcox <willy@odie.barnet.ac.uk>. 1998-04-16 Philip Blundell <Philip.Blundell@pobox.com> * inet/netinet/in.h (IN6_IS_ADDR_MC_NODELOCAL): New macro, required by IPv6 Basic API. (IN6_IS_ADDR_MC_LINKLOCAL): Likewise. (IN6_IS_ADDR_MC_SITELOCAL): Likewise. (IN6_IS_ADDR_MC_ORGLOCAL): Likewise. (IN6_IS_ADDR_MC_GLOBAL): Likewise.
1998-04-20 18:41:05 +00:00
1998-04-20 14:55 Ulrich Drepper <drepper@cygnus.com>
* Makefile (libpthread-routines): Add ptlongjmp and spinlock.
* internals.h: Add definitions for new spinlock implementation.
* ptlongjmp.c: New file.
* spinlock.c: New file.
* spinlock.h (acquire): Don't reschedule using __sched_yield, use
new function __pthread_acquire to prevent deadlocks with thread
with different priorities.
Patches by Xavier Leroy <Xavier.Leroy@inria.fr>.
1998-03-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* manager.c (__pthread_manager): Reduce first argument to select
to include just the needed file descriptor.
1998-03-17 00:06 Ulrich Drepper <drepper@cygnus.com>
* manager.c: Fix last patch which caused core dumps.
* pthread.c: Correctly handle missing SIGRTMIN.
1998-03-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* libpthread.map: Add __libc_internal_tsd_get and
__libc_internal_tsd_set. Add missing cancelable functions. Export
libc internal versions of the cancelable functions.
Update. 1998-03-13 16:55 Ulrich Drepper <drepper@cygnus.com> * string/tester.c (test_strpbrk): Add more strpbrk tests. (test_strsep): Likewise. Correct horrible bugs. * string/bits/string2.h (strcspn): Optimize also reject string of length 2 and 3. (strspn): Likewise. (strpbrk): Likewise. (strsep): Likewise. Correct bug with successive separators and separators at the end of the string. * sysdeps/generic/strsep.c: Correct bug with successive separators and separators at the end of the string. 1998-03-13 13:11 Tim Waugh <tim@cyberelk.demon.co.uk> * posix/wordexp.c (parse_param): Positional parameters ($1, $2 etc) now handled, as well as $$ (pid). * posix/Makefile (tests): Execute wordexp-test.sh for `make check'. (distribute): Add wordexp-tst.sh. * posix/wordexp-tst.sh: New file. * posix/wordexp.c (parse_param): $# (or ${#}) expands to the number of positional parameters. Renamed substitute_length to seen_hash. Don't free(env) is env is NULL. 1998-03-13 16:50 Ulrich Drepper <drepper@cygnus.com> * libc.map: Add pthread_attr_init to GLIBC_2.1. 1998-03-13 15:01 Ulrich Drepper <drepper@cygnus.com> * gmon/gmon.c: Allow GMON_OUT_PREFIX variable to specify filename for output file replacing gmon.out. Patch by Dean Gaudet <dgaudet@arctic.org>. 1998-03-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-misc.c (_dl_debug_message): Fix printing of pid. Clean up namespace. Optimize finding end of line. 1998-03-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (process_envvars): Ignore LD_DEBUG_OUTPUT if running securely. Optimized. (process_dl_debug): Add ':' to list of separators. Optimized. 1998-03-13 10:25 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
1998-03-13 17:02:23 +00:00
1998-03-13 16:51 Ulrich Drepper <drepper@cygnus.com>
* weaks.c: Define pthread_attr_init as GLIBC_2.0 and GLIBC_2.1.
1998-03-13 00:46 Ulrich Drepper <drepper@cygnus.com>
* attr.c: Implement pthread_attr_[gs]etguardsize,
pthread_attr_[gs]setstackaddr, pthread_attr_[gs]etstacksize.
Change pthread_attr_init to have two interfaces.
* internals.h (struct _pthread_descr_struct): Add new fields for
above functions.
* libpthread.map: Add names in GLIBC_2.1 section.
* manager.c (pthread_handle_create): Implement guardsize and
user stack.
(pthread_free): Likewise.
* pthread.c (pthread_create): Add new interface for changed
pthread_attr_t.
* sysdeps/pthread/pthread.h: Add prototypes for new functions.
* sysdeps/unix/sysv/linux/bits/local_lim.h: Add definition of
PTHREAD_STACK_MIN.
LinuxThreads library. 1998-03-11 00:42 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * linuxthreads/manager.c: Enable resetting of the thread scheduling policy to SCHED_OTHER when the parent thread has a different one. 1998-02-01 13:51 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_ASYNCHRONOUS_IO. * sysdeps/pthread/pthread.h: Define bits for Unix98 variants of mutexes. * mutex.c: Implement new mutex types. * internals.h: Include <signal.h>. * libpthread.map: Add __erno_location and __h_errno_location. * errno.c: Return pointer to variable actually in use. This might not be the one in the thread structure. * internals.h (struct _pthread_descr_struct): Add new fields p_errnop and p_h_errnop. * manager.c (__pthread_manager): Set p_errnop and p_h_errnop member of manager thread structure. (pthread_handle_create): Set p_errnop and p_h_errnop members for new thread. * pthread.c: Adapt initializer for thread structures. (__pthread_initial_thread): Set p_errnop and p_h_errnop member. (__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of current thread to global variables. 1998-01-31 17:27 Ulrich Drepper <drepper@cygnus.com> * rwlock.c: New file. * Makefile (libpthread-routines): Add rwlock. * sysdeps/pthread/pthread.h: Define data structures and declare functions. * libpthread.map: Add new functions. 1997-12-18 13:50 Philip Blundell <pb@nexus.co.uk> * sysdeps/arm/pt-machine.h: New file; add ARM support. * sysdeps/arm/Implies: likewise. * README: Document it. 1997-12-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * signals.c: Remove unneeded initializer for sigwaited, saving a 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. 1997-12-04 01:48 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Implement PTHREAD_MUTEX_CHECKERROR. * sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR. * Makefile: Update from LinuxThreads 0.7. * internals.h. Likewise. * manager.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * Examples/ex3.c: Likewise. 1997-11-20 18:13 Ulrich Drepper <drepper@cygnus.com> * pthread.c (__pthread_reset_main_thread): Close pipe only if still open. 1997-10-29 05:38 Ulrich Drepper <drepper@cygnus.com> * wrapsyscall.c: Add socket functions which are also cancelation points. 1997-10-19 21:40 Wolfram Gloger <wg@wolfram.dent.med.uni-muenchen.de> * specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get): New functions for fast thread specific data within libc. * internals.h: Add new array p_libc_specific to struct _pthread_descr_struct. * sysdeps/pthread/bits/libc-lock.h: Declare new functions. 1997-10-13 05:39 Ulrich Drepper <drepper@cygnus.com> * semaphore.h: Add __BEGIN_DECLS/__END_DECLS. Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. 1997-08-29 03:05 Ulrich Drepper <drepper@cygnus.com> * internals.h (struct _pthread_descr_struct): Add definitions for two-level specific key handling. * manager.c (pthread_handle_create): Initialize specific memory array. * specific.c: Implement two-level key handling. * weaks.c: Don't provide dummy key handling. * sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define). Add definition of __libc_key_t. * sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX as 1024. Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and PTHREAD_DESTRUCTOR_ITERATIONS. * manager.c (pthread_handle_create): Compare mmap result with MAP_FAILED. * ptfork.c: Rename to __pthread_atfork and make old name a weak alias. * sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork. 1997-08-22 19:04 Richard Henderson <rth@cygnus.com> sysdeps/sparc -> sysdeps/sparc/sparc32 sysdeps/sparc64 -> sysdeps/sparc/sparc64 * internals.h: Change definition of THREAD_SELF to be an expression, not a statement that did a return. * sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly. * sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF): Follow Solaris and use a "system reserved" register (%g6) to hold the thread descriptor. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. 1997-08-03 00:09 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Correct pthread_once. Patch by Xavier Leroy. * sysdeps/pthread/pthread.h: Add prototype for __pthread_once. * sysdeps/pthread/bits/pthread.h: Add macros for __libc_once. * semaphore.c: Include spinlock.h only when needed. * specific.c (__pthread_setsepcific, __pthread_getspecific): Reject keys for entries not in use. * weaks.c: Implement key handling functions for real. 1997-06-29 01:04 Richard Henderson <richard@gnu.ai.mit.edu> Initial sparc64-linux support: * linuxthreads/sysdeps/sparc64/Implies: New file. * linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise. 1997-06-29 00:48 Ulrich Drepper <drepper@cygnus.com> * semaphore.c: Include spinlock.h at correct place. Patch by HJ Lu. 1997-06-13 10:06 Richard Henderson <rth@tamu.edu> The Great Bit File Move: * sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h. * sysdeps/powerpc/semaphorebits.h: Likewise. * sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/libc-lock.h: -> bits/ * sysdeps/pthread/stdio-lock.h: Likewise. * sysdeps/unix/sysv/linux/local_lim.h: Likewise. * sysdeps/unix/sysv/linux/posix_opt.h: Likewise. * semaphore.h: Likewise. * sysdeps/pthread/pthread.h: Likewise. * lockfile.c: <foo.h> -> <bits/foo.h>. * semaphore.h: Likewise. * Makefile: (headers): foo.h -> bits/foo.h. * sysdeps/pthread/Makefile: Likewise. 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. * sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix asm constraints. 1997-04-09 03:00 Ulrich Drepper <drepper@cygnus.com> Update from LinuxThreads 0.6. * attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max and __sched_get_priority_min instead of names without `__'. * manager.c: Rewrite large parts to implement opaque pthread_t. * cancel.c: Adapt for opaque pthread_t type. * condvar.c: Likewise. * errno.c: Likewise. * join.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * restart.h: Likewise. * queue.h: Likewise. * Examples/ex3.c: Likewise. * Examples/ex4.c: Likewise. * sysdeps/pthread/pthread.h: Likewise. * pthread.c: Accumulate time for all threads in thread manager. * semaphore.c: Implement fallback implementation for architectures sometimes missing compare-exchange operations. * cancel.c (pthread_cancel): Validate handle argument. * join.c (pthread_join): Likewise. (pthread_detach): Likewise. * signals.c (pthread_kill): Likewise. * spinlock.h (acquire): Use __sched_yield not sched_yield. * queue.h (enqueue): Enqueue thread according to priority. * internals.c (struct pthread_start_args): New struct for passing args to cloning function. (struct _pthread): Rename to _pthread_descr_struct and adapt for opaque pthread_t. * Examples/Makefile (clean): Pass -f option to rm. * sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction and define TEST_FOR_COMPARE_AND_SWAP. * sysdeps/i386/i486/pt-machine.h: Removed. * sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase to 1024. 1997-04-04 16:38 Ulrich Drepper <drepper@cygnus.com> * restart.h (suspend): Clear p_signal before suspending. (suspend_with_cancellation): Likewise. Patch by Xavier Leroy <Xavier.Leroy@inria.fr>. * weaks.c: Make __pthread_key_create return 1. * sysdeps/pthread/libc-lock.h: Define __libc_key_create, __libc_getspecific, __libc_setspecific, and __libc_key_t. * sysdeps/pthread/stdio-lock.h: Don't care for implementation not using libio. 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/pt-machine (RELEASE): Fix. 1997-03-01 07:55 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/powerpc/Implies: Added. * sysdeps/powerpc/pt-machine.h: Added. * sysdeps/powerpc/semaphorebits.h: Added. 1997-01-22 01:22 Ulrich Drepper <drepper@cygnus.com> * linuxtheads/pthread.c (__pthread_initial_thread): Correct initializer. (__pthread_manager_thread): Likewise. Reported by Andreas Jaeger. 1997-01-18 22:15 Richard Henderson <rth@tamu.edu> Since sigset_t no longer fits in a register, we can't pass in the thread's initial mask so easily. Take this opportunity to simplify the clone implementation by only accepting a single void* argument. * linuxthreads/manager.c (__pthread_manager): Put thread vitals in the thread struct instead of as arguments through clone. (pthread_start_thread): Look for them there. * linuxthreads/internals.h (struct _pthread): Add p_initial_fn, p_initial_fn_arg, p_initial_mask. Fix __pthread_manager proto. * linuxthreads/pthread.c (pthread_initialize_manager): Revise clone invocation.
1998-03-11 12:42:25 +00:00
1998-03-11 00:42 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de>
* manager.c: Enable resetting of the thread scheduling policy
to SCHED_OTHER when the parent thread has a different one.
LinuxThreads library. 1998-03-11 00:42 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * linuxthreads/manager.c: Enable resetting of the thread scheduling policy to SCHED_OTHER when the parent thread has a different one. 1998-02-01 13:51 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_ASYNCHRONOUS_IO. * sysdeps/pthread/pthread.h: Define bits for Unix98 variants of mutexes. * mutex.c: Implement new mutex types. * internals.h: Include <signal.h>. * libpthread.map: Add __erno_location and __h_errno_location. * errno.c: Return pointer to variable actually in use. This might not be the one in the thread structure. * internals.h (struct _pthread_descr_struct): Add new fields p_errnop and p_h_errnop. * manager.c (__pthread_manager): Set p_errnop and p_h_errnop member of manager thread structure. (pthread_handle_create): Set p_errnop and p_h_errnop members for new thread. * pthread.c: Adapt initializer for thread structures. (__pthread_initial_thread): Set p_errnop and p_h_errnop member. (__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of current thread to global variables. 1998-01-31 17:27 Ulrich Drepper <drepper@cygnus.com> * rwlock.c: New file. * Makefile (libpthread-routines): Add rwlock. * sysdeps/pthread/pthread.h: Define data structures and declare functions. * libpthread.map: Add new functions. 1997-12-18 13:50 Philip Blundell <pb@nexus.co.uk> * sysdeps/arm/pt-machine.h: New file; add ARM support. * sysdeps/arm/Implies: likewise. * README: Document it. 1997-12-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * signals.c: Remove unneeded initializer for sigwaited, saving a 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. 1997-12-04 01:48 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Implement PTHREAD_MUTEX_CHECKERROR. * sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR. * Makefile: Update from LinuxThreads 0.7. * internals.h. Likewise. * manager.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * Examples/ex3.c: Likewise. 1997-11-20 18:13 Ulrich Drepper <drepper@cygnus.com> * pthread.c (__pthread_reset_main_thread): Close pipe only if still open. 1997-10-29 05:38 Ulrich Drepper <drepper@cygnus.com> * wrapsyscall.c: Add socket functions which are also cancelation points. 1997-10-19 21:40 Wolfram Gloger <wg@wolfram.dent.med.uni-muenchen.de> * specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get): New functions for fast thread specific data within libc. * internals.h: Add new array p_libc_specific to struct _pthread_descr_struct. * sysdeps/pthread/bits/libc-lock.h: Declare new functions. 1997-10-13 05:39 Ulrich Drepper <drepper@cygnus.com> * semaphore.h: Add __BEGIN_DECLS/__END_DECLS. Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. 1997-08-29 03:05 Ulrich Drepper <drepper@cygnus.com> * internals.h (struct _pthread_descr_struct): Add definitions for two-level specific key handling. * manager.c (pthread_handle_create): Initialize specific memory array. * specific.c: Implement two-level key handling. * weaks.c: Don't provide dummy key handling. * sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define). Add definition of __libc_key_t. * sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX as 1024. Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and PTHREAD_DESTRUCTOR_ITERATIONS. * manager.c (pthread_handle_create): Compare mmap result with MAP_FAILED. * ptfork.c: Rename to __pthread_atfork and make old name a weak alias. * sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork. 1997-08-22 19:04 Richard Henderson <rth@cygnus.com> sysdeps/sparc -> sysdeps/sparc/sparc32 sysdeps/sparc64 -> sysdeps/sparc/sparc64 * internals.h: Change definition of THREAD_SELF to be an expression, not a statement that did a return. * sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly. * sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF): Follow Solaris and use a "system reserved" register (%g6) to hold the thread descriptor. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. 1997-08-03 00:09 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Correct pthread_once. Patch by Xavier Leroy. * sysdeps/pthread/pthread.h: Add prototype for __pthread_once. * sysdeps/pthread/bits/pthread.h: Add macros for __libc_once. * semaphore.c: Include spinlock.h only when needed. * specific.c (__pthread_setsepcific, __pthread_getspecific): Reject keys for entries not in use. * weaks.c: Implement key handling functions for real. 1997-06-29 01:04 Richard Henderson <richard@gnu.ai.mit.edu> Initial sparc64-linux support: * linuxthreads/sysdeps/sparc64/Implies: New file. * linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise. 1997-06-29 00:48 Ulrich Drepper <drepper@cygnus.com> * semaphore.c: Include spinlock.h at correct place. Patch by HJ Lu. 1997-06-13 10:06 Richard Henderson <rth@tamu.edu> The Great Bit File Move: * sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h. * sysdeps/powerpc/semaphorebits.h: Likewise. * sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/libc-lock.h: -> bits/ * sysdeps/pthread/stdio-lock.h: Likewise. * sysdeps/unix/sysv/linux/local_lim.h: Likewise. * sysdeps/unix/sysv/linux/posix_opt.h: Likewise. * semaphore.h: Likewise. * sysdeps/pthread/pthread.h: Likewise. * lockfile.c: <foo.h> -> <bits/foo.h>. * semaphore.h: Likewise. * Makefile: (headers): foo.h -> bits/foo.h. * sysdeps/pthread/Makefile: Likewise. 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. * sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix asm constraints. 1997-04-09 03:00 Ulrich Drepper <drepper@cygnus.com> Update from LinuxThreads 0.6. * attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max and __sched_get_priority_min instead of names without `__'. * manager.c: Rewrite large parts to implement opaque pthread_t. * cancel.c: Adapt for opaque pthread_t type. * condvar.c: Likewise. * errno.c: Likewise. * join.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * restart.h: Likewise. * queue.h: Likewise. * Examples/ex3.c: Likewise. * Examples/ex4.c: Likewise. * sysdeps/pthread/pthread.h: Likewise. * pthread.c: Accumulate time for all threads in thread manager. * semaphore.c: Implement fallback implementation for architectures sometimes missing compare-exchange operations. * cancel.c (pthread_cancel): Validate handle argument. * join.c (pthread_join): Likewise. (pthread_detach): Likewise. * signals.c (pthread_kill): Likewise. * spinlock.h (acquire): Use __sched_yield not sched_yield. * queue.h (enqueue): Enqueue thread according to priority. * internals.c (struct pthread_start_args): New struct for passing args to cloning function. (struct _pthread): Rename to _pthread_descr_struct and adapt for opaque pthread_t. * Examples/Makefile (clean): Pass -f option to rm. * sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction and define TEST_FOR_COMPARE_AND_SWAP. * sysdeps/i386/i486/pt-machine.h: Removed. * sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase to 1024. 1997-04-04 16:38 Ulrich Drepper <drepper@cygnus.com> * restart.h (suspend): Clear p_signal before suspending. (suspend_with_cancellation): Likewise. Patch by Xavier Leroy <Xavier.Leroy@inria.fr>. * weaks.c: Make __pthread_key_create return 1. * sysdeps/pthread/libc-lock.h: Define __libc_key_create, __libc_getspecific, __libc_setspecific, and __libc_key_t. * sysdeps/pthread/stdio-lock.h: Don't care for implementation not using libio. 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/pt-machine (RELEASE): Fix. 1997-03-01 07:55 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/powerpc/Implies: Added. * sysdeps/powerpc/pt-machine.h: Added. * sysdeps/powerpc/semaphorebits.h: Added. 1997-01-22 01:22 Ulrich Drepper <drepper@cygnus.com> * linuxtheads/pthread.c (__pthread_initial_thread): Correct initializer. (__pthread_manager_thread): Likewise. Reported by Andreas Jaeger. 1997-01-18 22:15 Richard Henderson <rth@tamu.edu> Since sigset_t no longer fits in a register, we can't pass in the thread's initial mask so easily. Take this opportunity to simplify the clone implementation by only accepting a single void* argument. * linuxthreads/manager.c (__pthread_manager): Put thread vitals in the thread struct instead of as arguments through clone. (pthread_start_thread): Look for them there. * linuxthreads/internals.h (struct _pthread): Add p_initial_fn, p_initial_fn_arg, p_initial_mask. Fix __pthread_manager proto. * linuxthreads/pthread.c (pthread_initialize_manager): Revise clone invocation.
1998-03-11 12:42:25 +00:00
1998-02-01 13:51 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
_POSIX_ASYNCHRONOUS_IO.
* sysdeps/pthread/pthread.h: Define bits for Unix98 variants of
mutexes.
* mutex.c: Implement new mutex types.
* internals.h: Include <signal.h>.
* libpthread.map: Add __erno_location and __h_errno_location.
* errno.c: Return pointer to variable actually in use. This might
not be the one in the thread structure.
* internals.h (struct _pthread_descr_struct): Add new fields p_errnop
and p_h_errnop.
* manager.c (__pthread_manager): Set p_errnop and p_h_errnop member
of manager thread structure.
(pthread_handle_create): Set p_errnop and p_h_errnop members for new
thread.
* pthread.c: Adapt initializer for thread structures.
(__pthread_initial_thread): Set p_errnop and p_h_errnop member.
(__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of
current thread to global variables.
1998-01-31 17:27 Ulrich Drepper <drepper@cygnus.com>
* rwlock.c: New file.
* Makefile (libpthread-routines): Add rwlock.
* sysdeps/pthread/pthread.h: Define data structures and declare
functions.
* libpthread.map: Add new functions.
1997-12-18 13:50 Philip Blundell <pb@nexus.co.uk>
* sysdeps/arm/pt-machine.h: New file; add ARM support.
* sysdeps/arm/Implies: likewise.
* README: Document it.
1997-12-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* signals.c: Remove unneeded initializer for sigwaited, saving a
warning.
1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* semaphore.c (sem_init): Set sem_spinlock only if available.
1997-12-04 01:48 Ulrich Drepper <drepper@cygnus.com>
* mutex.c: Implement PTHREAD_MUTEX_CHECKERROR.
* sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR.
* Makefile: Update from LinuxThreads 0.7.
* internals.h. Likewise.
* manager.c: Likewise.
* mutex.c: Likewise.
* pthread.c: Likewise.
* signals.c: Likewise.
* specific.c: Likewise.
* Examples/ex3.c: Likewise.
1997-11-20 18:13 Ulrich Drepper <drepper@cygnus.com>
* pthread.c (__pthread_reset_main_thread): Close pipe only if still
open.
1997-10-29 05:38 Ulrich Drepper <drepper@cygnus.com>
* wrapsyscall.c: Add socket functions which are also cancelation
points.
1997-10-19 21:40 Wolfram Gloger <wg@wolfram.dent.med.uni-muenchen.de>
* specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get):
New functions for fast thread specific data within libc.
* internals.h: Add new array p_libc_specific to struct
_pthread_descr_struct.
* sysdeps/pthread/bits/libc-lock.h: Declare new functions.
1997-10-13 05:39 Ulrich Drepper <drepper@cygnus.com>
* semaphore.h: Add __BEGIN_DECLS/__END_DECLS.
Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
1997-08-29 03:05 Ulrich Drepper <drepper@cygnus.com>
* internals.h (struct _pthread_descr_struct): Add definitions for
two-level specific key handling.
* manager.c (pthread_handle_create): Initialize specific memory array.
* specific.c: Implement two-level key handling.
* weaks.c: Don't provide dummy key handling.
* sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define).
Add definition of __libc_key_t.
* sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX
as 1024.
Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and
PTHREAD_DESTRUCTOR_ITERATIONS.
* manager.c (pthread_handle_create): Compare mmap result with
MAP_FAILED.
* ptfork.c: Rename to __pthread_atfork and make old name a weak alias.
* sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork.
1997-08-22 19:04 Richard Henderson <rth@cygnus.com>
sysdeps/sparc -> sysdeps/sparc/sparc32
sysdeps/sparc64 -> sysdeps/sparc/sparc64
* internals.h: Change definition of THREAD_SELF to be an expression,
not a statement that did a return.
* sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly.
* sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF):
Follow Solaris and use a "system reserved" register (%g6) to hold
the thread descriptor.
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
1997-08-03 00:09 Ulrich Drepper <drepper@cygnus.com>
* mutex.c: Correct pthread_once. Patch by Xavier Leroy.
* sysdeps/pthread/pthread.h: Add prototype for __pthread_once.
* sysdeps/pthread/bits/pthread.h: Add macros for __libc_once.
* semaphore.c: Include spinlock.h only when needed.
* specific.c (__pthread_setsepcific, __pthread_getspecific): Reject
keys for entries not in use.
* weaks.c: Implement key handling functions for real.
1997-06-29 01:04 Richard Henderson <richard@gnu.ai.mit.edu>
Initial sparc64-linux support:
* sysdeps/sparc64/Implies: New file.
* sysdeps/sparc64/pt-machine.h: Likewise.
LinuxThreads library. 1998-03-11 00:42 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * linuxthreads/manager.c: Enable resetting of the thread scheduling policy to SCHED_OTHER when the parent thread has a different one. 1998-02-01 13:51 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_ASYNCHRONOUS_IO. * sysdeps/pthread/pthread.h: Define bits for Unix98 variants of mutexes. * mutex.c: Implement new mutex types. * internals.h: Include <signal.h>. * libpthread.map: Add __erno_location and __h_errno_location. * errno.c: Return pointer to variable actually in use. This might not be the one in the thread structure. * internals.h (struct _pthread_descr_struct): Add new fields p_errnop and p_h_errnop. * manager.c (__pthread_manager): Set p_errnop and p_h_errnop member of manager thread structure. (pthread_handle_create): Set p_errnop and p_h_errnop members for new thread. * pthread.c: Adapt initializer for thread structures. (__pthread_initial_thread): Set p_errnop and p_h_errnop member. (__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of current thread to global variables. 1998-01-31 17:27 Ulrich Drepper <drepper@cygnus.com> * rwlock.c: New file. * Makefile (libpthread-routines): Add rwlock. * sysdeps/pthread/pthread.h: Define data structures and declare functions. * libpthread.map: Add new functions. 1997-12-18 13:50 Philip Blundell <pb@nexus.co.uk> * sysdeps/arm/pt-machine.h: New file; add ARM support. * sysdeps/arm/Implies: likewise. * README: Document it. 1997-12-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * signals.c: Remove unneeded initializer for sigwaited, saving a 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. 1997-12-04 01:48 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Implement PTHREAD_MUTEX_CHECKERROR. * sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR. * Makefile: Update from LinuxThreads 0.7. * internals.h. Likewise. * manager.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * Examples/ex3.c: Likewise. 1997-11-20 18:13 Ulrich Drepper <drepper@cygnus.com> * pthread.c (__pthread_reset_main_thread): Close pipe only if still open. 1997-10-29 05:38 Ulrich Drepper <drepper@cygnus.com> * wrapsyscall.c: Add socket functions which are also cancelation points. 1997-10-19 21:40 Wolfram Gloger <wg@wolfram.dent.med.uni-muenchen.de> * specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get): New functions for fast thread specific data within libc. * internals.h: Add new array p_libc_specific to struct _pthread_descr_struct. * sysdeps/pthread/bits/libc-lock.h: Declare new functions. 1997-10-13 05:39 Ulrich Drepper <drepper@cygnus.com> * semaphore.h: Add __BEGIN_DECLS/__END_DECLS. Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. 1997-08-29 03:05 Ulrich Drepper <drepper@cygnus.com> * internals.h (struct _pthread_descr_struct): Add definitions for two-level specific key handling. * manager.c (pthread_handle_create): Initialize specific memory array. * specific.c: Implement two-level key handling. * weaks.c: Don't provide dummy key handling. * sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define). Add definition of __libc_key_t. * sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX as 1024. Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and PTHREAD_DESTRUCTOR_ITERATIONS. * manager.c (pthread_handle_create): Compare mmap result with MAP_FAILED. * ptfork.c: Rename to __pthread_atfork and make old name a weak alias. * sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork. 1997-08-22 19:04 Richard Henderson <rth@cygnus.com> sysdeps/sparc -> sysdeps/sparc/sparc32 sysdeps/sparc64 -> sysdeps/sparc/sparc64 * internals.h: Change definition of THREAD_SELF to be an expression, not a statement that did a return. * sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly. * sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF): Follow Solaris and use a "system reserved" register (%g6) to hold the thread descriptor. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. 1997-08-03 00:09 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Correct pthread_once. Patch by Xavier Leroy. * sysdeps/pthread/pthread.h: Add prototype for __pthread_once. * sysdeps/pthread/bits/pthread.h: Add macros for __libc_once. * semaphore.c: Include spinlock.h only when needed. * specific.c (__pthread_setsepcific, __pthread_getspecific): Reject keys for entries not in use. * weaks.c: Implement key handling functions for real. 1997-06-29 01:04 Richard Henderson <richard@gnu.ai.mit.edu> Initial sparc64-linux support: * linuxthreads/sysdeps/sparc64/Implies: New file. * linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise. 1997-06-29 00:48 Ulrich Drepper <drepper@cygnus.com> * semaphore.c: Include spinlock.h at correct place. Patch by HJ Lu. 1997-06-13 10:06 Richard Henderson <rth@tamu.edu> The Great Bit File Move: * sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h. * sysdeps/powerpc/semaphorebits.h: Likewise. * sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/libc-lock.h: -> bits/ * sysdeps/pthread/stdio-lock.h: Likewise. * sysdeps/unix/sysv/linux/local_lim.h: Likewise. * sysdeps/unix/sysv/linux/posix_opt.h: Likewise. * semaphore.h: Likewise. * sysdeps/pthread/pthread.h: Likewise. * lockfile.c: <foo.h> -> <bits/foo.h>. * semaphore.h: Likewise. * Makefile: (headers): foo.h -> bits/foo.h. * sysdeps/pthread/Makefile: Likewise. 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. * sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix asm constraints. 1997-04-09 03:00 Ulrich Drepper <drepper@cygnus.com> Update from LinuxThreads 0.6. * attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max and __sched_get_priority_min instead of names without `__'. * manager.c: Rewrite large parts to implement opaque pthread_t. * cancel.c: Adapt for opaque pthread_t type. * condvar.c: Likewise. * errno.c: Likewise. * join.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * restart.h: Likewise. * queue.h: Likewise. * Examples/ex3.c: Likewise. * Examples/ex4.c: Likewise. * sysdeps/pthread/pthread.h: Likewise. * pthread.c: Accumulate time for all threads in thread manager. * semaphore.c: Implement fallback implementation for architectures sometimes missing compare-exchange operations. * cancel.c (pthread_cancel): Validate handle argument. * join.c (pthread_join): Likewise. (pthread_detach): Likewise. * signals.c (pthread_kill): Likewise. * spinlock.h (acquire): Use __sched_yield not sched_yield. * queue.h (enqueue): Enqueue thread according to priority. * internals.c (struct pthread_start_args): New struct for passing args to cloning function. (struct _pthread): Rename to _pthread_descr_struct and adapt for opaque pthread_t. * Examples/Makefile (clean): Pass -f option to rm. * sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction and define TEST_FOR_COMPARE_AND_SWAP. * sysdeps/i386/i486/pt-machine.h: Removed. * sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase to 1024. 1997-04-04 16:38 Ulrich Drepper <drepper@cygnus.com> * restart.h (suspend): Clear p_signal before suspending. (suspend_with_cancellation): Likewise. Patch by Xavier Leroy <Xavier.Leroy@inria.fr>. * weaks.c: Make __pthread_key_create return 1. * sysdeps/pthread/libc-lock.h: Define __libc_key_create, __libc_getspecific, __libc_setspecific, and __libc_key_t. * sysdeps/pthread/stdio-lock.h: Don't care for implementation not using libio. 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/pt-machine (RELEASE): Fix. 1997-03-01 07:55 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/powerpc/Implies: Added. * sysdeps/powerpc/pt-machine.h: Added. * sysdeps/powerpc/semaphorebits.h: Added. 1997-01-22 01:22 Ulrich Drepper <drepper@cygnus.com> * linuxtheads/pthread.c (__pthread_initial_thread): Correct initializer. (__pthread_manager_thread): Likewise. Reported by Andreas Jaeger. 1997-01-18 22:15 Richard Henderson <rth@tamu.edu> Since sigset_t no longer fits in a register, we can't pass in the thread's initial mask so easily. Take this opportunity to simplify the clone implementation by only accepting a single void* argument. * linuxthreads/manager.c (__pthread_manager): Put thread vitals in the thread struct instead of as arguments through clone. (pthread_start_thread): Look for them there. * linuxthreads/internals.h (struct _pthread): Add p_initial_fn, p_initial_fn_arg, p_initial_mask. Fix __pthread_manager proto. * linuxthreads/pthread.c (pthread_initialize_manager): Revise clone invocation.
1998-03-11 12:42:25 +00:00
1997-06-29 00:48 Ulrich Drepper <drepper@cygnus.com>
* semaphore.c: Include spinlock.h at correct place.
Patch by HJ Lu.
1997-06-13 10:06 Richard Henderson <rth@tamu.edu>
The Great Bit File Move:
* sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h.
* sysdeps/powerpc/semaphorebits.h: Likewise.
* sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise.
* sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise.
* sysdeps/pthread/libc-lock.h: -> bits/
* sysdeps/pthread/stdio-lock.h: Likewise.
* sysdeps/unix/sysv/linux/local_lim.h: Likewise.
* sysdeps/unix/sysv/linux/posix_opt.h: Likewise.
* semaphore.h: Likewise.
* sysdeps/pthread/pthread.h: Likewise.
* lockfile.c: <foo.h> -> <bits/foo.h>.
* semaphore.h: Likewise.
* Makefile: (headers): foo.h -> bits/foo.h.
* sysdeps/pthread/Makefile: Likewise.
1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* semaphore.c (sem_init): Set sem_spinlock only if available.
* sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix
asm constraints.
1997-04-09 03:00 Ulrich Drepper <drepper@cygnus.com>
Update from LinuxThreads 0.6.
* attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max
and __sched_get_priority_min instead of names without `__'.
* manager.c: Rewrite large parts to implement opaque pthread_t.
* cancel.c: Adapt for opaque pthread_t type.
* condvar.c: Likewise.
* errno.c: Likewise.
* join.c: Likewise.
* mutex.c: Likewise.
* pthread.c: Likewise.
* signals.c: Likewise.
* specific.c: Likewise.
* restart.h: Likewise.
* queue.h: Likewise.
* Examples/ex3.c: Likewise.
* Examples/ex4.c: Likewise.
* sysdeps/pthread/pthread.h: Likewise.
* pthread.c: Accumulate time for all threads in thread manager.
* semaphore.c: Implement fallback implementation for architectures
sometimes missing compare-exchange operations.
* cancel.c (pthread_cancel): Validate handle argument.
* join.c (pthread_join): Likewise.
(pthread_detach): Likewise.
* signals.c (pthread_kill): Likewise.
* spinlock.h (acquire): Use __sched_yield not sched_yield.
* queue.h (enqueue): Enqueue thread according to priority.
* internals.c (struct pthread_start_args): New struct for passing
args to cloning function.
(struct _pthread): Rename to _pthread_descr_struct and adapt for
opaque pthread_t.
* Examples/Makefile (clean): Pass -f option to rm.
* sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction
and define TEST_FOR_COMPARE_AND_SWAP.
* sysdeps/i386/i486/pt-machine.h: Removed.
* sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase
to 1024.
1997-04-04 16:38 Ulrich Drepper <drepper@cygnus.com>
* restart.h (suspend): Clear p_signal before suspending.
(suspend_with_cancellation): Likewise.
Patch by Xavier Leroy <Xavier.Leroy@inria.fr>.
* weaks.c: Make __pthread_key_create return 1.
* sysdeps/pthread/libc-lock.h: Define __libc_key_create,
__libc_getspecific, __libc_setspecific, and __libc_key_t.
* sysdeps/pthread/stdio-lock.h: Don't care for implementation not
using libio.
1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx>
* sysdeps/sparc/pt-machine (RELEASE): Fix.
1997-03-01 07:55 Geoff Keating <geoffk@ozemail.com.au>
* sysdeps/powerpc/Implies: Added.
* sysdeps/powerpc/pt-machine.h: Added.
* sysdeps/powerpc/semaphorebits.h: Added.
1997-01-22 01:22 Ulrich Drepper <drepper@cygnus.com>
* pthread.c (__pthread_initial_thread): Correct
LinuxThreads library. 1998-03-11 00:42 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * linuxthreads/manager.c: Enable resetting of the thread scheduling policy to SCHED_OTHER when the parent thread has a different one. 1998-02-01 13:51 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_ASYNCHRONOUS_IO. * sysdeps/pthread/pthread.h: Define bits for Unix98 variants of mutexes. * mutex.c: Implement new mutex types. * internals.h: Include <signal.h>. * libpthread.map: Add __erno_location and __h_errno_location. * errno.c: Return pointer to variable actually in use. This might not be the one in the thread structure. * internals.h (struct _pthread_descr_struct): Add new fields p_errnop and p_h_errnop. * manager.c (__pthread_manager): Set p_errnop and p_h_errnop member of manager thread structure. (pthread_handle_create): Set p_errnop and p_h_errnop members for new thread. * pthread.c: Adapt initializer for thread structures. (__pthread_initial_thread): Set p_errnop and p_h_errnop member. (__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of current thread to global variables. 1998-01-31 17:27 Ulrich Drepper <drepper@cygnus.com> * rwlock.c: New file. * Makefile (libpthread-routines): Add rwlock. * sysdeps/pthread/pthread.h: Define data structures and declare functions. * libpthread.map: Add new functions. 1997-12-18 13:50 Philip Blundell <pb@nexus.co.uk> * sysdeps/arm/pt-machine.h: New file; add ARM support. * sysdeps/arm/Implies: likewise. * README: Document it. 1997-12-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * signals.c: Remove unneeded initializer for sigwaited, saving a 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. 1997-12-04 01:48 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Implement PTHREAD_MUTEX_CHECKERROR. * sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR. * Makefile: Update from LinuxThreads 0.7. * internals.h. Likewise. * manager.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * Examples/ex3.c: Likewise. 1997-11-20 18:13 Ulrich Drepper <drepper@cygnus.com> * pthread.c (__pthread_reset_main_thread): Close pipe only if still open. 1997-10-29 05:38 Ulrich Drepper <drepper@cygnus.com> * wrapsyscall.c: Add socket functions which are also cancelation points. 1997-10-19 21:40 Wolfram Gloger <wg@wolfram.dent.med.uni-muenchen.de> * specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get): New functions for fast thread specific data within libc. * internals.h: Add new array p_libc_specific to struct _pthread_descr_struct. * sysdeps/pthread/bits/libc-lock.h: Declare new functions. 1997-10-13 05:39 Ulrich Drepper <drepper@cygnus.com> * semaphore.h: Add __BEGIN_DECLS/__END_DECLS. Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. 1997-08-29 03:05 Ulrich Drepper <drepper@cygnus.com> * internals.h (struct _pthread_descr_struct): Add definitions for two-level specific key handling. * manager.c (pthread_handle_create): Initialize specific memory array. * specific.c: Implement two-level key handling. * weaks.c: Don't provide dummy key handling. * sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define). Add definition of __libc_key_t. * sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX as 1024. Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and PTHREAD_DESTRUCTOR_ITERATIONS. * manager.c (pthread_handle_create): Compare mmap result with MAP_FAILED. * ptfork.c: Rename to __pthread_atfork and make old name a weak alias. * sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork. 1997-08-22 19:04 Richard Henderson <rth@cygnus.com> sysdeps/sparc -> sysdeps/sparc/sparc32 sysdeps/sparc64 -> sysdeps/sparc/sparc64 * internals.h: Change definition of THREAD_SELF to be an expression, not a statement that did a return. * sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly. * sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF): Follow Solaris and use a "system reserved" register (%g6) to hold the thread descriptor. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. 1997-08-03 00:09 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Correct pthread_once. Patch by Xavier Leroy. * sysdeps/pthread/pthread.h: Add prototype for __pthread_once. * sysdeps/pthread/bits/pthread.h: Add macros for __libc_once. * semaphore.c: Include spinlock.h only when needed. * specific.c (__pthread_setsepcific, __pthread_getspecific): Reject keys for entries not in use. * weaks.c: Implement key handling functions for real. 1997-06-29 01:04 Richard Henderson <richard@gnu.ai.mit.edu> Initial sparc64-linux support: * linuxthreads/sysdeps/sparc64/Implies: New file. * linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise. 1997-06-29 00:48 Ulrich Drepper <drepper@cygnus.com> * semaphore.c: Include spinlock.h at correct place. Patch by HJ Lu. 1997-06-13 10:06 Richard Henderson <rth@tamu.edu> The Great Bit File Move: * sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h. * sysdeps/powerpc/semaphorebits.h: Likewise. * sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/libc-lock.h: -> bits/ * sysdeps/pthread/stdio-lock.h: Likewise. * sysdeps/unix/sysv/linux/local_lim.h: Likewise. * sysdeps/unix/sysv/linux/posix_opt.h: Likewise. * semaphore.h: Likewise. * sysdeps/pthread/pthread.h: Likewise. * lockfile.c: <foo.h> -> <bits/foo.h>. * semaphore.h: Likewise. * Makefile: (headers): foo.h -> bits/foo.h. * sysdeps/pthread/Makefile: Likewise. 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. * sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix asm constraints. 1997-04-09 03:00 Ulrich Drepper <drepper@cygnus.com> Update from LinuxThreads 0.6. * attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max and __sched_get_priority_min instead of names without `__'. * manager.c: Rewrite large parts to implement opaque pthread_t. * cancel.c: Adapt for opaque pthread_t type. * condvar.c: Likewise. * errno.c: Likewise. * join.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * restart.h: Likewise. * queue.h: Likewise. * Examples/ex3.c: Likewise. * Examples/ex4.c: Likewise. * sysdeps/pthread/pthread.h: Likewise. * pthread.c: Accumulate time for all threads in thread manager. * semaphore.c: Implement fallback implementation for architectures sometimes missing compare-exchange operations. * cancel.c (pthread_cancel): Validate handle argument. * join.c (pthread_join): Likewise. (pthread_detach): Likewise. * signals.c (pthread_kill): Likewise. * spinlock.h (acquire): Use __sched_yield not sched_yield. * queue.h (enqueue): Enqueue thread according to priority. * internals.c (struct pthread_start_args): New struct for passing args to cloning function. (struct _pthread): Rename to _pthread_descr_struct and adapt for opaque pthread_t. * Examples/Makefile (clean): Pass -f option to rm. * sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction and define TEST_FOR_COMPARE_AND_SWAP. * sysdeps/i386/i486/pt-machine.h: Removed. * sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase to 1024. 1997-04-04 16:38 Ulrich Drepper <drepper@cygnus.com> * restart.h (suspend): Clear p_signal before suspending. (suspend_with_cancellation): Likewise. Patch by Xavier Leroy <Xavier.Leroy@inria.fr>. * weaks.c: Make __pthread_key_create return 1. * sysdeps/pthread/libc-lock.h: Define __libc_key_create, __libc_getspecific, __libc_setspecific, and __libc_key_t. * sysdeps/pthread/stdio-lock.h: Don't care for implementation not using libio. 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/pt-machine (RELEASE): Fix. 1997-03-01 07:55 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/powerpc/Implies: Added. * sysdeps/powerpc/pt-machine.h: Added. * sysdeps/powerpc/semaphorebits.h: Added. 1997-01-22 01:22 Ulrich Drepper <drepper@cygnus.com> * linuxtheads/pthread.c (__pthread_initial_thread): Correct initializer. (__pthread_manager_thread): Likewise. Reported by Andreas Jaeger. 1997-01-18 22:15 Richard Henderson <rth@tamu.edu> Since sigset_t no longer fits in a register, we can't pass in the thread's initial mask so easily. Take this opportunity to simplify the clone implementation by only accepting a single void* argument. * linuxthreads/manager.c (__pthread_manager): Put thread vitals in the thread struct instead of as arguments through clone. (pthread_start_thread): Look for them there. * linuxthreads/internals.h (struct _pthread): Add p_initial_fn, p_initial_fn_arg, p_initial_mask. Fix __pthread_manager proto. * linuxthreads/pthread.c (pthread_initialize_manager): Revise clone invocation.
1998-03-11 12:42:25 +00:00
initializer.
(__pthread_manager_thread): Likewise.
Reported by Andreas Jaeger.
1997-01-18 22:15 Richard Henderson <rth@tamu.edu>
Since sigset_t no longer fits in a register, we can't pass in the
thread's initial mask so easily. Take this opportunity to simplify
the clone implementation by only accepting a single void* argument.
* manager.c (__pthread_manager): Put thread vitals in the thread
struct instead of as arguments through clone.
LinuxThreads library. 1998-03-11 00:42 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * linuxthreads/manager.c: Enable resetting of the thread scheduling policy to SCHED_OTHER when the parent thread has a different one. 1998-02-01 13:51 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_ASYNCHRONOUS_IO. * sysdeps/pthread/pthread.h: Define bits for Unix98 variants of mutexes. * mutex.c: Implement new mutex types. * internals.h: Include <signal.h>. * libpthread.map: Add __erno_location and __h_errno_location. * errno.c: Return pointer to variable actually in use. This might not be the one in the thread structure. * internals.h (struct _pthread_descr_struct): Add new fields p_errnop and p_h_errnop. * manager.c (__pthread_manager): Set p_errnop and p_h_errnop member of manager thread structure. (pthread_handle_create): Set p_errnop and p_h_errnop members for new thread. * pthread.c: Adapt initializer for thread structures. (__pthread_initial_thread): Set p_errnop and p_h_errnop member. (__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of current thread to global variables. 1998-01-31 17:27 Ulrich Drepper <drepper@cygnus.com> * rwlock.c: New file. * Makefile (libpthread-routines): Add rwlock. * sysdeps/pthread/pthread.h: Define data structures and declare functions. * libpthread.map: Add new functions. 1997-12-18 13:50 Philip Blundell <pb@nexus.co.uk> * sysdeps/arm/pt-machine.h: New file; add ARM support. * sysdeps/arm/Implies: likewise. * README: Document it. 1997-12-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * signals.c: Remove unneeded initializer for sigwaited, saving a 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. 1997-12-04 01:48 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Implement PTHREAD_MUTEX_CHECKERROR. * sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR. * Makefile: Update from LinuxThreads 0.7. * internals.h. Likewise. * manager.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * Examples/ex3.c: Likewise. 1997-11-20 18:13 Ulrich Drepper <drepper@cygnus.com> * pthread.c (__pthread_reset_main_thread): Close pipe only if still open. 1997-10-29 05:38 Ulrich Drepper <drepper@cygnus.com> * wrapsyscall.c: Add socket functions which are also cancelation points. 1997-10-19 21:40 Wolfram Gloger <wg@wolfram.dent.med.uni-muenchen.de> * specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get): New functions for fast thread specific data within libc. * internals.h: Add new array p_libc_specific to struct _pthread_descr_struct. * sysdeps/pthread/bits/libc-lock.h: Declare new functions. 1997-10-13 05:39 Ulrich Drepper <drepper@cygnus.com> * semaphore.h: Add __BEGIN_DECLS/__END_DECLS. Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. 1997-08-29 03:05 Ulrich Drepper <drepper@cygnus.com> * internals.h (struct _pthread_descr_struct): Add definitions for two-level specific key handling. * manager.c (pthread_handle_create): Initialize specific memory array. * specific.c: Implement two-level key handling. * weaks.c: Don't provide dummy key handling. * sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define). Add definition of __libc_key_t. * sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX as 1024. Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and PTHREAD_DESTRUCTOR_ITERATIONS. * manager.c (pthread_handle_create): Compare mmap result with MAP_FAILED. * ptfork.c: Rename to __pthread_atfork and make old name a weak alias. * sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork. 1997-08-22 19:04 Richard Henderson <rth@cygnus.com> sysdeps/sparc -> sysdeps/sparc/sparc32 sysdeps/sparc64 -> sysdeps/sparc/sparc64 * internals.h: Change definition of THREAD_SELF to be an expression, not a statement that did a return. * sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly. * sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF): Follow Solaris and use a "system reserved" register (%g6) to hold the thread descriptor. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. 1997-08-03 00:09 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Correct pthread_once. Patch by Xavier Leroy. * sysdeps/pthread/pthread.h: Add prototype for __pthread_once. * sysdeps/pthread/bits/pthread.h: Add macros for __libc_once. * semaphore.c: Include spinlock.h only when needed. * specific.c (__pthread_setsepcific, __pthread_getspecific): Reject keys for entries not in use. * weaks.c: Implement key handling functions for real. 1997-06-29 01:04 Richard Henderson <richard@gnu.ai.mit.edu> Initial sparc64-linux support: * linuxthreads/sysdeps/sparc64/Implies: New file. * linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise. 1997-06-29 00:48 Ulrich Drepper <drepper@cygnus.com> * semaphore.c: Include spinlock.h at correct place. Patch by HJ Lu. 1997-06-13 10:06 Richard Henderson <rth@tamu.edu> The Great Bit File Move: * sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h. * sysdeps/powerpc/semaphorebits.h: Likewise. * sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/libc-lock.h: -> bits/ * sysdeps/pthread/stdio-lock.h: Likewise. * sysdeps/unix/sysv/linux/local_lim.h: Likewise. * sysdeps/unix/sysv/linux/posix_opt.h: Likewise. * semaphore.h: Likewise. * sysdeps/pthread/pthread.h: Likewise. * lockfile.c: <foo.h> -> <bits/foo.h>. * semaphore.h: Likewise. * Makefile: (headers): foo.h -> bits/foo.h. * sysdeps/pthread/Makefile: Likewise. 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. * sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix asm constraints. 1997-04-09 03:00 Ulrich Drepper <drepper@cygnus.com> Update from LinuxThreads 0.6. * attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max and __sched_get_priority_min instead of names without `__'. * manager.c: Rewrite large parts to implement opaque pthread_t. * cancel.c: Adapt for opaque pthread_t type. * condvar.c: Likewise. * errno.c: Likewise. * join.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * restart.h: Likewise. * queue.h: Likewise. * Examples/ex3.c: Likewise. * Examples/ex4.c: Likewise. * sysdeps/pthread/pthread.h: Likewise. * pthread.c: Accumulate time for all threads in thread manager. * semaphore.c: Implement fallback implementation for architectures sometimes missing compare-exchange operations. * cancel.c (pthread_cancel): Validate handle argument. * join.c (pthread_join): Likewise. (pthread_detach): Likewise. * signals.c (pthread_kill): Likewise. * spinlock.h (acquire): Use __sched_yield not sched_yield. * queue.h (enqueue): Enqueue thread according to priority. * internals.c (struct pthread_start_args): New struct for passing args to cloning function. (struct _pthread): Rename to _pthread_descr_struct and adapt for opaque pthread_t. * Examples/Makefile (clean): Pass -f option to rm. * sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction and define TEST_FOR_COMPARE_AND_SWAP. * sysdeps/i386/i486/pt-machine.h: Removed. * sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase to 1024. 1997-04-04 16:38 Ulrich Drepper <drepper@cygnus.com> * restart.h (suspend): Clear p_signal before suspending. (suspend_with_cancellation): Likewise. Patch by Xavier Leroy <Xavier.Leroy@inria.fr>. * weaks.c: Make __pthread_key_create return 1. * sysdeps/pthread/libc-lock.h: Define __libc_key_create, __libc_getspecific, __libc_setspecific, and __libc_key_t. * sysdeps/pthread/stdio-lock.h: Don't care for implementation not using libio. 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/pt-machine (RELEASE): Fix. 1997-03-01 07:55 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/powerpc/Implies: Added. * sysdeps/powerpc/pt-machine.h: Added. * sysdeps/powerpc/semaphorebits.h: Added. 1997-01-22 01:22 Ulrich Drepper <drepper@cygnus.com> * linuxtheads/pthread.c (__pthread_initial_thread): Correct initializer. (__pthread_manager_thread): Likewise. Reported by Andreas Jaeger. 1997-01-18 22:15 Richard Henderson <rth@tamu.edu> Since sigset_t no longer fits in a register, we can't pass in the thread's initial mask so easily. Take this opportunity to simplify the clone implementation by only accepting a single void* argument. * linuxthreads/manager.c (__pthread_manager): Put thread vitals in the thread struct instead of as arguments through clone. (pthread_start_thread): Look for them there. * linuxthreads/internals.h (struct _pthread): Add p_initial_fn, p_initial_fn_arg, p_initial_mask. Fix __pthread_manager proto. * linuxthreads/pthread.c (pthread_initialize_manager): Revise clone invocation.
1998-03-11 12:42:25 +00:00
(pthread_start_thread): Look for them there.
* internals.h (struct _pthread): Add p_initial_fn,
LinuxThreads library. 1998-03-11 00:42 Wolfram Gloger <wmglo@dent.med.uni-muenchen.de> * linuxthreads/manager.c: Enable resetting of the thread scheduling policy to SCHED_OTHER when the parent thread has a different one. 1998-02-01 13:51 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define _POSIX_ASYNCHRONOUS_IO. * sysdeps/pthread/pthread.h: Define bits for Unix98 variants of mutexes. * mutex.c: Implement new mutex types. * internals.h: Include <signal.h>. * libpthread.map: Add __erno_location and __h_errno_location. * errno.c: Return pointer to variable actually in use. This might not be the one in the thread structure. * internals.h (struct _pthread_descr_struct): Add new fields p_errnop and p_h_errnop. * manager.c (__pthread_manager): Set p_errnop and p_h_errnop member of manager thread structure. (pthread_handle_create): Set p_errnop and p_h_errnop members for new thread. * pthread.c: Adapt initializer for thread structures. (__pthread_initial_thread): Set p_errnop and p_h_errnop member. (__pthread_reset_main_thread): Reset p_errnop and p_h_errnop of current thread to global variables. 1998-01-31 17:27 Ulrich Drepper <drepper@cygnus.com> * rwlock.c: New file. * Makefile (libpthread-routines): Add rwlock. * sysdeps/pthread/pthread.h: Define data structures and declare functions. * libpthread.map: Add new functions. 1997-12-18 13:50 Philip Blundell <pb@nexus.co.uk> * sysdeps/arm/pt-machine.h: New file; add ARM support. * sysdeps/arm/Implies: likewise. * README: Document it. 1997-12-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * signals.c: Remove unneeded initializer for sigwaited, saving a 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. 1997-12-04 01:48 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Implement PTHREAD_MUTEX_CHECKERROR. * sysdeps/pthread/pthread.h: Define PTHREAD_MUTEX_CHECKERROR. * Makefile: Update from LinuxThreads 0.7. * internals.h. Likewise. * manager.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * Examples/ex3.c: Likewise. 1997-11-20 18:13 Ulrich Drepper <drepper@cygnus.com> * pthread.c (__pthread_reset_main_thread): Close pipe only if still open. 1997-10-29 05:38 Ulrich Drepper <drepper@cygnus.com> * wrapsyscall.c: Add socket functions which are also cancelation points. 1997-10-19 21:40 Wolfram Gloger <wg@wolfram.dent.med.uni-muenchen.de> * specific.c (__libc_internal_tsd_set, __libc_internal_tsd_get): New functions for fast thread specific data within libc. * internals.h: Add new array p_libc_specific to struct _pthread_descr_struct. * sysdeps/pthread/bits/libc-lock.h: Declare new functions. 1997-10-13 05:39 Ulrich Drepper <drepper@cygnus.com> * semaphore.h: Add __BEGIN_DECLS/__END_DECLS. Reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. 1997-08-29 03:05 Ulrich Drepper <drepper@cygnus.com> * internals.h (struct _pthread_descr_struct): Add definitions for two-level specific key handling. * manager.c (pthread_handle_create): Initialize specific memory array. * specific.c: Implement two-level key handling. * weaks.c: Don't provide dummy key handling. * sysdeps/pthread/bits/libc-lock.h: Typedef __libc_lock_t (no #define). Add definition of __libc_key_t. * sysdeps/unix/sysv/linux/bits/local_lim.h: Define PTHREAD_KEYS_MAX as 1024. Add definition of _POSIX_THREAD_DESTRUCTOR_ITERATIONS and PTHREAD_DESTRUCTOR_ITERATIONS. * manager.c (pthread_handle_create): Compare mmap result with MAP_FAILED. * ptfork.c: Rename to __pthread_atfork and make old name a weak alias. * sysdeps/pthread/bits/pthread.h: Add prototype for __pthread_atfork. 1997-08-22 19:04 Richard Henderson <rth@cygnus.com> sysdeps/sparc -> sysdeps/sparc/sparc32 sysdeps/sparc64 -> sysdeps/sparc/sparc64 * internals.h: Change definition of THREAD_SELF to be an expression, not a statement that did a return. * sysdeps/alpha/pt-machine.h (THREAD_SELF): Update accordingly. * sysdeps/sparc/sparc32/pt-machine.h (THREAD_SELF, INIT_THREAD_SELF): Follow Solaris and use a "system reserved" register (%g6) to hold the thread descriptor. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. 1997-08-03 00:09 Ulrich Drepper <drepper@cygnus.com> * mutex.c: Correct pthread_once. Patch by Xavier Leroy. * sysdeps/pthread/pthread.h: Add prototype for __pthread_once. * sysdeps/pthread/bits/pthread.h: Add macros for __libc_once. * semaphore.c: Include spinlock.h only when needed. * specific.c (__pthread_setsepcific, __pthread_getspecific): Reject keys for entries not in use. * weaks.c: Implement key handling functions for real. 1997-06-29 01:04 Richard Henderson <richard@gnu.ai.mit.edu> Initial sparc64-linux support: * linuxthreads/sysdeps/sparc64/Implies: New file. * linuxthreads/sysdeps/sparc64/pt-machine.h: Likewise. 1997-06-29 00:48 Ulrich Drepper <drepper@cygnus.com> * semaphore.c: Include spinlock.h at correct place. Patch by HJ Lu. 1997-06-13 10:06 Richard Henderson <rth@tamu.edu> The Great Bit File Move: * sysdeps/alpha/semaphorebits.h: -> .../bits/semaphore.h. * sysdeps/powerpc/semaphorebits.h: Likewise. * sysdeps/pthread/cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/no-cmpxchg/semaphorebits.h: Likewise. * sysdeps/pthread/libc-lock.h: -> bits/ * sysdeps/pthread/stdio-lock.h: Likewise. * sysdeps/unix/sysv/linux/local_lim.h: Likewise. * sysdeps/unix/sysv/linux/posix_opt.h: Likewise. * semaphore.h: Likewise. * sysdeps/pthread/pthread.h: Likewise. * lockfile.c: <foo.h> -> <bits/foo.h>. * semaphore.h: Likewise. * Makefile: (headers): foo.h -> bits/foo.h. * sysdeps/pthread/Makefile: Likewise. 1997-04-11 01:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * semaphore.c (sem_init): Set sem_spinlock only if available. * sysdeps/m68k/pt-machine.h (testandset, __compare_and_swap): Fix asm constraints. 1997-04-09 03:00 Ulrich Drepper <drepper@cygnus.com> Update from LinuxThreads 0.6. * attr.c (pthread_attr_getdetachstate): Use __sched_get_priority_max and __sched_get_priority_min instead of names without `__'. * manager.c: Rewrite large parts to implement opaque pthread_t. * cancel.c: Adapt for opaque pthread_t type. * condvar.c: Likewise. * errno.c: Likewise. * join.c: Likewise. * mutex.c: Likewise. * pthread.c: Likewise. * signals.c: Likewise. * specific.c: Likewise. * restart.h: Likewise. * queue.h: Likewise. * Examples/ex3.c: Likewise. * Examples/ex4.c: Likewise. * sysdeps/pthread/pthread.h: Likewise. * pthread.c: Accumulate time for all threads in thread manager. * semaphore.c: Implement fallback implementation for architectures sometimes missing compare-exchange operations. * cancel.c (pthread_cancel): Validate handle argument. * join.c (pthread_join): Likewise. (pthread_detach): Likewise. * signals.c (pthread_kill): Likewise. * spinlock.h (acquire): Use __sched_yield not sched_yield. * queue.h (enqueue): Enqueue thread according to priority. * internals.c (struct pthread_start_args): New struct for passing args to cloning function. (struct _pthread): Rename to _pthread_descr_struct and adapt for opaque pthread_t. * Examples/Makefile (clean): Pass -f option to rm. * sysdeps/i386/pt-machine.h: Add check for compare-exchange instruction and define TEST_FOR_COMPARE_AND_SWAP. * sysdeps/i386/i486/pt-machine.h: Removed. * sysdeps/unix/sysv/linux/local_lim.h (PTHREAD_THREADS_MAX): Increase to 1024. 1997-04-04 16:38 Ulrich Drepper <drepper@cygnus.com> * restart.h (suspend): Clear p_signal before suspending. (suspend_with_cancellation): Likewise. Patch by Xavier Leroy <Xavier.Leroy@inria.fr>. * weaks.c: Make __pthread_key_create return 1. * sysdeps/pthread/libc-lock.h: Define __libc_key_create, __libc_getspecific, __libc_setspecific, and __libc_key_t. * sysdeps/pthread/stdio-lock.h: Don't care for implementation not using libio. 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/pt-machine (RELEASE): Fix. 1997-03-01 07:55 Geoff Keating <geoffk@ozemail.com.au> * sysdeps/powerpc/Implies: Added. * sysdeps/powerpc/pt-machine.h: Added. * sysdeps/powerpc/semaphorebits.h: Added. 1997-01-22 01:22 Ulrich Drepper <drepper@cygnus.com> * linuxtheads/pthread.c (__pthread_initial_thread): Correct initializer. (__pthread_manager_thread): Likewise. Reported by Andreas Jaeger. 1997-01-18 22:15 Richard Henderson <rth@tamu.edu> Since sigset_t no longer fits in a register, we can't pass in the thread's initial mask so easily. Take this opportunity to simplify the clone implementation by only accepting a single void* argument. * linuxthreads/manager.c (__pthread_manager): Put thread vitals in the thread struct instead of as arguments through clone. (pthread_start_thread): Look for them there. * linuxthreads/internals.h (struct _pthread): Add p_initial_fn, p_initial_fn_arg, p_initial_mask. Fix __pthread_manager proto. * linuxthreads/pthread.c (pthread_initialize_manager): Revise clone invocation.
1998-03-11 12:42:25 +00:00
p_initial_fn_arg, p_initial_mask. Fix __pthread_manager proto.
* pthread.c (pthread_initialize_manager): Revise clone invocation.