Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 24 Jan 2001 05:03:44 -0800 (PST)
From:      Daniel Eischen <deischen@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/lib/libc_r Makefile src/lib/libc_r/uthread pthread_private.h uthread_accept.c uthread_aio_suspend.c uthread_attr_destroy.c uthread_attr_getdetachstate.c uthread_attr_getinheritsched.c uthread_attr_getschedparam.c uthread_attr_getschedpolicy.c uthread_attr_getscope.c ...
Message-ID:  <200101241303.f0OD3iN37215@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
deischen    2001/01/24 05:03:44 PST

  Modified files:
    lib/libc_r           Makefile 
    lib/libc_r/uthread   pthread_private.h uthread_accept.c 
                         uthread_aio_suspend.c 
                         uthread_attr_destroy.c 
                         uthread_attr_getdetachstate.c 
                         uthread_attr_getinheritsched.c 
                         uthread_attr_getschedparam.c 
                         uthread_attr_getschedpolicy.c 
                         uthread_attr_getscope.c 
                         uthread_attr_getstackaddr.c 
                         uthread_attr_getstacksize.c 
                         uthread_attr_init.c 
                         uthread_attr_setcreatesuspend_np.c 
                         uthread_attr_setdetachstate.c 
                         uthread_attr_setinheritsched.c 
                         uthread_attr_setprio.c 
                         uthread_attr_setschedparam.c 
                         uthread_attr_setschedpolicy.c 
                         uthread_attr_setscope.c 
                         uthread_attr_setstackaddr.c 
                         uthread_attr_setstacksize.c 
                         uthread_bind.c uthread_cancel.c 
                         uthread_clean.c uthread_close.c 
                         uthread_cond.c uthread_condattr_destroy.c 
                         uthread_condattr_init.c uthread_connect.c 
                         uthread_creat.c uthread_create.c 
                         uthread_detach.c uthread_dup.c 
                         uthread_dup2.c uthread_equal.c 
                         uthread_execve.c uthread_exit.c 
                         uthread_fchflags.c uthread_fchmod.c 
                         uthread_fchown.c uthread_fcntl.c 
                         uthread_fd.c uthread_file.c 
                         uthread_find_thread.c uthread_flock.c 
                         uthread_fork.c uthread_fpathconf.c 
                         uthread_fstat.c uthread_fstatfs.c 
                         uthread_fsync.c uthread_gc.c 
                         uthread_getdirentries.c 
                         uthread_getpeername.c uthread_getprio.c 
                         uthread_getschedparam.c 
                         uthread_getsockname.c 
                         uthread_getsockopt.c uthread_info.c 
                         uthread_init.c uthread_ioctl.c 
                         uthread_jmp.c uthread_join.c 
                         uthread_kern.c uthread_kevent.c 
                         uthread_kill.c uthread_listen.c 
                         uthread_mattr_init.c 
                         uthread_mattr_kind_np.c uthread_msync.c 
                         uthread_multi_np.c uthread_mutex.c 
                         uthread_mutex_prioceiling.c 
                         uthread_mutex_protocol.c 
                         uthread_mutexattr_destroy.c 
                         uthread_nanosleep.c uthread_once.c 
                         uthread_open.c uthread_pause.c 
                         uthread_pipe.c uthread_poll.c 
                         uthread_priority_queue.c uthread_read.c 
                         uthread_readv.c uthread_recvfrom.c 
                         uthread_recvmsg.c uthread_resume_np.c 
                         uthread_rwlock.c uthread_rwlockattr.c 
                         uthread_select.c uthread_self.c 
                         uthread_sem.c uthread_sendfile.c 
                         uthread_sendmsg.c uthread_sendto.c 
                         uthread_seterrno.c uthread_setprio.c 
                         uthread_setschedparam.c 
                         uthread_setsockopt.c uthread_shutdown.c 
                         uthread_sig.c uthread_sigaction.c 
                         uthread_sigblock.c uthread_sigmask.c 
                         uthread_signal.c uthread_sigpending.c 
                         uthread_sigprocmask.c 
                         uthread_sigsetmask.c uthread_sigsuspend.c 
                         uthread_sigwait.c uthread_single_np.c 
                         uthread_sleep.c uthread_socket.c 
                         uthread_socketpair.c uthread_spec.c 
                         uthread_spinlock.c uthread_suspend_np.c 
                         uthread_switch_np.c uthread_system.c 
                         uthread_tcdrain.c uthread_vfork.c 
                         uthread_wait.c uthread_wait4.c 
                         uthread_waitpid.c uthread_write.c 
                         uthread_writev.c uthread_yield.c 
  Log:
  Add weak definitions for wrapped system calls.  In general:
  
  	_foo - wrapped system call
  	foo - weak definition to _foo
  
  and for cancellation points:
  
  	_foo - wrapped system call
  	__foo - enter cancellation point, call _foo(), leave
  	        cancellation point
  	foo - weak definition to __foo
  
  Change use of global _thread_run to call a function to get the
  currently running thread.
  
  Make all pthread_foo functions weak definitions to _pthread_foo,
  where _pthread_foo is the implementation.  This allows an application
  to provide its own pthread functions.
  
  Provide slightly different versions of pthread_mutex_lock and
  pthread_mutex_init so that we can tell the difference between
  a libc mutex and an application mutex.  Threads holding mutexes
  internal to libc should never be allowed to exit, call signal
  handlers, or cancel.
  
  Approved by:	-arch
  
  Revision  Changes    Path
  1.30      +1 -18     src/lib/libc_r/Makefile
  1.50      +82 -141   src/lib/libc_r/uthread/pthread_private.h
  1.14      +11 -12    src/lib/libc_r/uthread/uthread_accept.c
  1.4       +5 -6      src/lib/libc_r/uthread/uthread_aio_suspend.c
  1.5       +5 -4      src/lib/libc_r/uthread/uthread_attr_destroy.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_getdetachstate.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_getinheritsched.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_getschedparam.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_getschedpolicy.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_getscope.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_getstackaddr.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_getstacksize.c
  1.5       +5 -4      src/lib/libc_r/uthread/uthread_attr_init.c
  1.4       +4 -4      src/lib/libc_r/uthread/uthread_attr_setcreatesuspend_np.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_setdetachstate.c
  1.4       +4 -4      src/lib/libc_r/uthread/uthread_attr_setinheritsched.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_setprio.c
  1.7       +4 -4      src/lib/libc_r/uthread/uthread_attr_setschedparam.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_setschedpolicy.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_setscope.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_attr_setstackaddr.c
  1.6       +4 -4      src/lib/libc_r/uthread/uthread_attr_setstacksize.c
  1.10      +4 -6      src/lib/libc_r/uthread/uthread_bind.c
  1.6       +36 -21    src/lib/libc_r/uthread/uthread_cancel.c
  1.5       +12 -9     src/lib/libc_r/uthread/uthread_clean.c
  1.11      +8 -8      src/lib/libc_r/uthread/uthread_close.c
  1.30      +40 -32    src/lib/libc_r/uthread/uthread_cond.c
  1.5       +5 -4      src/lib/libc_r/uthread/uthread_condattr_destroy.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_condattr_init.c
  1.11      +8 -9      src/lib/libc_r/uthread/uthread_connect.c
  1.3       +4 -4      src/lib/libc_r/uthread/uthread_creat.c
  1.28      +12 -9     src/lib/libc_r/uthread/uthread_create.c
  1.14      +4 -4      src/lib/libc_r/uthread/uthread_detach.c
  1.9       +5 -7      src/lib/libc_r/uthread/uthread_dup.c
  1.10      +5 -7      src/lib/libc_r/uthread/uthread_dup2.c
  1.4       +4 -4      src/lib/libc_r/uthread/uthread_equal.c
  1.13      +11 -12    src/lib/libc_r/uthread/uthread_execve.c
  1.19      +34 -32    src/lib/libc_r/uthread/uthread_exit.c
  1.5       +3 -6      src/lib/libc_r/uthread/uthread_fchflags.c
  1.9       +4 -6      src/lib/libc_r/uthread/uthread_fchmod.c
  1.9       +4 -6      src/lib/libc_r/uthread/uthread_fchown.c
  1.13      +11 -11    src/lib/libc_r/uthread/uthread_fcntl.c
  1.18      +57 -55    src/lib/libc_r/uthread/uthread_fd.c
  1.17      +19 -17    src/lib/libc_r/uthread/uthread_file.c
  1.6       +1 -3      src/lib/libc_r/uthread/uthread_find_thread.c
  1.9       +4 -6      src/lib/libc_r/uthread/uthread_flock.c
  1.21      +17 -18    src/lib/libc_r/uthread/uthread_fork.c
  1.2       +4 -5      src/lib/libc_r/uthread/uthread_fpathconf.c
  1.9       +4 -5      src/lib/libc_r/uthread/uthread_fstat.c
  1.9       +4 -6      src/lib/libc_r/uthread/uthread_fstatfs.c
  1.9       +5 -5      src/lib/libc_r/uthread/uthread_fsync.c
  1.14      +6 -5      src/lib/libc_r/uthread/uthread_gc.c
  1.9       +4 -6      src/lib/libc_r/uthread/uthread_getdirentries.c
  1.10      +4 -5      src/lib/libc_r/uthread/uthread_getpeername.c
  1.7       +4 -4      src/lib/libc_r/uthread/uthread_getprio.c
  1.6       +4 -4      src/lib/libc_r/uthread/uthread_getschedparam.c
  1.10      +4 -6      src/lib/libc_r/uthread/uthread_getsockname.c
  1.10      +4 -6      src/lib/libc_r/uthread/uthread_getsockopt.c
  1.18      +23 -23    src/lib/libc_r/uthread/uthread_info.c
  1.29      +120 -92   src/lib/libc_r/uthread/uthread_init.c
  1.10      +4 -6      src/lib/libc_r/uthread/uthread_ioctl.c
  1.6       +17 -9     src/lib/libc_r/uthread/uthread_jmp.c
  1.15      +23 -20    src/lib/libc_r/uthread/uthread_join.c
  1.37      +134 -102  src/lib/libc_r/uthread/uthread_kern.c
  1.4       +14 -13    src/lib/libc_r/uthread/uthread_kevent.c
  1.11      +4 -4      src/lib/libc_r/uthread/uthread_kill.c
  1.9       +4 -5      src/lib/libc_r/uthread/uthread_listen.c
  1.6       +4 -4      src/lib/libc_r/uthread/uthread_mattr_init.c
  1.6       +10 -7     src/lib/libc_r/uthread/uthread_mattr_kind_np.c
  1.4       +5 -5      src/lib/libc_r/uthread/uthread_msync.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_multi_np.c
  1.28      +267 -174  src/lib/libc_r/uthread/uthread_mutex.c
  1.4       +12 -9     src/lib/libc_r/uthread/uthread_mutex_prioceiling.c
  1.4       +6 -5      src/lib/libc_r/uthread/uthread_mutex_protocol.c
  1.6       +4 -4      src/lib/libc_r/uthread/uthread_mutexattr_destroy.c
  1.15      +12 -11    src/lib/libc_r/uthread/uthread_nanosleep.c
  1.5       +4 -4      src/lib/libc_r/uthread/uthread_once.c
  1.10      +6 -6      src/lib/libc_r/uthread/uthread_open.c
  1.3       +4 -4      src/lib/libc_r/uthread/uthread_pause.c
  1.9       +6 -8      src/lib/libc_r/uthread/uthread_pipe.c
  1.10      +7 -9      src/lib/libc_r/uthread/uthread_poll.c
  1.7       +2 -4      src/lib/libc_r/uthread/uthread_priority_queue.c
  1.12      +9 -8      src/lib/libc_r/uthread/uthread_read.c
  1.12      +8 -9      src/lib/libc_r/uthread/uthread_readv.c
  1.10      +8 -9      src/lib/libc_r/uthread/uthread_recvfrom.c
  1.8       +8 -9      src/lib/libc_r/uthread/uthread_recvmsg.c
  1.10      +4 -4      src/lib/libc_r/uthread/uthread_resume_np.c
  1.5       +16 -10    src/lib/libc_r/uthread/uthread_rwlock.c
  1.6       +10 -7     src/lib/libc_r/uthread/uthread_rwlockattr.c
  1.17      +14 -15    src/lib/libc_r/uthread/uthread_select.c
  1.4       +5 -5      src/lib/libc_r/uthread/uthread_self.c
  1.8       +21 -12    src/lib/libc_r/uthread/uthread_sem.c
  1.4       +9 -8      src/lib/libc_r/uthread/uthread_sendfile.c
  1.8       +8 -9      src/lib/libc_r/uthread/uthread_sendmsg.c
  1.10      +8 -9      src/lib/libc_r/uthread/uthread_sendto.c
  1.5       +1 -3      src/lib/libc_r/uthread/uthread_seterrno.c
  1.8       +4 -4      src/lib/libc_r/uthread/uthread_setprio.c
  1.8       +4 -4      src/lib/libc_r/uthread/uthread_setschedparam.c
  1.10      +4 -6      src/lib/libc_r/uthread/uthread_setsockopt.c
  1.10      +6 -8      src/lib/libc_r/uthread/uthread_shutdown.c
  1.33      +22 -21    src/lib/libc_r/uthread/uthread_sig.c
  1.14      +7 -6      src/lib/libc_r/uthread/uthread_sigaction.c
  1.5       +3 -5      src/lib/libc_r/uthread/uthread_sigblock.c
  1.8       +12 -11    src/lib/libc_r/uthread/uthread_sigmask.c
  1.6       +3 -5      src/lib/libc_r/uthread/uthread_signal.c
  1.7       +5 -6      src/lib/libc_r/uthread/uthread_sigpending.c
  1.11      +3 -5      src/lib/libc_r/uthread/uthread_sigprocmask.c
  1.5       +3 -5      src/lib/libc_r/uthread/uthread_sigsetmask.c
  1.10      +8 -7      src/lib/libc_r/uthread/uthread_sigsuspend.c
  1.17      +13 -12    src/lib/libc_r/uthread/uthread_sigwait.c
  1.4       +7 -5      src/lib/libc_r/uthread/uthread_single_np.c
  1.3       +4 -4      src/lib/libc_r/uthread/uthread_sleep.c
  1.9       +5 -7      src/lib/libc_r/uthread/uthread_socket.c
  1.11      +6 -8      src/lib/libc_r/uthread/uthread_socketpair.c
  1.15      +29 -24    src/lib/libc_r/uthread/uthread_spec.c
  1.9       +10 -7     src/lib/libc_r/uthread/uthread_spinlock.c
  1.10      +7 -5      src/lib/libc_r/uthread/uthread_suspend_np.c
  1.4       +6 -5      src/lib/libc_r/uthread/uthread_switch_np.c
  1.3       +4 -4      src/lib/libc_r/uthread/uthread_system.c
  1.3       +4 -4      src/lib/libc_r/uthread/uthread_tcdrain.c
  1.2       +6 -3      src/lib/libc_r/uthread/uthread_vfork.c
  1.3       +4 -4      src/lib/libc_r/uthread/uthread_wait.c
  1.12      +7 -8      src/lib/libc_r/uthread/uthread_wait4.c
  1.3       +4 -4      src/lib/libc_r/uthread/uthread_waitpid.c
  1.18      +9 -8      src/lib/libc_r/uthread/uthread_write.c
  1.17      +8 -9      src/lib/libc_r/uthread/uthread_writev.c
  1.6       +12 -7     src/lib/libc_r/uthread/uthread_yield.c



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101241303.f0OD3iN37215>