0d24f65e93
Proper documentation for the design and usage of sequence counters and sequential locks does not exist. Complete the seqlock.h documentation as follows: - Divide all documentation on a seqcount_t vs. seqlock_t basis. The description for both mechanisms was intermingled, which is incorrect since the usage constrains for each type are vastly different. - Add an introductory paragraph describing the internal design of, and rationale for, sequence counters. - Document seqcount_t writer non-preemptibility requirement, which was not previously documented anywhere, and provide a clear rationale. - Provide template code for seqcount_t and seqlock_t initialization and reader/writer critical sections. - Recommend using seqlock_t by default. It implicitly handles the serialization and non-preemptibility requirements of writers. At seqlock.h: - Remove references to brlocks as they've long been removed from the kernel. - Remove references to gcc-3.x since the kernel's minimum supported gcc version is 4.9. References:0f6ed63b17
("no need to keep brlock macros anymore...") References:6ec4476ac8
("Raise gcc version requirement to 4.9") Signed-off-by: Ahmed S. Darwish <a.darwish@linutronix.de> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://lkml.kernel.org/r/20200720155530.1173732-2-a.darwish@linutronix.de
34 lines
461 B
ReStructuredText
34 lines
461 B
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0
|
|
|
|
=======
|
|
locking
|
|
=======
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
locktypes
|
|
lockdep-design
|
|
lockstat
|
|
locktorture
|
|
mutex-design
|
|
rt-mutex-design
|
|
rt-mutex
|
|
seqlock
|
|
spinlocks
|
|
ww-mutex-design
|
|
preempt-locking
|
|
pi-futex
|
|
futex-requeue-pi
|
|
hwspinlock
|
|
percpu-rw-semaphore
|
|
robust-futexes
|
|
robust-futex-ABI
|
|
|
|
.. only:: subproject and html
|
|
|
|
Indices
|
|
=======
|
|
|
|
* :ref:`genindex`
|