⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog

📁 this is simple sip stack.
💻
📖 第 1 页 / 共 5 页
字号:
	* private.c (_pthread_new_thread): Increment _pthread_threads_count.
	(_pthread_delete_thread): Decrement _pthread_threads_count.
	Remove some comments.

	* exit.c (_pthread_exit): : Fix two pthread_mutex_lock() calls that
 	should have been pthread_mutex_unlock() calls.
	(_pthread_vacuum): Remove call to _pthread_destructor_pop_all().

	* create.c (pthread_create): Fix two pthread_mutex_lock() calls that
 	should have been pthread_mutex_unlock() calls.

	* global.c (_pthread_tsd_mutex): Add mutex for TSD operations.

	* tsd.c (pthread_key_create): Add critical section.
	(pthread_setspecific): Ditto.
	(pthread_getspecific): Ditto.
	(pthread_key_delete): Ditto.

	* sync.c (pthread_join): Fix two pthread_mutex_lock() calls that
 	should have been pthread_mutex_unlock() calls.

Mon Oct 12 00:00:44 1998  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* implement.h (_pthread_tsd_key_table): New.

	* create.c (_pthread_start_call): Initialise per-thread TSD keys
	to NULL.

	* misc.c (pthread_once): Correct typo in comment.

	* implement.h (_pthread_destructor_push): Remove.
	(_pthread_destructor_pop): Remove.
	(_pthread_destructor_run_all): Rename from _pthread_destructor_pop_all.
	(_PTHREAD_TSD_KEY_DELETED): Add enum.
	(_PTHREAD_TSD_KEY_INUSE): Add enum.

	* cleanup.c (_pthread_destructor_push): Remove.
	(_pthread_destructor_pop): Remove.
	(_pthread_destructor_run_all): Totally revamped TSD.

	* dll.c (_pthread_TSD_keys_TlsIndex): Initialise.

	* tsd.c (pthread_setspecific): Totally revamped TSD.
	(pthread_getspecific): Ditto.
	(pthread_create): Ditto.
	(pthread_delete): Ditto.

Sun Oct 11 22:44:55 1998  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* global.c (_pthread_tsd_key_table): Add new global.

	* implement.h (_pthread_tsd_key_t and struct _pthread_tsd_key):
	Add.
	(struct _pthread): Remove destructorstack.

	* cleanup.c (_pthread_destructor_run_all): Rename from
 	_pthread_destructor_pop_all. The key destructor stack was made
 	global rather than per-thread. No longer removes destructor nodes
	from the stack. Comments updated.

1998-10-06  Ben Elliston  <bje@cygnus.com>

	* condvar.c (cond_wait): Use POSIX, not Win32 mutex calls.
	(pthread_cond_broadcast): Likewise.
	(pthread_cond_signal): Likewise.

1998-10-05  Ben Elliston  <bje@cygnus.com>

	* pthread.def: Update. Some functions aren't available yet, others
	are macros in <pthread.h>.

	* tests/join.c: Remove; useless.

Mon Oct  5 14:25:08 1998  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* pthread.def: New file for building the DLL.

1998-10-05  Ben Elliston  <bje@cygnus.com>

	* misc.c (pthread_equal): Correct inverted logic bug.
	(pthread_once): Use the POSIX mutex primitives, not Win32. Remove
	irrelevant FIXME comment.

	* global.c (PTHREAD_MUTEX_INITIALIZER): Move to pthread.h.

	* pthread.h (PTHREAD_MUTEX_INITIALIZER): Define.
	(pthread_mutex_t): Reimplement as a struct containing a valid
	flag. If the flag is ever down upon entry to a mutex operation,
	we call pthread_mutex_create() to initialise the object. This
	fixes the problem of how to handle statically initialised objects
	that can't call InitializeCriticalSection() due to their context.
	(PTHREAD_ONCE_INIT): Define.

	* mutex.c (pthread_mutex_init): Set valid flag.
	(pthread_mutex_destroy): Clear valid flag.
	(pthread_mutex_lock): Check and handle the valid flag.
	(pthread_mutex_unlock): Likewise.
	(pthread_mutex_trylock): Likewise.

	* tests/mutex3.c: New file; test for the static initialisation
	macro. Passes.

	* tests/create1.c: New file; test pthread_create(). Passes.
	
	* tests/equal.c: Poor test; remove.
	
	* tests/equal1.c New file; test pthread_equal(). Passes.

	* tests/once1.c: New file; test for pthread_once(). Passes.

	* tests/self.c: Remove; rename to self1.c.

	* tests/self1.c: This is the old self.c.

	* tests/self2.c: New file. Test pthread_self() with a single
	thread. Passes.

	* tests/self3.c: New file. Test pthread_self() with a couple of
	threads to ensure their thread IDs differ. Passes.
	
