projects
/
musl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
very cheap double-free checks in malloc
[musl]
/
src
/
internal
/
pthread_impl.h
diff --git
a/src/internal/pthread_impl.h
b/src/internal/pthread_impl.h
index
22ba8b7
..
e3a9a0e
100644
(file)
--- a/
src/internal/pthread_impl.h
+++ b/
src/internal/pthread_impl.h
@@
-36,6
+36,12
@@
struct pthread {
struct __ptcb *cancelbuf;
void **tsd;
pthread_attr_t attr;
struct __ptcb *cancelbuf;
void **tsd;
pthread_attr_t attr;
+ volatile int dead;
+ struct {
+ void **head;
+ long off;
+ void *pending;
+ } robust_list;
};
#define __SU (sizeof(size_t)/sizeof(int))
};
#define __SU (sizeof(size_t)/sizeof(int))
@@
-46,7
+52,9
@@
struct pthread {
#define _m_type __u.__i[0]
#define _m_lock __u.__i[1]
#define _m_waiters __u.__i[2]
#define _m_type __u.__i[0]
#define _m_lock __u.__i[1]
#define _m_waiters __u.__i[2]
-#define _m_owner __u.__i[3]
+#define _m_prev __u.__p[3]
+#define _m_next __u.__p[4]
+#define _m_count __u.__i[5]
#define _c_block __u.__i[0]
#define _c_clock __u.__i[1]
#define _rw_wrlock __u.__i[0]
#define _c_block __u.__i[0]
#define _c_clock __u.__i[1]
#define _rw_wrlock __u.__i[0]