From c9d34d90c7f4c813386edeccf78a7a1ed2300145 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Sun, 22 Mar 2015 23:14:50 +0100 Subject: Avoid exposing internals of structures * sysdeps/generic/bits/barrier-attr.h (__pthread_barrierattr): Rename `pshared' field to `__pshared'. * sysdeps/generic/bits/barrier.h (__pthread_barrier): Rename `lock', `'queue', `pending', `count', `attr', and `data' fields to `__lock', `__queue', `__pending', `__count', `__attr', and `__data'. * sysdeps/generic/bits/cancelation.h (__pthread_cancelation_handler): Rename `handler', `arg', and `next' fields to `__handler', `__arg', and `__next'. * sysdeps/generic/bits/condition-attr.h (__pthread_condattr): Rename `pshared' and `clock' fields to `__pshared', and `__clock'. * sysdeps/generic/bits/mutex-attr.h (__pthread_mutexattr): Rename `prioceiling', `protocol', `pshared', and `mutex_type' fields to `__prioceiling', `__protocol', `__pshared', and `__mutex_type'. * sysdeps/generic/bits/mutex.h (__pthread_mutex): Rename `cthreadscompat1', `attr', `data', `owner', and `locks' fields to `__cthreadscompat1', `__attr', `__data', `__owner', and `__locks'. * sysdeps/generic/bits/once.h (__pthread_once): Rename `run' and `lock' fields to `__run' and `__lock'. * sysdeps/generic/bits/rwlock-attr.h (__pthread_rwlockattr): Rename `psharead' field to `__pshared'. * sysdeps/generic/bits/rwlock.h (__pthread_rwlock): Rename `readers', `readerqueue', and `writerqueue' fields to `__readers', `__readerqueue', and `__writerqueue'. * sysdeps/generic/bits/thread-attr.h (__pthread_contentionscope): Rename `schedparam', `stackaddr', `stacksize', `guardsize', `detachstate', `inheritsched', `contentionscope', and `schedpolicy' fields to `__schedparam', `__stackaddr', `__stacksize', `__guardsize', `__detachstate', `__inheritsched', `__contentionscope', and `__schedpolicy''. * sysdeps/generic/bits/cancelation.h: Update code accordingly. * pthread/pt-create.c: Likewise. * pthread/pt-exit.c: Likewise. * pthread/pt-getattr.c: Likewise. * sysdeps/generic/pt-attr-getdetachstate.c: Likewise. * sysdeps/generic/pt-attr-getguardsize.c: Likewise. * sysdeps/generic/pt-attr-getinheritsched.c: Likewise. * sysdeps/generic/pt-attr-getschedparam.c: Likewise. * sysdeps/generic/pt-attr-getschedpolicy.c: Likewise. * sysdeps/generic/pt-attr-getscope.c: Likewise. * sysdeps/generic/pt-attr-getstackaddr.c: Likewise. * sysdeps/generic/pt-attr-getstacksize.c: Likewise. * sysdeps/generic/pt-attr-setdetachstate.c: Likewise. * sysdeps/generic/pt-attr-setguardsize.c: Likewise. * sysdeps/generic/pt-attr-setinheritsched.c: Likewise. * sysdeps/generic/pt-attr-setschedparam.c: Likewise. * sysdeps/generic/pt-attr-setschedpolicy.c: Likewise. * sysdeps/generic/pt-attr-setscope.c: Likewise. * sysdeps/generic/pt-attr-setstackaddr.c: Likewise. * sysdeps/generic/pt-attr-setstacksize.c: Likewise. * sysdeps/generic/pt-attr.c: Likewise. * sysdeps/generic/pt-barrier-init.c: Likewise. * sysdeps/generic/pt-barrier-wait.c: Likewise. * sysdeps/generic/pt-barrier.c: Likewise. * sysdeps/generic/pt-barrierattr-getpshared.c: Likewise. * sysdeps/generic/pt-barrierattr-setpshared.c: Likewise. * sysdeps/generic/pt-cond-timedwait.c: Likewise. * sysdeps/generic/pt-cond.c: Likewise. * sysdeps/generic/pt-condattr-getclock.c: Likewise. * sysdeps/generic/pt-condattr-getpshared.c: Likewise. * sysdeps/generic/pt-condattr-setclock.c: Likewise. * sysdeps/generic/pt-condattr-setpshared.c: Likewise. * sysdeps/generic/pt-mutex-destroy.c: Likewise. * sysdeps/generic/pt-mutex-init.c: Likewise. * sysdeps/generic/pt-mutex-timedlock.c: Likewise. * sysdeps/generic/pt-mutex-transfer-np.c: Likewise. * sysdeps/generic/pt-mutex-trylock.c: Likewise. * sysdeps/generic/pt-mutex-unlock.c: Likewise. * sysdeps/generic/pt-mutexattr-getprotocol.c: Likewise. * sysdeps/generic/pt-mutexattr-getpshared.c: Likewise. * sysdeps/generic/pt-mutexattr-gettype.c: Likewise. * sysdeps/generic/pt-mutexattr-setprotocol.c: Likewise. * sysdeps/generic/pt-mutexattr-setpshared.c: Likewise. * sysdeps/generic/pt-mutexattr-settype.c: Likewise. * sysdeps/generic/pt-mutexattr.c: Likewise. * sysdeps/generic/pt-once.c: Likewise. * sysdeps/generic/pt-rwlock-attr.c: Likewise. * sysdeps/generic/pt-rwlock-timedrdlock.c: Likewise. * sysdeps/generic/pt-rwlock-timedwrlock.c: Likewise. * sysdeps/generic/pt-rwlock-tryrdlock.c: Likewise. * sysdeps/generic/pt-rwlock-trywrlock.c: Likewise. * sysdeps/generic/pt-rwlock-unlock.c: Likewise. * sysdeps/generic/pt-rwlockattr-getpshared.c: Likewise. * sysdeps/generic/pt-rwlockattr-setpshared.c: Likewise. * sysdeps/mach/hurd/pt-attr-setstackaddr.c: Likewise. * sysdeps/mach/hurd/pt-attr-setstacksize.c: Likewise. * sysdeps/mach/hurd/pt-hurd-cond-timedwait.c: Likewise. --- pthread/pt-create.c | 14 +++++++------- pthread/pt-exit.c | 4 ++-- pthread/pt-getattr.c | 8 ++++---- 3 files changed, 13 insertions(+), 13 deletions(-) (limited to 'pthread') diff --git a/pthread/pt-create.c b/pthread/pt-create.c index 112ed46..d88afae 100644 --- a/pthread/pt-create.c +++ b/pthread/pt-create.c @@ -103,7 +103,7 @@ __pthread_create_internal (struct __pthread **thread, /* Use the default attributes if ATTR is NULL. */ setup = attr ? attr : &__pthread_default_attr; - stacksize = setup->stacksize; + stacksize = setup->__stacksize; if (!stacksize) { struct rlimit rlim; @@ -115,12 +115,12 @@ __pthread_create_internal (struct __pthread **thread, } /* Initialize the thread state. */ - pthread->state = (setup->detachstate == PTHREAD_CREATE_DETACHED + pthread->state = (setup->__detachstate == PTHREAD_CREATE_DETACHED ? PTHREAD_DETACHED : PTHREAD_JOINABLE); - if (setup->stackaddr) + if (setup->__stackaddr) { - pthread->stackaddr = setup->stackaddr; + pthread->stackaddr = setup->__stackaddr; /* If the user supplied a stack, it is not our responsibility to setup a stack guard. */ @@ -131,13 +131,13 @@ __pthread_create_internal (struct __pthread **thread, { /* Allocate a stack. */ err = __pthread_stack_alloc (&pthread->stackaddr, - ((setup->guardsize + __vm_page_size-1) + ((setup->__guardsize + __vm_page_size-1) / __vm_page_size) * __vm_page_size + stacksize); if (err) goto failed_stack_alloc; - pthread->guardsize = setup->guardsize; + pthread->guardsize = setup->__guardsize; pthread->stack = 1; } @@ -244,7 +244,7 @@ __pthread_create_internal (struct __pthread **thread, failed_thread_alloc: if (pthread->stack) __pthread_stack_dealloc (pthread->stackaddr, - ((setup->guardsize + __vm_page_size-1) + ((setup->__guardsize + __vm_page_size-1) / __vm_page_size) * __vm_page_size + stacksize); failed_stack_alloc: diff --git a/pthread/pt-exit.c b/pthread/pt-exit.c index 6d827db..3427de5 100644 --- a/pthread/pt-exit.c +++ b/pthread/pt-exit.c @@ -43,8 +43,8 @@ __pthread_exit (void *status) for (handlers = __pthread_get_cleanup_stack (); *handlers; - *handlers = (*handlers)->next) - (*handlers)->handler ((*handlers)->arg); + *handlers = (*handlers)->__next) + (*handlers)->__handler ((*handlers)->__arg); pthread_setcancelstate (oldstate, &oldstate); diff --git a/pthread/pt-getattr.c b/pthread/pt-getattr.c index edb013f..574420a 100644 --- a/pthread/pt-getattr.c +++ b/pthread/pt-getattr.c @@ -39,12 +39,12 @@ pthread_getattr_np (pthread_t thread, pthread_attr_t *attr) are not supported yet, so fill them with our default values. */ *attr = __pthread_default_attr; - attr->stackaddr = pthread->stackaddr + + attr->__stackaddr = pthread->stackaddr + ((pthread->guardsize + __vm_page_size-1) / __vm_page_size * __vm_page_size); - attr->stacksize = pthread->stacksize; - attr->guardsize = pthread->guardsize; - attr->detachstate = (pthread->state == PTHREAD_DETACHED + attr->__stacksize = pthread->stacksize; + attr->__guardsize = pthread->guardsize; + attr->__detachstate = (pthread->state == PTHREAD_DETACHED ? PTHREAD_CREATE_DETACHED : PTHREAD_CREATE_JOINABLE); return 0; -- cgit v1.2.3