diff options
Diffstat (limited to 'nptl/pthreadP.h')
-rw-r--r-- | nptl/pthreadP.h | 103 |
1 files changed, 1 insertions, 102 deletions
diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h index 21ce6fe0b7..24168146fa 100644 --- a/nptl/pthreadP.h +++ b/nptl/pthreadP.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2002,2003,2004,2005,2006,2007 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2002. @@ -31,7 +31,6 @@ #include <internaltypes.h> #include <pthread-functions.h> #include <atomic.h> -#include <kernel-features.h> /* Atomic operations on TLS memory. */ @@ -52,78 +51,6 @@ #endif -/* Magic cookie representing robust mutex with dead owner. */ -#define PTHREAD_MUTEX_INCONSISTENT INT_MAX -/* Magic cookie representing not recoverable robust mutex. */ -#define PTHREAD_MUTEX_NOTRECOVERABLE (INT_MAX - 1) - - -/* Internal mutex type value. */ -enum -{ - PTHREAD_MUTEX_KIND_MASK_NP = 3, - PTHREAD_MUTEX_ROBUST_NORMAL_NP = 16, - PTHREAD_MUTEX_ROBUST_RECURSIVE_NP - = PTHREAD_MUTEX_ROBUST_NORMAL_NP | PTHREAD_MUTEX_RECURSIVE_NP, - PTHREAD_MUTEX_ROBUST_ERRORCHECK_NP - = PTHREAD_MUTEX_ROBUST_NORMAL_NP | PTHREAD_MUTEX_ERRORCHECK_NP, - PTHREAD_MUTEX_ROBUST_ADAPTIVE_NP - = PTHREAD_MUTEX_ROBUST_NORMAL_NP | PTHREAD_MUTEX_ADAPTIVE_NP, - PTHREAD_MUTEX_PRIO_INHERIT_NP = 32, - PTHREAD_MUTEX_PI_NORMAL_NP - = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_NORMAL, - PTHREAD_MUTEX_PI_RECURSIVE_NP - = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_RECURSIVE_NP, - PTHREAD_MUTEX_PI_ERRORCHECK_NP - = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ERRORCHECK_NP, - PTHREAD_MUTEX_PI_ADAPTIVE_NP - = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ADAPTIVE_NP, - PTHREAD_MUTEX_PI_ROBUST_NORMAL_NP - = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_NORMAL_NP, - PTHREAD_MUTEX_PI_ROBUST_RECURSIVE_NP - = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_RECURSIVE_NP, - PTHREAD_MUTEX_PI_ROBUST_ERRORCHECK_NP - = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_ERRORCHECK_NP, - PTHREAD_MUTEX_PI_ROBUST_ADAPTIVE_NP - = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_ADAPTIVE_NP, - PTHREAD_MUTEX_PRIO_PROTECT_NP = 64, - PTHREAD_MUTEX_PP_NORMAL_NP - = PTHREAD_MUTEX_PRIO_PROTECT_NP | PTHREAD_MUTEX_NORMAL, - PTHREAD_MUTEX_PP_RECURSIVE_NP - = PTHREAD_MUTEX_PRIO_PROTECT_NP | PTHREAD_MUTEX_RECURSIVE_NP, - PTHREAD_MUTEX_PP_ERRORCHECK_NP - = PTHREAD_MUTEX_PRIO_PROTECT_NP | PTHREAD_MUTEX_ERRORCHECK_NP, - PTHREAD_MUTEX_PP_ADAPTIVE_NP - = PTHREAD_MUTEX_PRIO_PROTECT_NP | PTHREAD_MUTEX_ADAPTIVE_NP -}; - -/* Ceiling in __data.__lock. __data.__lock is signed, so don't - use the MSB bit in there, but in the mask also include that bit, - so that the compiler can optimize & PTHREAD_MUTEX_PRIO_CEILING_MASK - masking if the value is then shifted down by - PTHREAD_MUTEX_PRIO_CEILING_SHIFT. */ -#define PTHREAD_MUTEX_PRIO_CEILING_SHIFT 19 -#define PTHREAD_MUTEX_PRIO_CEILING_MASK 0xfff80000 - - -/* Flags in mutex attr. */ -#define PTHREAD_MUTEXATTR_PROTOCOL_SHIFT 28 -#define PTHREAD_MUTEXATTR_PROTOCOL_MASK 0x30000000 -#define PTHREAD_MUTEXATTR_PRIO_CEILING_SHIFT 12 -#define PTHREAD_MUTEXATTR_PRIO_CEILING_MASK 0x00fff000 -#define PTHREAD_MUTEXATTR_FLAG_ROBUST 0x40000000 -#define PTHREAD_MUTEXATTR_FLAG_PSHARED 0x80000000 -#define PTHREAD_MUTEXATTR_FLAG_BITS \ - (PTHREAD_MUTEXATTR_FLAG_ROBUST | PTHREAD_MUTEXATTR_FLAG_PSHARED \ - | PTHREAD_MUTEXATTR_PROTOCOL_MASK | PTHREAD_MUTEXATTR_PRIO_CEILING_MASK) - - -/* Bits used in robust mutex implementation. */ -#define FUTEX_WAITERS 0x80000000 -#define FUTEX_OWNER_DIED 0x40000000 -#define FUTEX_TID_MASK 0x3fffffff - - /* Internal variables. */ @@ -160,19 +87,6 @@ hidden_proto (__pthread_keys) /* Number of threads running. */ extern unsigned int __nptl_nthreads attribute_hidden; -#ifndef __ASSUME_SET_ROBUST_LIST -/* Negative if we do not have the system call and we can use it. */ -extern int __set_robust_list_avail attribute_hidden; -#endif - -/* Thread Priority Protection. */ -extern int __sched_fifo_min_prio attribute_hidden; -extern int __sched_fifo_max_prio attribute_hidden; -extern void __init_sched_fifo_prio (void) attribute_hidden; -extern int __pthread_tpp_change_priority (int prev_prio, int new_prio) - attribute_hidden; -extern int __pthread_current_priority (void) attribute_hidden; - /* The library can run in debugging mode where it performs a lot more tests. */ extern int __pthread_debug attribute_hidden; @@ -543,25 +457,10 @@ extern void __nptl_deallocate_tsd (void) attribute_hidden; extern int __nptl_setxid (struct xid_command *cmdp) attribute_hidden; -extern void __free_stack_cache (void) attribute_hidden; - -extern void __wait_lookup_done (void) attribute_hidden; - #ifdef SHARED # define PTHREAD_STATIC_FN_REQUIRE(name) #else # define PTHREAD_STATIC_FN_REQUIRE(name) __asm (".globl " #name); #endif - -#ifndef __NR_set_robust_list -/* XXX For the time being... Once we can rely on the kernel headers - having the definition remove these lines. */ -# if defined __i386__ -# define __NR_set_robust_list 311 -# elif defined __x86_64__ -# define __NR_set_robust_list 273 -# endif -#endif - #endif /* pthreadP.h */ |