|
@@ -19,16 +19,21 @@ struct pthread {
|
|
|
void **dtv, *unused1, *unused2;
|
|
|
uintptr_t sysinfo;
|
|
|
uintptr_t canary, canary2;
|
|
|
- pid_t tid, pid;
|
|
|
|
|
|
/* Part 2 -- implementation details, non-ABI. */
|
|
|
- int tsd_used, errno_val;
|
|
|
- volatile int cancel, canceldisable, cancelasync;
|
|
|
+ int tid;
|
|
|
+ int errno_val;
|
|
|
volatile int detach_state;
|
|
|
+ volatile int cancel;
|
|
|
+ volatile unsigned char canceldisable, cancelasync;
|
|
|
+ unsigned char tsd_used:1;
|
|
|
+ unsigned char unblock_cancel:1;
|
|
|
+ unsigned char dlerror_flag:1;
|
|
|
unsigned char *map_base;
|
|
|
size_t map_size;
|
|
|
void *stack;
|
|
|
size_t stack_size;
|
|
|
+ size_t guard_size;
|
|
|
void *start_arg;
|
|
|
void *(*start)(void *);
|
|
|
void *result;
|
|
@@ -39,16 +44,13 @@ struct pthread {
|
|
|
long off;
|
|
|
volatile void *volatile pending;
|
|
|
} robust_list;
|
|
|
- int unblock_cancel;
|
|
|
volatile int timer_id;
|
|
|
locale_t locale;
|
|
|
volatile int killlock[1];
|
|
|
- volatile int startlock[2];
|
|
|
+ volatile int startlock[1];
|
|
|
unsigned long sigmask[_NSIG/8/sizeof(long)];
|
|
|
char *dlerror_buf;
|
|
|
- int dlerror_flag;
|
|
|
void *stdio_locks;
|
|
|
- size_t guard_size;
|
|
|
|
|
|
/* Part 3 -- the positions of these fields relative to
|
|
|
* the end of the structure is external and internal ABI. */
|