Age | Commit message (Collapse) | Author |
|
2008-02-21 Neal H. Walfield <neal@gnu.org>
* configure.ac (CFLAGS): Remove variable.
(USER_CFLAGS): New variable.
(USER_CPPFLAGS): Likewise.
(USER_LDFLAGS): Likewise.
(USER_LDADD): Likewise.
(KERNEL_CFLAGS): Likewise.
(KERNEL_CPPFLAGS): Likewise.
* Makefile.am (SUBDIRS): Build . after building laden and
viengoos.
hieronymus/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (AM_CPPFLAGS): Remove variable.
(AM_LDFLAGS): Likewise.
(hieronymus_CPPFLAGS): New variable.
(hieronymus_CFLAGS): Likewise.
(hieronymus_LDFLAGS): Likewise.
(hieronymus_LDADD): Don't include libc.a directly, use the value
of $(USER_LDADD) instead.
hurd/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (COMMON_CPPFLAGS): Remove variable.
(t_addr_CPPFLAGS): Replace use of $(COMMON_CPPFLAGS)
with use of $(CHECK_CPPFLAGS).
(t_addr_trans_CPPFLAGS): Likewise.
(t_rpc_CPPFLAGS): Likewise.
libc-parts/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (COMMON_CPPFLAGS): Remove variable.
(libc_parts_a_CPPFLAGS): Set to $(USER_CPPFLAGS).
(libc_parts_a_CFLAGS): New variable.
(libc_kernel_a_CPPFLAGS): Set to $(KERNEL_CPPFLAGS).
(libc_kernel_a_CFLAGS): New variable.
(t_setjmp_CPPFLAGS): Remove use of $(COMMON_CPPFLAGS) with
$(CHECK_CPPFLAGS).
libhurd-btree/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (COMMON_CPPFLAGS): Remove variable.
(libhurd_btree_a_CPPFLAGS): Replace use of above with
$(USER_CPPFLAGS).
(libhurd_btree_a_CFLAGS): New variable.
(btree_test_CPPFLAGS): Replace use $(COMMON_CPPFLAGS) with
$(CHECK_CPPFLAGS).
libhurd-ihash/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (AM_CPPFLAGS): Remove variable.
(AM_CFLAGS): Likewise.
(libhurd_ihash_a_CPPFLAGS): New variable.
(libhurd_ihash_a_CFLAGS): Likewise.
(libhurd_ihash_nomalloc_a_CPPFLAGS): Replace use of $(AM_CPPFLAGS)
with $(USER_CPPFLAGS).
(libhurd_ihash_nomalloc_a_CFLAGS): New variable.
(t_ihash_CPPFLAGS): Remove use of $(AM_CPPFLAGS).
(t_ihash64_CPPFLAGS): Likewise.
(t_ihash_CFLAGS): New variable.
(t_ihash64_CFLAGS): Likewise.
* ihash.c: Don't include <hurd/ihash.h> but "ihash.h".
libhurd-mm/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (COMMON_CPPFLAGS): Remove variable.
(libhurd_mm_a_CPPFLAGS): Replace use of above with
$(USER_CPPFLAGS).
(libhurd_mm_a_CFLAGS): New variable.
libpthread/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (AM_CPPFLAGS): Replace use of includes with
$(USER_CPPFLAGS).
(AM_CFLAGS): New variable.
newlib/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (patch_files): Add
05-newlib-newlib-libc-include-machine-setjmp-h.patch,
06-newlib-newlib-libc-machine-i386-i386mach-h.patch, and
07-newlib-newlib-libm-machine-i386-i386mach-h.patch.
(ccheaders): Remove variable.
(SYSINCLUDES): Likewise.
(newlib-build/libc.a newlib-build/libm.a): Set TARGET_CFLAGS to
"$(USER_CPPFLAGS) $(USER_CFLAGS) $(USER_LDFLAGS)".
* newlib/patches/05-newlib-newlib-libc-include-machine-setjmp-h.patch:
New file.
* newlib/patches/06-newlib-newlib-libc-machine-i386-i386mach-h.patch:
New file.
* newlib/patches/07-newlib-newlib-libm-machine-i386-i386mach-h.patch:
New file.
ruth/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (COMMON_CPPFLAGS): Remove variable.
(ruth_CPPFLAGS): Set to $(USER_CPPFLAGS).
(ruth_CFLAGS): New variable.
(ruth_LDFLAGS): Set to $(USER_LDFLAGS).
(ruth_LDADD): Set to $(USER_LDADD).
viengoos/
2008-02-21 Neal H. Walfield <neal@gnu.org>
* Makefile.am (COMMON_CPPFLAGS): Remove variable.
(viengoos_CPPFLAGS): Set to $(KERNEL_CPPFLAGS).
(viengoos_CFLAGS): New variable.
(libhurd_cap_a_CPPFLAGS): Set to $(USER_CPPFLAGS).
(libhurd_cap_a_CFLAGS): New variable.
(t_as_CFLAGS): New variable.
(t_activity_CFLAGS): Likewise.
(t_link_CFLAGS): Likewise.
|
|
* sysdeps/l4/hurd/ia32/pt-setup.c (stack_setup): Add correct casts
to elide gcc warnings.
(__pthread_setup): Likewise.
|
|
2008-02-13 Neal H. Walfield <neal@gnu.org>
* storage.h (storage_alloc): Take additional parameter policy.
Update callers.
* storage.c (storage_alloc): Take additional parameter policy.
Use it when allocating the object and updating the shadow
capability slots.
libpthread/
2008-02-13 Neal H. Walfield <neal@gnu.org>
* sysdeps/l4/hurd/pt-thread-alloc.c (__pthread_thread_alloc):
Update use of storage_alloc to be consistent with new API.
newlib/
2008-02-13 Neal H. Walfield <neal@gnu.org>
* addon/newlib/libc/sys/hurd/getreent.c (slab_alloc): Update use
of storage_alloc to be consistent with new API.
ruth/
2008-02-13 Neal H. Walfield <neal@gnu.org>
* ruth.c (main): Update use of storage_alloc to be consistent with
new API.
|
|
2008-02-13 Neal H. Walfield <neal@gnu.org>
* sysdeps/l4/hurd/pt-sysdep.c (_pthread_init_routine): Change
function signature to take a function pointer and an argument and
to not return.
(init_routine): Likewise. Pass entry and argument to
__pthread_create_internal. Instead of returning, jump to the
program counter and switch stacks.
libc-parts/
2008-02-13 Neal H. Walfield <neal@gnu.org>
* ia32-cmain.c (cmain): Update user of _pthread_init_routine to
reflect API change.
|
|
* sysdeps/l4/hurd/ia32/pt-setup.c (_pthread_entry_point): New
assembly function.
(stack_setup): Take additional argument entry_point. Push it on
the stack.
(__pthread_setup): Set thread->mcontext.pc to
&_pthread_entry_point. Pass ENTRY_POINT to stack_setup.
|
|
2008-02-08 Neal H. Walfield <neal@gnu.org>
* ihash.h: Include <bits/wordsize.h>.
(hurd_ihash_key64_t): New definition.
(struct _hurd_ihash_item64): New structure.
(struct hurd_ihash): Change items's type void *.
[__WORDSIZE == 32]: Add field large.
(_HURD_IHASH_LARGE): New macro.
(HURD_IHASH_INITIALIZER): Take additional argument large. Use it.
(hurd_ihash_init): Take additional argument large.
(hurd_ihash_buffer_size): Likewise.
(hurd_ihash_init_with_buffer): Likewise.
(hurd_ihash_create): Likewise.
(hurd_ihash_replace): Change key's type to hurd_ihash_key64_t.
(hurd_ihash_add): Likewise.
(hurd_ihash_find): Likewise.
(hurd_ihash_remove): Likewise.
(HURD_IHASH_ITERATE): Rewrite to properly handle both 32- and
64-bit keys.
* ihash.c (ITEM): New macro.
(VALUE): Likewise.
(KEY): Likewise.
(ITEM_SIZE): Likewise.
(index_empty): Use the above macros rather than accessing
HT->ITEMS directly.
(index_valid): Likewise and change key's type to a
hurd_ihash_key64_t.
(find_index): Likewise.
(replace_one): Likewise.
(hurd_ihash_replace): Likewise.
(hurd_ihash_find): Likewise.
(hurd_ihash_remove): Likewise.
(hurd_ihash_init_internal): Take additional argument large. Use
it.
(hurd_ihash_init): Likewise.
(hurd_ihash_init_with_buffer): Likewise.
(hurd_ihash_create): Likewise.
(hurd_ihash_buffer_size): Likewise.
* t-ihash.c: Include <assert.h>.
(main): Expect that TEST_LARGE is defined. Use it when calling
hurd_ihash_init. If true, add some tests with 64-bit keys.
* Makefile.am (TESTS): Add t-ihash64.
(check_PROGRAMS): Likewise.
(t_ihash_CPPFLAGS): Add -DTEST_LARGE=false.
(t_ihash64_SOURCES): New variable.
(t_ihash64_CPPFLAGS): Likewise.
viengoos/
2008-02-08 Neal H. Walfield <neal@gnu.org>
* thread.c (thread_init): Update use of
hurd_ihash_init_with_buffer to be consistent with new API.
* object.c (object_init): Likewise.
libpthread/
2008-02-08 Neal H. Walfield <neal@gnu.org>
* sysdeps/hurd/pt-setspecific.c (pthread_setspecific): Update use
of hurd_ihash_create to be consistent with API changes.
|
|
2008-01-23 Neal H. Walfield <neal@gnu.org>
* Makefile.am (AM_CPPFLAGS): Add -I$(LIBC)/include.
libhurd-slab/
2008-01-23 Neal H. Walfield <neal@gnu.org>
* Makefile.am (AM_CPPFLAGS): Add -I$(LIBC)/include.
libhurd-mm/
2008-01-23 Neal H. Walfield <neal@gnu.org>
* Makefile.am (COMMON_CPPFLAGS): Add -I$(LIBC)/include.
libhurd-ihash/
2008-01-23 Neal H. Walfield <neal@gnu.org>
* Makefile.am (AM_CPPFLAGS): Add -I$(LIBC)/include.
ruth/
2008-01-23 Neal H. Walfield <neal@gnu.org>
* Makefile.am (COMMON_CPPFLAGS): Add -I$(LIBC)/include.
(ruth_SOURCES): Remove malloc-wrap.c, output.h and output.c.
(ruth_LDADD): Set to $(top_builddir)/libc.a.
* panic.c: Don't include "output.h". Include <stdio.h>.
* ruth.h: Likewise.
* ruth.c (getpagesize): Return a size_t, not an int.
|
|
* sysdeps/l4/hurd/pt-block.c: New file.
* sysdeps/l4/hurd/pt-wakeup.c: Likewise.
|
|
* sysdeps/generic/pt-mutex-timedlock.c
(__pthread_mutex_timedlock_internal): Add additional asserts.
[! NDEBUG]: Keep MUTEX->OWNER up to date.
* sysdeps/generic/pt-mutex-trylock.c (__pthread_mutex_trylock):
Add additional asserts.
[! NDEBUG]: Keep MUTEX->OWNER up to date.
* sysdeps/generic/pt-mutex-unlock.c (__pthread_mutex_unlock): Add
additional asserts.
[! NDEBUG]: Keep MUTEX->OWNER up to date.
|
|
* Makefile.am (AM_CPPFLAGS): Add "-std=gnu99 -Wall -g -O3".
* sysdeps/l4/pt-block.c (__pthread_block): Remove unused variable
err.
* pthread/pt-join.c (pthread_join): Cast argument to
pthread_cleanup_push to avoid warning.
|
|
2007-12-13 Neal H. Walfield <neal@gnu.org>
* exceptions.h (exception_page_cleanup): New declaration.
libhurd-mm/
2007-12-13 Neal H. Walfield <neal@gnu.org>
* exceptions.c (exception_frame_alloc): When allocating the first
frame, set EXCEPTION_PAGE->EXCEPTION_STACK_BOTTOM.
(exception_page_cleanup): New function.
* ia32-exception-entry.S (_exception_handler_end): Correctly
adjust the exception page's exception stack.
libpthread/
2007-12-13 Neal H. Walfield <neal@gnu.org>
* sysdeps/l4/hurd/pt-thread-halt.c: Include <hurd/exceptions.h>.
(__pthread_thread_halt): Call exception_page_cleanup.
|
|
* sysdeps/l4/pt-block.c (__pthread_block): Clear the acceptor.
Improve debugging output.
* sysdeps/l4/pt-wakeup.c (__pthread_wakeup): Load an empty message.
Improve debugging output.
|
|
2007-12-04 Neal H. Walfield <neal@gnu.org>
Remove exception threads. Replace with support for activations.
* thread.h (THREAD_SLOTS): Bump to 3.
(struct thread): Add field exception_page. Remove fields
have_exception and exception.
(thread_exregs): Take additional arguments exception_page and
exception_page_out. Update users.
(thread_raise_exception): New declaration.
* thread.c (THREAD_VERSION): Define.
(thread_init): Remove code related to the exception thread.
(thread_commission): Likewise.
(thread_decommission): Likewise.
(thread_exregs): Likewise. Take additional arguments
EXCEPTION_PAGE and EXCEPTION_PAGE_OUT. If CONTROL contains
HURD_EXREGS_GET_REGS and EXCEPTION_PAGE_OUT is not NULL, return a
capability to THREAD's exception page in *EXCEPTION_PAGE_OUT. If
CONTROL contains HURD_EXREGS_SET_EXCEPTION_PAGE, then set THREAD's
exception page to EXCEPTION_PAGE.
(thread_raise_exception): New function.
* server.c (server_loop): Remove code related to handling the
exception thread. Call thread_raise_exception to propagate
exception. Reimplement the exception_collect method. Update
implementation of the thread_exregs method to support the new
argument passing scheme. Add support for setting and retrieving
the exception page.
(REPLYW): Only clear MSG here.
* rm.h (exception_collect): Take an additional argument, the
principal.
* object.h (object_type): New function.
hurd/
2007-12-04 Neal H. Walfield <neal@gnu.org>
Remove exception threads. Replace with support for activations.
* thread.h: Include <l4/ipc.h>.
(struct exception_page): New structure.
(THREAD_EXCEPTION_PAGE_SLOT): Define.
(HURD_EXREGS_EXCEPTION_THREAD): Don't define.
(HURD_EXREGS_SET_EXCEPTION_PAGE): Define.
(HURD_EXREGS_SET_REGS): Update.
(hurd_exception_handler_t): New definition.
(struct hurd_thread_exregs_in): New structure.
(struct hurd_thread_exregs_out): New structure.
(thread_exregs): Replace the bulk of the arguments with struct
hurd_thread_exregs_in and struct hurd_thread_exregs_out. Update
users.
* exceptions.h (HURD_THREAD_MAIN_VERSION): Remove macro.
(HURD_THREAD_EXCEPTION_VERSION): Likewise.
(hurd_thread_is_exception_thread): Remove function.
(hurd_thread_is_main_thread): Likewise.
(hurd_exception_thread): Likewise.
(hurd_main_thread): Likewise.
(exception_handler_loop): Remove declaration.
(exception_handler): New declaration.
(exception_handler_entry): Likewise.
(exception_handler_end): Likewise.
libhurd-mm/
2007-12-04 Neal H. Walfield <neal@gnu.org>
Remove exception threads. Replace with support for activations.
* Makefile.am (ARCH_SOURCES): New variable.
[ARCH_IA32]: Add ia32-exception-entry.S.
(libhurd_mm_a_SOURCES): Add $(ARCH_SOURCES).
* ia32-exception-entry.S: New file.
* exceptions.c: Include <hurd/storage.h> and <hurd/thread.h>.
(ARG): Don't define.
(ARG64): Likewise.
(ARG_ADDR): Likewise.
(CHECK): Likewise.
(exception_handler_loop): Remove function.
(exception_fetch_exception): New function.
(exception_handler): New function.
(STACK_SIZE): Don't define.
(stack): Don't declare.
(exception_handler_init): Set up the thread's exception page.
libpthread/
2007-12-04 Neal H. Walfield <neal@gnu.org>
Remove exception threads. Replace with support for activations.
* sysdeps/l4/hurd/pt-sysdep.h (PTHREAD_SYSDEP_MEMBERS): Remove
fields exception_handler_stack and exception_handler_sp. Add
field exception_page.
* sysdeps/l4/hurd/pt-thread-alloc.c (__pthread_thread_alloc):
Allocate a page for THREAD->EXCEPTION_PAGE, not
THREAD->EXCEPTION_HANDLER_STACK.
* sysdeps/l4/hurd/ia32/pt-setup.c: Include <hurd/thread.h> and
<hurd/exceptions.h>.
(__pthread_setup): Remove code dealing with the exception thread.
Set up the exception page.
* sysdeps/l4/hurd/pt-thread-start.c (__pthread_thread_start):
Remove code dealing with the exception thread. Update to use new
rm_thread_exregs interface. Also set the thread's exception page.
* sysdeps/l4/hurd/pt-thread-halt.c (__pthread_thread_halt): Remove
code to dealing with the exception thread. Free the
THREAD->EXCEPTION_PAGE.
ruth/
2007-12-04 Neal H. Walfield <neal@gnu.org>
* ruth.c (main): Update to use new rm_thread_exregs interface.
|
|
* pthread/pt-internal.h (__pthread_startup): Add declaration.
* pthread/pt-create.c (entry_point): Call __pthread_startup.
* sysdeps/l4/hurd/pt-sysdep.h: Include <hurd/storage.h> and
<sys/mman.h>.
(PTHREAD_SYSDEP_MEMBERS): Add fields object,
exception_handler_stack and exception_handler_sp.
(__attribute__): Call munmap.
* sysdeps/l4/hurd/ia32/pt-setup.c (__pthread_setup): Set up
thread->exception_handler_sp. Don't set the user define handle
here.
* sysdeps/l4/hurd/pt-startup.c: New file. Do it here.
* sysdeps/l4/hurd/pt-thread-alloc.c: New file.
* sysdeps/l4/hurd/pt-thread-halt.c: New file.
* sysdeps/l4/hurd/pt-thread-start.c: New file.
* Makefile.am (libpthread_a_SOURCES): Add pt-startup.c.
* sysdeps/l4/pt-block.c: Include <hurd/stddef.h>.
(__pthread_block): Detect IPC failure. Add debugging output.
* sysdeps/l4/pt-wakeup.c: Include <hurd/stddef.h>.
(__pthread_wakeup): Detect IPC failure. Add debugging output.
|
|
* sysdeps/l4/pt-thread-dealloc.c: New file.
* Makefile.am (libpthread_a_SOURCES): Add pt-thread-dealloc.c.
* sysdeps/l4/hurd/pt-sysdep.h (PTHREAD_STACK_DEFAULT): Change to
2MB.
* sysdeps/l4/hurd/pt-sysdep.c (sched_yield): New function.
(sigprocmask): Likewise.
(init_routine): Only call __pthread_initialize once. Update
comments.
|
|
* Makefile.am (libpthread_a_SOURCES): Remove pt-create-np.c.
* sysdeps/l4/pt-create-np.c: Remove file.
* sysdeps/l4/pt-pool-np.c (pthread_pool_add_np): Change tid from
an _L4_thread_id_t to an l4_thread_id_t.
(pthread_pool_get_np): Return an l4_thread_id_t, not a
_L4_thread_id_t.
* sysdeps/l4/bits/pthread-np.h (pthread_create_from_l4_tid_np):
Remove declaration.
(pthread_pool_add_np): Change tid from an _L4_thread_id_t to an
l4_thread_id_t.
(pthread_pool_get_np): Return an l4_thread_id_t, not a
_L4_thread_id_t.
* sysdeps/l4/pt-docancel.c (__pthread_do_cancel): Implement for
the case that the target thread is not the executing thread.
* sysdeps/l4/pt-thread-alloc.c (__pthread_thread_alloc): Return
EAGAIN if pthread_pool_get_np does not return a thread. Update
comments.
* sysdeps/l4/pt-thread-start.c (__pthread_thread_start): Don't set
the thread's pager. Assert that if this is the first thread, then
THREAD->THREADID is designates the running thread.
* sysdeps/l4/pt-timedblock.c (__pthread_timedblock): Add warning
about incomplete implementation.
* Makefile.am (libpthread_a_SOURCES): Remove pt-thread-init.c.
* sysdeps/l4/pt-thread-init.c: Remove dead file.
* sysdeps/l4/pt-start.c: Remove dead file.
|
|
Merge changes from mainline Hurd. Update L4 bits to compile with
those changes.
* sysdeps/l4/pt-block.c (__pthread_block): Call l4_receive, not
L4_Receive.
* sysdeps/l4/pt-create-np.c (pthread_create_from_l4_tid_np): Don't
pass TID to __pthread_create_internal. Emit a warning.
* sysdeps/l4/pt-stack-alloc.c (allocate_page): Remove function.
(__pthread_stack_alloc): Don't require that STACKSIZE is equal to
__pthread_stacksize. Call mmap.
* sysdeps/l4/pt-thread-halt.c (__pthread_thread_halt): Take
additional argument, need_dealloc. Call __pthread_dealloc. Stop
the thread.
* sysdeps/l4/hurd/pt-sysdep.c (init_routine): When calling
__pthread_create_internal, don't pass the tid.
* tests/test-1.c (main): Use pthread_mutex_init, not
PTHREAD_MUTEX_INITIALIZER.
* pthread/pt-alloc.c: Don't include <bits/atomic.h>. Include
<atomic.h>.
(__pthread_free_threads): Make it an atomicptr_t, not an
__atomicptr_t.
(__pthread_alloc): Don't use __atomicptr_compare_and_swap, use
atomic_compare_and_exchange_val_acq.
* pthread/pt-create.c: Don't include <bits/atomic.h>. Include
<atomic.h>.
(__pthread_total): Make it an atomic_fast32_t, not an __atomic_t.
(__pthread_create_internal): Use atomic_increment and
atomic_decrement, not __atomic_inc and __atomic_dec.
* pthread/pt-dealloc.c: Don't include <bits/atomic.h>. Include
<atomic.h>.
(__pthread_free_threads): Make it an atomicptr_t, not an
__atomicptr_t.
(__pthread_dealloc): Use atomic_compare_and_exchange_val_acq, not
__atomicptr_compare_and_swap.
* pthread/pt-exit.c: Don't include <bits/atomic.h>. Include
<atomic.h>.
(pthread_exit): Use atomic_decrement_and_test, not
__atomic_dec_and_test.
* pthread/pt-internal.h: Don't include <bits/atomic.h>. Include
<atomic.h>.
(__pthread_total): Make it an atomic_fast32_t, not an __atomic_t.
* sysdeps/powerpc/bits/atomic.h: Remove file.
* sysdeps/ia32/bits/atomic.h: Likewise.
|
|
* sysdeps/l4/bits/pthread-np.h (pthread_create_from_l4_tid_np):
Don't require the GNU interface: use _L4_thread_id_t, not
l4_thread_id_t.
(pthread_pool_add_np): Likewise.
(pthread_pool_get_np): Likewise.
* sysdeps/l4/pt-create-np.c (pthread_create_from_l4_tid_np): Likewise.
* sysdeps/l4/pt-pool-np.c (pool_list): Likewise.
(pthread_pool_add_np): Likewise.
(pthread_pool_get_np): Likewise.
|
|
2005-02-08 Neal H. Walfield <neal@gnu.org>
* sysdeps/posix/pt-spin.c (__pthread_spin_lock): Make a weak alias
to _pthread_spin_lock.
* sysdeps/l4/hurd/pt-sysdep.h (_pthread_self): Add
__always_inline__ attribute.
(__pthread_stack_dealloc): Likewise.
|
|
2005-01-12 Neal H. Walfield <neal@gnu.org>
* assert.h: Include prototype for printf.
(assert) [!NDEBUG]: Rewrite to do something useful.
libhurd-cap-server/
2005-01-12 Neal H. Walfield <neal@gnu.org>
* class-init.c (hurd_cap_class_init_untyped): Fix assert.
* bucket-manage-mt.c (manage_mt_worker): Likewise.
libpthread/
2005-01-12 Neal H. Walfield <neal@gnu.org>
* sysdeps/l4/pt-thread-alloc.c: Replace assert with a compile time
warning.
* sysdeps/l4/hurd/pt-sigstate.c (__pthread_sigstate): Don't return
EINVAL. Pretend to work so the generic code is happy.
|
|
* sysdeps/generic/bits/condition.h (__PTHREAD_COND_INITIALIZER):
Remove compound statement.
* pthread/pt-alloc.c (initialize_pthread): Use compound statement.
* sysdeps/generic/pt-cond-init.c (pthread_cond_init): Likewise.
|
|
* pthread/pt-create.c (__pthread_total): Change type to uatomic32_t.
* pthread/pt-internal.h (__pthread_total): Likewise in declaration.
|
|
* pthread/pt-internal.h: Include <atomic.h>, not <bits/atomic.h>.
(__pthread_total): Change type of declaration to uatomic_max_t.
* pthread/pt-alloc.c: Include <atomic.h>, not <bits/atomic.h>.
(__pthread_free_threads): Change type to uatomicptr_t.
(__pthread_alloc): Call atomic_compare_and_exchange_val_acq
instead of __atomicptr_compare_and_swap.
* pthread/pt-create.c: Include <atomic.h>, not <bits/atomic.h>.
(__pthread_total): Change type to uatomic_max_t.
(__pthread_create_internal): Call atomic_increment, not
__atomic_inc and atomic_decrement, not __atomic_dec.
* pthread/pt-dealloc.c: Include <atomic.h>, not <bits/atomic.h>.
(__pthread_free_threads): Declare as uatomicptr_t.
(__pthread_dealloc): Call atomic_compare_and_exchange_val_acq
instead of __atomicptr_compare_and_swap.
* pthread/pt-exit.c: Include <atomic.h>, not <bits/atomic.h>.
(pthread_exit): Call atomic_decrement_and_test instead of
__atomic_dec_and_test.
* sysdeps/l4/pt-create-np.c: Do not include <bits/atomic.h>.
|
|
|
|
* platform: New directory.
* configure.ac (AC_CONFIG_FILES): Add platform/alpha/Makefile,
platform/amd64/Makefile, platform/ia32/Makefile,
platform/ia64/Makefile, platform/powerpc/Makefile,
platform/powerpc64/Makefile and platform/Makefile.
* Makefile.am (SUBDIRS): Add platform.
libpthread/
2004-10-29 Marcus Brinkmann <marcus@gnu.org>
* headers.am (AC_CONFIG_LINKS): Remove include/bits/atomic.h.
platform/
2004-10-29 Marcus Brinkmann <marcus@gnu.org>
* Initial commit.
|
|
* sysdeps/generic/bits/mutex.h (__PTHREAD_MUTEX_INITIALIZER):
Remove compound statement.
(pthread_mutex_init): Use compound statement with initializer.
* pthread/pt-alloc.c (initialize_pthread): Likewise.
* sysdeps/generic/pt-mutex-init.c (_pthread_mutex_init): Likewise.
|
|
|
|
* sysdeps/l4/bits/pthread-np.h (pthread_pool_add_np,
pthread_pool_get_np): New prototypes.
* sysdeps/l4/pt-pool-np.c: New file.
* Makefile.am (libpthread_a_SOURCES): Add pt-pool-np.c.
* sysdeps/l4/pt-thread-alloc.c (__pthread_thread_alloc): Try to
allocate thread from pool.
* sysdeps/l4/pt-thread-halt.c (__pthread_thread_halt): Add thread
to pool after stopping it.
|
|
|
|
* sysdeps/l4/pt-thread-start.c (__pthread_thread_start): Use L4
convenience interface.
|
|
* sysdeps/l4/pt-spin.c (_pthread_spin_lock): Implement using new
time period interface.
|
|
* libpthread: New directory, populated with Neal H. Walfields
pthread implementation.
|
|
* sysdeps/generic/bits/mutex.h (pthread_mutex_init)
(pthread_mutex_destroy, __pthread_mutex_lock, __pthread_mutex_trylock)
(pthread_mutex_lock, pthread_mutex_trylock): Remove inline
definitions.
* sysdeps/generic/bits/rwlock.h (pthread_rwlock_init)
(pthread_rwlock_destroy): Likewise.
|
|
* include/semaphore.h (sem_timedwait): Declare only if __USE_XOPEN2K
is defined.
* include/pthread/pthread.h (pthread_attr_getstack)
(pthread_attr_setstack, pthread_mutex_timedlock)
(pthread_condattr_getclock, pthread_condattr_setclock)
(pthread_rwlock_timedrdlock, pthread_rwlock_timedwrlock)
(pthread_barrierattr_t, pthread_barrierattr_init)
(pthread_barrierattr_destroy, pthread_barrierattr_getpshared)
(pthread_barrierattr_setpshared, pthread_barrier_t)
(PTHREAD_BARRIER_SERIAL_THREAD, pthread_barrier_init)
(pthread_barrier_destroy, pthread_barrier_wait)
(pthread_getcpuclockid): Declare only if __USE_XOPEN2K is defined.
(pthread_mutexattr_getprioceiling, pthread_mutexattr_setprioceiling)
(pthread_mutexattr_getprotocol, pthread_mutexattr_setprotocol)
(pthread_mutexattr_gettype, pthread_mutexattr_settype)
(pthread_mutex_getprioceiling, pthread_mutex_setprioceiling)
(pthread_setconcurrency, pthread_getconcurrency): Declare only if
__USE_UNIX98 is defined.
(pthread_rwlockattr_t, pthread_rwlockattr_init)
(pthread_rwlockattr_destroy, pthread_rwlockattr_getpshared)
(pthread_rwlockattr_setpshared, pthread_rwlock_t, pthread_rwlock_init)
(pthread_rwlock_destroy, pthread_rwlock_rdlock)
(pthread_rwlock_tryrdlock, pthread_rwlock_wrlock)
(pthread_rwlock_trywrlock, pthread_rwlock_unlock): Declare only if
__USE_UNIX98 or __USE_XOPEN2K are defined.
(PTHREAD_PRIO_NONE, PTHREAD_PRIO_INHERIT, PTHREAD_PRIO_PROTECT)
(PTHREAD_MUTEX_NORMAL, PTHREAD_MUTEX_ERRORCHECK)
(PTHREAD_MUTEX_RECURSIVE, PTHREAD_MUTEX_DEFAULT):
Define only if __USE_UNIX98 is defined.
(PTHREAD_MUTEX_FAST_NP): Define for compatibility when __USE_GNU is
defined.
* sysdeps/generic/bits/rwlock.h (pthread_rwlock_init)
(pthread_rwlock_destroy): Declare only if __USE_UNIX98 or
__USE_XOPEN2K are defined.
* TODO: Drop that TODO item.
|
|
* libpthread/include/pthread/pthread.h: Add the restrict keyword where
appropriate for full compliance.
* libpthread/pthread/pt-internal.h: Likewise.
* libpthread/sysdeps/generic/bits/mutex.h: Likewise.
* libpthread/sysdeps/generic/bits/rwlock.h: Likewise.
* libpthread/TODO: Drop that TODO item.
|
|
* libpthread/sysdeps/i386/machine-sp.h (thread_stack_pointer):
Optimize esp read.
* libpthread/i386/cthreads.h (cthread_sp): Likewise.
|
|
Do not let other libraries (like libX11) override libpthread's
pthread_mutex_*, pthread_rwlock_* and sem_* dynamic symbols.
* libpthread/sysdeps/generic/pt-mutex-destroy.c
(pthread_mutex_destroy): Make the alias strong.
* libpthread/sysdeps/generic/pt-mutex-init.c
(pthread_mutex_init): Likewise.
* libpthread/sysdeps/generic/pt-mutex-lock.c
(_pthread_mutex_lock, pthread_mutex_lock): Likewise.
* libpthread/sysdeps/generic/pt-mutex-trylock.c
(_pthread_mutex_trylock, pthread_mutex_trylock): Likewise.
* libpthread/sysdeps/generic/pt-mutex-unlock.c
(_pthread_mutex_lock, pthread_mutex_unlock): Likewise.
* libpthread/sysdeps/generic/pt-rwlock-destroy.c
(pthread_rwlock_destroy): Likewise.
* libpthread/sysdeps/generic/pt-rwlock-init.c
(pthread_rwlock_init): Likewise.
* libpthread/sysdeps/generic/sem-destroy.c (sem_destroy): Likewise.
* libpthread/sysdeps/generic/sem-getvalue.c (sem_getvalue): Likewise.
* libpthread/sysdeps/generic/sem-init.c (sem_init): Likewise.
* libpthread/sysdeps/generic/sem-open.c (sem_open): Likewise.
* libpthread/sysdeps/generic/sem-post.c (sem_post): Likewise.
* libpthread/sysdeps/generic/sem-timedwait.c (sem_timedwait): Likewise.
* libpthread/sysdeps/generic/sem-trywait.c (sem_trywait): Likewise.
* libpthread/sysdeps/generic/sem-unlink.c (sem_unlink): Likewise.
* libpthread/sysdeps/generic/sem-wait.c (sem_wait): Likewise.
|
|
2005-05-12 Neal H. Walfield <neal@gnu.org>
* include/pthread/pthread.h (pthread_exit): Add noreturn
attribute.
* sysdeps/generic/bits/condition.h (__PTHREAD_COND_INITIALIZER):
Don't create a compound literal.
* sysdeps/generic/bits/mutex.h (__PTHREAD_MUTEX_INITIALIZER):
Don't create a compound literal.
(pthread_mutex_init): Don't assign to *__MUTEX directly.
Initialize an intermediate local variable and then copy the
result.
* sysdeps/generic/bits/rwlock.h (__PTHREAD_RWLOCK_INITIALIZER):
Don't create a compound literal.
(pthread_rwlock_init): Don't assign to *__RWLOCK directly.
Initialize an intermediate local variable and then copy the
result.
* sysdeps/i386/bits/spin-lock.h (__SPIN_LOCK_INITIALIZER):
Don't create a compound literal.
* pthread/pt-alloc.c (initialize_pthread): Cast
PTHREAD_MUTEX_INITIALIZER and PTHREAD_COND_INITIALIZER to create a
compound literal.
* tests/test-1.c (main): Use pthread_mutex_init, not
PTHREAD_MUTEX_INIT for mutex initialization
* sysdeps/generic/pt-barrier-init.c (pthread_barrier_init): Remove
assert. Copy ATTR if non-defaults are used.
* sysdeps/generic/pt-cond-init.c (pthread_cond_init): Include
<string.h>. Remove assert. Copy ATTR if non-defaults are used.
* sysdeps/generic/pt-mutex-init.c (_pthread_mutex_init): Cast
PTHREAD_MUTEX_INITIALIZER to create a compound literal.
* sysdeps/generic/pt-rwlock-init.c: Include <string.h>.
(_pthread_rwlock_init): Cast __PTHREAD_RWLOCK_INITIALIZER to
create a compound literal. Copy ATTR if non-defaults are used.
* sysdeps/generic/pt-cond-timedwait.c
(__pthread_cond_timedwait_internal): Check that ABSTIME->TV_NSEC
is valid. Don't shadow ERR. Don't return before cleaning up.
* sysdeps/generic/pt-mutex-timedlock.c (pthread_mutex_timedlock):
Move after __pthread_mutex_timedlock_internal. Check that
ABSTIME->TV_NSEC is valid.
* sysdeps/generic/pt-rwlock-timedrdlock.c
(pthread_rwlock_timedrdlock): Move after.
__pthread_rwlock_timedrdlock_internal.
(__pthread_rwlock_timedrdlock_internal): Check that
ABSTIME->TV_NSEC is valid.
* sysdeps/generic/pt-rwlock-timedwrlock.c
(pthread_rwlock_timedwrlock): Move after
__pthread_rwlock_timedwrlock_internal.
(__pthread_rwlock_timedwrlock_internal): Check that
ABSTIME->TV_NSEC is valid.
* sysdeps/generic/sem-timedwait.c (__sem_timedwait_internal):
Check that TIMEOUT->TV_NSEC is valid before enqueuing the thread.
* sysdeps/generic/pt-rwlock-rdlock.c
(__pthread_rwlock_timedrdlock_internal): Fix declaration.
* sysdeps/generic/pt-mutex-trylock.c (__pthread_mutex_trylock):
Don't return EDEADLK. POSIX does not allow it.
* sysdeps/mach/pt-timedblock.c (__pthread_timedblock): Calculate
the relative timeout without overflowing.
* sysdeps/mach/hurd/i386/pt-setup.c (stack_setup): Cast THREAD.
|
|
2005-05-12 Neal H. Walfield <neal@gnu.org>
* Makefile (SRCS): Add sem-close.c sem-destroy.c sem-getvalue.c
sem-init.c sem-open.c sem-post.c sem-timedwait.c sem-trywait.c
sem-unlink.c and sem-wait.c.
(sysdeps_headers): Add semaphore.h bits/semaphore.h.
* include/semaphore.h: New file.
* sysdeps/generic/sem-close.c: New file.
* sysdeps/generic/sem-destroy.c: New file.
* sysdeps/generic/sem-getvalue.c: New file.
* sysdeps/generic/sem-init.c: New file.
* sysdeps/generic/sem-open.c: New file.
* sysdeps/generic/sem-post.c: New file.
* sysdeps/generic/sem-timedwait.c: New file.
* sysdeps/generic/sem-trywait.c: New file.
* sysdeps/generic/sem-unlink.c: New file.
* sysdeps/generic/sem-wait.c: New file.
* sysdeps/generic/bits/semaphore.h: New file.
|
|
2005-05-04 Neal H. Walfield <neal@gnu.org>
* Makefile (SRCS): Add pt-thread_dealloc.c.
* sysdeps/mach/pt-thread-dealloc.c: New file.
* pthread/pt-internal.h (__pthread_thread_dealloc): New
declaration.
(__pthread_thread_halt): Add parameter NEED_DEALLOC. Update
callers.
* sysdeps/mach/pt-thread-halt.c (__pthread_thread_halt): Respect
new NEED_DEALLOC parameter. Move code which deallocates kernel
resources from here ...
* sysdeps/mach/pt-thread-dealloc.c (__pthread_thread_dealloc):
...to here.
* pthread/pt-create.c (__pthread_create_internal): Call
__pthread_thread_dealloc on failure.
* pthread/pt-exit.c (pthread_exit): Call __pthread_thread_dealloc.
* sysdeps/mach/pt-thread-alloc.c (create_wakeupmsg): Call
__mach_port_destroy to deallocate the receive right.
__mach_port_deallocate won't do it.
* pthread/pt-detach.c (pthread_detach): Don't call
__pthread_thread_halt a second time.
* sysdeps/mach/hurd/pt-sysdep.c (_cthread_init_routine): Fix
declaration.
(init_routine): Update declaration and remove gratuitous cast.
|
|
2005-05-02 Neal H. Walfield <neal@gnu.org>
* pthread/pt-alloc.c (__pthread_alloc): Set the thread id to the
table index plus one.
* pthread/pt-internal.h (__pthread_getid): Index __pthread_threads
using THREAD - 1, not THREAD.
(__pthread_setid): Likewise.
* pthread/pt-create.c (__pthread_create_internal): Likewise.
* sysdeps/generic/pt-mutex-trylock.c (__pthread_mutex_trylock):
When returning EBUSY, don't forget to first unlock MUTEX->__HELD.
|
|
2005-04-20 Neal H. Walfield <neal@gnu.org>
* sysdeps/generic/pt-setschedparam.c: policy's type is int, not
int *.
* include/pthread/pthread.h: Likewise.
Reported by Christopher `Physicman' Bodenstein <cb@physicman.net>.
|
|
2005-02-08 Neal H. Walfield <neal@gnu.org>
* sysdeps/mach/pt-spin.c (__pthread_spin_lock): Make a weak alias
to _pthread_spin_lock.
* sysdeps/posix/pt-spin.c (__pthread_spin_lock): Likewise.
|
|
2005-01-18 Neal H. Walfield <neal@gnu.org>
* sysdeps/mach/hurd/pt-sysdep.h (__pthread_stack_dealloc): Add
__always_inline__ attribute.
* sysdeps/l4/hurd/pt-sysdep.h (_pthread_self): Likewise.
(__attribute__): Likewise.
|
|
2005-01-12 Pietro Ferrari <pietro@bastardi.net>
* include/pthread/pthread.h (pthread_spin_destroy): Replace extern
inline with extern __inline.
(pthread_spin_init): Likewise.
(pthread_spin_lock): Likewise.
(pthread_spin_trylock): Likewise.
(pthread_spin_unlock): Likewise.
* sysdeps/mach/bits/spin-lock.h (__pthread_spin_lock): Likewise.
* sysdeps/i386/bits/spin-lock.h (__pthread_spin_lock): Likewise.
* sysdeps/generic/bits/mutex.h (__pthread_mutex_trylock):
Likewise.
(pthread_mutex_lock): Likewise.
(pthread_mutex_trylock): Likewise.
* sysdeps/generic/bits/pthread.h (pthread_equal): Likewise.
|
|
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* auth.c: Include <stddef.h>.
(pending_users, pending_server): Change type to struct hurd_ihash,
initialize with HURD_IHASH_INITIALIZER.
(struct pending): Change type of member LOCP to hurd_ihash_locp_t.
(S_auth_user_authenticate): Use hurd_ihash_* functions instead
ihash_*.
(S_auth_server_authenticate): Likewise.
(main): Do not allocate the hash tables.
console-client/
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* vga-dynafont.c: Include <stddef.h>.
(struct mapped_character): Change type of LOCP to
hurd_ihash_locp_t.
(struct dynafont): Change type of CHARMAP to struct hurd_ihash.
(dynafont_new): Use hurd_ihash_init instead of ihash_create.
Remove variable ERR. Call hurd_ihash_add instead of ihash_add.
(dynafont_free): Call hurd_ihash_destroy, no ihash_free.
(dynafont_lookup_internal): Use hurd_ihash_find, not ihash_find.
(dynafont_lookup_internal): Call hurd_ihash_locp_remove instead
ihash_locp_remove, and hurd_ihash_add instead ihash_add.
(dynafont_change_font): Likewise. Clean out LOCP if character is
unmapped.
ftpfs/
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* ftpfs.h: Include <hurd/ihash.h>.
(struct ftpfs): Change type of INODE_MAPPINGS to struct
hurd_ihash.
(struct ftpfs_dir_entry): Change type of INODE_LOCP to
hurd_ihash_locp_t.
* node.c (ftpfs_create_node): Call hurd_ihash_add, not ihash_add.
(netfs_node_norefs): Call hurd_ihash_locp_remove, not
ihash_locp_remove.
* fs.c: Include <stddef.h>.
(ftpfs_create): Call hurd_ihash_init, not hurd_ihash_create.
Call hurd_ihash_destroy on error.
libihash/
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* ihash.c: Rewritten.
* ihash.h: Rewritten.
* Makefile (SRCS): Remove sizes.c.
(LCLHDRS): Remove priv.h.
* primes.c, sizes.c, priv.h: Files removed.
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* ports.h (struct port_bucket): Change type of HTABLE to struct
hurd_ihash.
(struct port_info): Change type of HENTRY to hurd_ihash_locp_t.
* lookup-port.c (ports_lookup_port): Use hurd_ihash_find instead
ihash_find.
* bucket-iterate.c (_ports_bucket_class_iterate): Use
HURD_IHASH_ITERATE instead ihash_iterate.
* inhibit-all-rpcs.c (ports_inhibit_all_rpcs): Likewise.
* inhibit-bucket-rpcs.c (ports_inhibit_bucket_rpcs): Likewise.
* create-internal.c (_ports_create_port_internal): Use
hurd_ihash_add instead ihash_add.
* import-port.c (ports_import_port): Likewise.
* reallocate-from-external.c (ports_reallocate_from_external):
Likewise.
* reallocate-port.c (ports_reallocate_port): Likewise.
* transfer-right.c (ports_transfer_right): Likewise.
* create-bucket.c: Include <stddef.h>.
(ports_create_bucket): Use hurd_ihash_init instead hurd_ihash_create.
* class-iterate.c: Do not include <hurd/ihash.h>.
* claim-right.c (ports_claim_right): Call hurd_ihash_locp_remove
instead ihash_locp_remove.
* complete-deallocate.c (_ports_complete_deallocate): Likewise.
* destroy-right.c (ports_destroy_right): Likewise.
* reallocate-from-external.c (ports_reallocate_from_external):
Likewise.
* reallocate-port.c (ports_reallocate_port): Likewise.
* transfer-right.c (ports_transfer_right): Likewise.
libps/
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* ps.h (struct ps_context): Change type of members procs, ttys,
ttys_by_cttyid and users to struct hurd_ihash.
* context.c (ps_context_create): Remove variables err_procs,
err_ttys, err_ttys_by_cttyid and err_users. Use hurd_ihash_init
instead of ihash_create. Call hurd_ihash_set_cleanup and the
hurd_ihash_cleanup_t type instead of ihash_set_cleanup.
(ps_context_free): Call hurd_ihash_destroy instead of ihash_free.
(lookup): Call hurd_ihash_find instead ihash_find, hurd_ihash_add
instead ihash_add.
(ps_context_find_proc_stat): Take pointer of hash object.
(ps_context_find_tty): Likewise.
(ps_context_find_tty_by_cttyid): Likewise.
(ps_context_find_user): Likewise.
libpthread/
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* sysdeps/hurd/pt-key.h (PTHREAD_KEY_MEMBERS): Change type of
THREAD_SPECIFICS to hurd_ihash_t.
* sysdeps/hurd/pt-setspecific.c (pthread_setspecific): Call
hurd_ihash_create instead ihash_create, and hurd_ihash_add instead
ihash_add.
* sysdeps/hurd/pt-getspecific.c (pthread_getspecific): Call
hurd_ihash_find instead of ihash_find.
* sysdeps/hurd/pt-destroy-specific.c (__pthread_destroy_specific):
Call hurd_ihash_find instead of ihash_find, hurd_ihash_remove
instead of ihash_remove, and hurd_ihash_free instead of
ihash_free.
proc/
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* proc.h: Include <hurd/ihash.h>.
(struct proc): Change type of members p_pidhashloc and
p_taskhashloc to hurd_ihash_locp_t.
(struct pgrp): Likewise for pg_hashloc.
(struct session): Likewise for s_hashloc.
* hash.c: Change type of pghash, pidhash, taskhash and sidhash to
struct hurd_ihash and initialize them with HURD_IHASH_INITIALIZER.
Include stddef.h.
(pid_find): Call hurd_ihash_find instead ihash_find.
(pid_find_allow_zombie): Likewise.
(task_find): Likewise.
(task_find_nocreate): Likewise.
(pgrp_find): Likewise.
(session_find): Likewise.
(add_proc_to_hash): Call hurd_ihash_add instead ihash_add.
(add_pgrp_to_hash): Likewise.
(add_session_to_hash): Likewise.
(remove_pgrp_from_hash): Call hurd_ihash_locp_remove instead
ihash_locp_remove, and provide hash table pointer.
(remove_proc_from_hash): Likewise.
(remove_session_from_hash): Likewise.
(prociterate): Use HURD_IHASH_ITERATE instead ihash_iterate.
trans/
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* fakeroot.c: Include <stddef.h>.
(struct netnode): Change type of member idport_locp
to hurd_ihash_locp_t.
(idport_ihash): Change type to struct hurd_ihash and initialize
with HURD_IHASH_INITIALIZER.
(new_node): Call hurd_ihash_add instead of ihash_add.
(netfs_node_norefs): Call hrd_ihash_locp_remove instead
ihash_locp_remove.
(netfs_S_dir_lookup): Call hurd_ihash_find instead ihash_find.
utils/
2003-08-17 Marcus Brinkmann <marcus@gnu.org>
* rpctrace.c: Include <stddef.h>.
(struct traced_info): Change type of LOCP to hurd_ihash_locp_t.
(msgid_ihash): Change type to struct hurd_ihash, and initialize
with HURD_IHASH_INITIALIZER, don't set cleanup here.
(traced_names): Likewise.
(main): Call hurd_ihash_set_cleanup for msgid_ihash. Don't create
traced_names.
(parse_msgid_list): Call hurd_ihash_add instead ihash_add.
(new_send_wrapper): Likewise.
(msgid_info): Likewise. Call hurd_ihash_find instead ihash_find.
(rewrite_right): Likewise.
(traced_dropweak): Call hurd_ihash_locp_remove instead
ihash_locp_remove.
|
|
* pthread/pt-create.c [HAVE_USELOCAL]: Include <locale.h>.
(entry_point) [HAVE_USELOCALE]: Initialize the thread to the
global locale.
|
|
* sysdeps/mach/hurd/i386/pt-setup.c (__pthread_setup): Fix last
change.
|
|
* sysdeps/mach/pt-wakeup.c (__pthread_wakeup): Use the size of
THREAD->wakeupmsg which may not be a mach_msg_header_t.
* sysdeps/generic/pt-mutex-timedlock.c
(__pthread_mutex_timedlock_internal): Really test for equality.
* sysdeps/generic/pt-rwlock-timedrdlock.c
(__pthread_rwlock_timedrdlock_internal): Likewise.
* sysdeps/generic/pt-rwlock-timedwrlock.c
(__pthread_rwlock_timedwrlock_internal): Likewise.
* sysdeps/generic/pt-cond-timedwait.c
(__pthread_cond_timedwait_internal): On timeout, remove our thread
structure from the wait queue if necessary.
* sysdeps/l4/pt-start.c (__pthread_start): Call L4_Myself, not
__mach_thread_self.
* sysdeps/mach/hurd/i386/pt-setup.c: Include <mach.h>.
(__pthread_setup): Do not leak references from __mach_thread_self.
* sysdeps/mach/hurd/pt-docancel.c (__pthread_do_cancel): Likewise.
* sysdeps/mach/hurd/pt-sysdep.h (_pthread_self): Likewise.
* sysdeps/mach/pt-thread-alloc.c (__pthread_thread_alloc): Likewise.
* sysdeps/mach/pt-thread-start.c (__pthread_thread_start): Likewise.
* sysdeps/mach/pt-start.c: Remove dead file.
|
|
* sysdeps/generic/pt-key-delete.c, sysdeps/hurd/pt-key-delete.c
(pthread_key_delete): Renamed from pthread_key_destroy. Reported
by Michael Koch <konqueror@gmx.de>
|