git: pthreads: Reimplement pthread types using non polluting types.
Rimvydas Jasinskas
zrj at crater.dragonflybsd.org
Sat Dec 12 05:31:41 PST 2020
commit cf8046a92768d53e67d2533fb51b137d5506248d
Author: zrj <rimvydas.jasinskas at gmail.com>
Date: Tue Dec 8 11:11:06 2020 +0000
pthreads: Reimplement pthread types using non polluting types.
Use __ implementation specific namespace and adjust libthread_xu.
* The pthread_addr_t type was specific only to libc_r, remove it.
* The pthread_startroutine_t typedef was never used since initial fork.
* The mutex member in struct pthread_once was for libc_r only, rename
it to __sparelibc_r void pointer to keep ABI compatibility.
* Mangle struct names using __type_s scheme to avoid collisions with
user defined types in 3rd-party software packages.
* Adjust partly publicly visible struct pthread_once members too.
Summary of changes:
lib/libc/gen/_once_stub.c | 4 +-
lib/libc/gen/_pthread_stubs.c | 4 +-
lib/libc/gen/gen_private.h | 4 +-
lib/libthread_xu/arch/x86_64/include/pthread_md.h | 4 +-
lib/libthread_xu/thread/thr_attr.c | 10 +-
lib/libthread_xu/thread/thr_barrier.c | 2 +-
lib/libthread_xu/thread/thr_barrierattr.c | 2 +-
lib/libthread_xu/thread/thr_cond.c | 2 +-
lib/libthread_xu/thread/thr_condattr.c | 4 +-
lib/libthread_xu/thread/thr_ctrdtr.c | 2 +-
lib/libthread_xu/thread/thr_init.c | 6 +-
lib/libthread_xu/thread/thr_list.c | 10 +-
lib/libthread_xu/thread/thr_mutex.c | 12 +--
lib/libthread_xu/thread/thr_mutexattr.c | 4 +-
lib/libthread_xu/thread/thr_once.c | 12 +--
lib/libthread_xu/thread/thr_private.h | 50 +++++-----
lib/libthread_xu/thread/thr_pspinlock.c | 2 +-
lib/libthread_xu/thread/thr_rwlock.c | 2 +-
lib/libthread_xu/thread/thr_rwlockattr.c | 2 +-
lib/libthread_xu/thread/thr_symbols.c | 16 +--
sys/sys/_pthreadtypes.h | 114 +++++++++-------------
21 files changed, 125 insertions(+), 143 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/cf8046a92768d53e67d2533fb51b137d5506248d
--
DragonFly BSD source repository
More information about the Commits
mailing list