summaryrefslogtreecommitdiff
path: root/libpthread/nptl/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'libpthread/nptl/TODO')
-rw-r--r--libpthread/nptl/TODO31
1 files changed, 31 insertions, 0 deletions
diff --git a/libpthread/nptl/TODO b/libpthread/nptl/TODO
new file mode 100644
index 000000000..70b8fe4f7
--- /dev/null
+++ b/libpthread/nptl/TODO
@@ -0,0 +1,31 @@
+- we should probably extend pthread_mutexattr_t with a field to create a
+ single linked list of all instances. This requires changing the
+ pthread_mutexattr_* functions.
+
+
+- a new attribute for mutexes: number of times we spin before calling
+sys_futex
+
+- for adaptive mutexes: when releasing, determine whether somebody spins.
+If yes, for a short time release lock. If someone else locks no wakeup
+syscall needed.
+
+
+
+- test with threaded process terminating and semadj (?) being applied
+ only after all threads are gone
+
+
+
+- semaphore changes:
+
+ - sem_post should only wake one thread and only when the state of
+ the semaphore changed from 0 to 1
+
+ this also requires that sem_wait and sem_timedwait don't drop the
+ post if they get canceled.
+
+ - possibly add counter field. This requires reviving the
+ differences between old and new semaphose funtions. The old ones
+ stay as they are now. The new once can use an additional field
+ wich is the counter for the number of waiters