Each text file under Documentation follows a different
format. Some doesn't even have titles!
Change its representation to follow the adopted standard,
using ReST markups for it to be parseable by Sphinx:
- promote document title;
- use :Author: for authorship;
- mark literal blocks;
- add blank lines.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
-Started by Paul Jackson <pj@sgi.com>
-
+====================
+
+:Author: Started by Paul Jackson <pj@sgi.com>
+
Robust_futexes provide a mechanism that is used in addition to normal
futexes, for kernel assist of cleanup of held locks on task exit.
Robust_futexes provide a mechanism that is used in addition to normal
futexes, for kernel assist of cleanup of held locks on task exit.
waiting on the same locks.
A thread that anticipates possibly using robust_futexes should first
waiting on the same locks.
A thread that anticipates possibly using robust_futexes should first
asmlinkage long
sys_set_robust_list(struct robust_list_head __user *head, size_t len);
asmlinkage long
sys_set_robust_list(struct robust_list_head __user *head, size_t len);
When a thread has invoked the above system call to indicate it
anticipates using robust_futexes, the kernel stores the passed in 'head'
pointer for that task. The task may retrieve that value later on by
When a thread has invoked the above system call to indicate it
anticipates using robust_futexes, the kernel stores the passed in 'head'
pointer for that task. The task may retrieve that value later on by
asmlinkage long
sys_get_robust_list(int pid, struct robust_list_head __user **head_ptr,
asmlinkage long
sys_get_robust_list(int pid, struct robust_list_head __user **head_ptr,
protocol on 'lock entry' insertion and removal:
On insertion:
protocol on 'lock entry' insertion and removal:
On insertion:
1) set the 'list_op_pending' word to the address of the 'lock entry'
to be inserted,
2) acquire the futex lock,
1) set the 'list_op_pending' word to the address of the 'lock entry'
to be inserted,
2) acquire the futex lock,
4) clear the 'list_op_pending' word.
On removal:
4) clear the 'list_op_pending' word.
On removal:
1) set the 'list_op_pending' word to the address of the 'lock entry'
to be removed,
2) remove the lock entry for this lock from the 'head' list,
1) set the 'list_op_pending' word to the address of the 'lock entry'
to be removed,
2) remove the lock entry for this lock from the 'head' list,