1998-10-04  Ben Elliston  <bje@cygnus.com>

	* tests/mutex2.c: Test pthread_mutex_trylock(). Passes.

	* tests/mutex1.c: New basic test for mutex functions (it passes).
	(main): Eliminate warning.

	* configure.in: Test for __stdcall, not _stdcall. Typo.

	* configure: Regenerate.

	* attr.c (pthread_attr_setstackaddr): Remove FIXME comment. Win32
	does know about ENOSYS after all.
	(pthread_attr_setstackaddr): Likewise.

1998-10-03  Ben Elliston  <bje@cygnus.com>

	* configure.in: Test for the `_stdcall' keyword.  Define `STDCALL'
	to `_stdcall' if we have it, null otherwise.

	* configure: Regenerate.

	* acconfig.h (STDCALL): New define.

	* config.h.in: Regenerate.

	* create.c (_pthread_start_call): Add STDCALL prefix.
	
	* mutex.c (pthread_mutex_init): Correct function signature.

	* attr.c (pthread_attr_init): Only zero out the `sigmask' member
	if we have the sigset_t type.

	* pthread.h: No need to include <unistd.h>.  It doesn't even exist
	on Win32! Again, an artifact of cross-compilation.	
	(pthread_sigmask): Only provide if we have the sigset_t type.

	* process.h: Remove. This was a stand-in before we started doing
	native compilation under Win32.

	* pthread.h (pthread_mutex_init): Make `attr' argument const.

1998-10-02  Ben Elliston  <bje@cygnus.com>

	* COPYING: Remove.

	* COPYING.LIB: Add. This library is under the LGPL.

1998-09-13  Ben Elliston  <bje@cygnus.com>

	* configure.in: Test for required system features.

	* configure: Generate. 

	* acconfig.h: New file.

	* config.h.in: Generate.

	* Makefile.in: Renamed from Makefile.

	* COPYING: Import from a recent GNU package.

	* config.guess: Likewise.

	* config.sub: Likewise.

	* install-sh: Likewise.

	* config.h: Remove.  

	* Makefile: Likewise.

1998-09-12  Ben Elliston  <bje@cygnus.com>

	* windows.h: No longer needed; remove.

	* windows.c: Likewise.

Sat Sep 12 20:09:24 1998  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* windows.h: Remove error number definitions. These are in <errno.h>
	
	* tsd.c: Add comment explaining rationale for not building
	POSIX TSD on top of Win32 TLS.

1998-09-12  Ben Elliston  <bje@cygnus.com>

	* {most}.c: Include <errno.h> to get POSIX error values.

	* signal.c (pthread_sigmask): Only provide if HAVE_SIGSET_T is
	defined.
 
	* config.h: #undef features, don't #define them.  This will be
	generated by autoconf very soon.
	
1998-08-11  Ben Elliston  <bje@cygnus.com>

	* Makefile (LIB): Define.
	(clean): Define target.
	(all): Build a library not just the object files.

	* pthread.h: Provide a definition for struct timespec if we don't
	already have one.

	* windows.c (TlsGetValue): Bug fix.
	
Thu Aug  6 15:19:22 1998  Ross Johnson  <rpj@swan.canberra.edu.au>

	* misc.c (pthread_once): Fix arg 1 of EnterCriticalSection()
 	and LeaveCriticalSection() calls to pass address-of lock.

	* fork.c (pthread_atfork): Typecast (void (*)(void *)) funcptr
	in each _pthread_handler_push() call.

	* exit.c (_pthread_exit): Fix attr arg in 
	pthread_attr_getdetachstate() call.

	* private.c (_pthread_new_thread): Typecast (HANDLE) NULL.
	(_pthread_delete_thread): Ditto.

	* implement.h: (_PTHREAD_MAX_THREADS): Add define. This keeps
	changing in an attempt to make thread administration data types
	opaque and cleanup DLL startup.

	* dll.c (PthreadsEntryPoint): 
	(_pthread_virgins): Remove malloc() and free() calls.
	(_pthread_reuse): Ditto.
	(_pthread_win32handle_map): Ditto.
	(_pthread_threads_mutex_table): Ditto.

	* global.c (_POSIX_THREAD_THREADS_MAX): Initialise with 
	_PTHREAD_MAX_THREADS.
	(_pthread_virgins): Ditto.
	(_pthread_reuse): Ditto.
	(_pthread_win32handle_map): Ditto.
	(_pthread_threads_mutex_table): Ditto.

	* create.c (pthread_create): Typecast (HANDLE) NULL.
	Typecast (unsigned (*)(void *)) start_routine.

	* condvar.c (pthread_cond_init): Add address-of operator & to
	arg 1 of pthread_mutex_init() call.
	(pthread_cond_destroy): Add address-of operator & to
	arg 1 of pthread_mutex_destroy() call. 

	* cleanup.c (_pthread_destructor_pop_all): Add (int) cast to 
	pthread_getspecific() arg.
	(_pthread_destructor_pop): Add (void *) cast to "if" conditional.
	(_pthread_destructor_push): Add (void *) cast to
	_pthread_handler_push() "key" arg.
	(malloc.h): Add include.

	* implement.h (_pthread_destructor_pop): Add prototype.

	* tsd.c (implement.h): Add include.

	* sync.c (pthread_join): Remove target_thread_mutex and it's
	initialisation. Rename getdetachedstate to getdetachstate.
	Remove unused variable "exitcode".
	(pthread_detach): Remove target_thread_mutex and it's
	initialisation. Rename getdetachedstate to getdetachstate.
	Rename setdetachedstate to setdetachstate.

	* signal.c (pthread_sigmask): Rename SIG_SET to SIG_SETMASK.
	Cast "set" to (long *) in assignment to passify compiler warning.
	Add address-of operator & to thread->attr.sigmask in memcpy() call
	and assignment.
	(pthread_sigmask): Add address-of operator & to thread->attr.sigmask
	in memcpy() call and assignment.

	* windows.h (THREAD_PRIORITY_ERROR_RETURN): Add.
	(THREAD_PRIORITY_LOWEST): Add.
	(THREAD_PRIORITY_HIGHEST): Add.

	* sched.c (is_attr): Add function.
	(implement.h): Add include.
	(pthread_setschedparam): Rename all instances of "sched_policy"
	to "sched_priority".
	(pthread_getschedparam): Ditto.

Tue Aug  4 16:57:58 1998  Ross Johnson  <rpj@swan.canberra.edu.au>

	* private.c (_pthread_delete_thread): Fix typo. Add missing ';'.

	* global.c (_pthread_virgins): Change types from pointer to 
	array pointer.
	(_pthread_reuse): Ditto.
	(_pthread_win32handle_map): Ditto.
	(_pthread_threads_mutex_table): Ditto.

	* implement.h(_pthread_virgins): Change types from pointer to 
	array pointer.
	(_pthread_reuse): Ditto.
	(_pthread_win32handle_map): Ditto.
	(_pthread_threads_mutex_table): Ditto.

	* private.c (_pthread_delete_thread): Fix "entry" should be "thread".

	* misc.c (pthread_self): Add extern for _pthread_threadID_TlsIndex.

	* global.c: Add comment.

	* misc.c (pthread_once): Fix member -> dereferences.
	Change _pthread_once_flag to once_control->flag in "if" test.

Tue Aug  4 00:09:30 1998  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* implement.h(_pthread_virgins): Add extern.
	(_pthread_virgin_next): Ditto.
	(_pthread_reuse): Ditto.
	(_pthread_reuse_top): Ditto.
	(_pthread_win32handle_map): Ditto.
	(_pthread_threads_mutex_table): Ditto.

	* global.c (_pthread_virgins): Changed from array to pointer.
	Storage allocation for the array moved into dll.c.
	(_pthread_reuse): Ditto.
	(_pthread_win32handle_map): Ditto.
	(_pthread_threads_mutex_table): Ditto.

	* dll.c (PthreadsEntryPoint): Set up thread admin storage when
	DLL is loaded.

	* fork.c (pthread_atfork): Fix function pointer arg to all
	_pthread_handler_push() calls. Change "arg" arg to NULL in child push.

	* exit.c: Add windows.h and process.h includes.
	(_pthread_exit): Add local detachstate declaration.
	(_pthread_exit): Fix incorrect name for pthread_attr_getdetachstate().

	* pthread.h (_POSIX_THREAD_ATTR_STACKSIZE): Move from global.c
	(_POSIX_THREAD_ATTR_STACKADDR): Ditto.

	* create.c (pthread_create): Fix #if should be #ifdef.
	(_pthread_start_call): Remove usused variables.

	* process.h: Create.

	* windows.h: Move _beginthreadex and _endthreadex into
	process.h

Mon Aug  3 21:19:57 1998  Ross Johnson  <rpj@ixobrychus.canberra.edu.au>

	* condvar.c (pthread_cond_init): Add NULL attr to
	pthread_mutex_init() call - default attributes will be used.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -