Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
glibc/nptl/TODO
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
31 lines (19 sloc)
1007 Bytes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- 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 |