about summary refs log tree commit diff
path: root/REORG.TODO/nptl/TODO
diff options
context:
space:
mode:
Diffstat (limited to 'REORG.TODO/nptl/TODO')
-rw-r--r--REORG.TODO/nptl/TODO31
1 files changed, 31 insertions, 0 deletions
diff --git a/REORG.TODO/nptl/TODO b/REORG.TODO/nptl/TODO
new file mode 100644
index 0000000000..70b8fe4f76
--- /dev/null
+++ b/REORG.TODO/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