/* Part 1 -- these fields may be external or
* internal (accessed via asm) ABI. Do not change. */
struct pthread *self;
- void **dtv, *unused1, *unused2;
+ uintptr_t *dtv;
+ void *unused1, *unused2;
uintptr_t sysinfo;
uintptr_t canary, canary2;
/* Part 3 -- the positions of these fields relative to
* the end of the structure is external and internal ABI. */
uintptr_t canary_at_end;
- void **dtv_copy;
+ uintptr_t *dtv_copy;
};
struct start_sched_args {
hidden void __reset_tls();
hidden void __dl_thread_cleanup(void);
-hidden void __fork_handler(int);
hidden void __testcancel();
hidden void __do_cleanup_push(struct __ptcb *);
hidden void __do_cleanup_pop(struct __ptcb *);
hidden void __pthread_tsd_run_dtors();
+hidden void __pthread_key_delete_synccall(void (*)(void *), void *);
+hidden int __pthread_key_delete_impl(pthread_key_t);
+
extern hidden volatile int __block_new_threads;
extern hidden volatile size_t __pthread_tsd_size;
extern hidden void *__pthread_tsd_main[];
hidden void __release_ptc(void);
hidden void __inhibit_ptc(void);
-extern hidden size_t __default_stacksize;
-extern hidden size_t __default_guardsize;
+extern hidden unsigned __default_stacksize;
+extern hidden unsigned __default_guardsize;
+
+#define DEFAULT_STACK_SIZE 131072
+#define DEFAULT_GUARD_SIZE 8192
-#define DEFAULT_STACK_SIZE 81920
-#define DEFAULT_GUARD_SIZE 4096
+#define DEFAULT_STACK_MAX (8<<20)
+#define DEFAULT_GUARD_MAX (1<<20)
#define __ATTRP_C11_THREAD ((void*)(uintptr_t)-1)