futex API docs?
Hi all!
I've been trying to understand how futexes work looking at the last dev. kernel. I've not found any docs. Are there any?
Basically:
P (fast P sem op):
if (atomic_decrement(sem)<0)
sys_futex(..,FUTEX_WAIT,....);V (fast V sem op):
if (atomic_increment(sem)<=0)
sys_futex(..,FUTEX_WAKE,....);Futexes need be counting semaphores since there could be WAKEs in the middle of atomic_decrements and WAITs (not atomic) but I do not see this in the code. I can't find the kernel counter in the sources
Can anybody help me?
Many thanks in advance
Please CC to my e-mail since I'm not subscribed.
Cheers
Francesc