summaryrefslogtreecommitdiff
path: root/src/internal/pthread_impl.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/internal/pthread_impl.h')
-rw-r--r--src/internal/pthread_impl.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/internal/pthread_impl.h b/src/internal/pthread_impl.h
index 3b4ad94d..0a65fa37 100644
--- a/src/internal/pthread_impl.h
+++ b/src/internal/pthread_impl.h
@@ -24,7 +24,7 @@ struct pthread {
/* Part 2 -- implementation details, non-ABI. */
int tsd_used, errno_val;
volatile int cancel, canceldisable, cancelasync;
- int detached;
+ volatile int detach_state;
unsigned char *map_base;
size_t map_size;
void *stack;
@@ -42,9 +42,7 @@ struct pthread {
int unblock_cancel;
volatile int timer_id;
locale_t locale;
- volatile int join_futex;
volatile int killlock[1];
- volatile int exitlock[1];
volatile int startlock[2];
unsigned long sigmask[_NSIG/8/sizeof(long)];
char *dlerror_buf;
@@ -58,6 +56,14 @@ struct pthread {
void **dtv_copy;
};
+enum {
+ DT_EXITED = 0,
+ DT_EXITING,
+ DT_JOINABLE,
+ DT_DETACHED,
+ DT_DYNAMIC,
+};
+
struct __timer {
int timerid;
pthread_t thread;