mirror of https://gitee.com/openkylin/linux.git
Documentation: seqlock: s/LOCKTYPE/LOCKNAME/g
Sequence counters with an associated write serialization lock are called
seqcount_LOCKNAME_t. Fix the documentation accordingly.
While at it, remove a paragraph that inappropriately discussed a
seqlock.h implementation detail.
Fixes: 6dd699b13d
("seqlock: seqcount_LOCKNAME_t: Standardize naming convention")
Signed-off-by: Ahmed S. Darwish <a.darwish@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: stable@vger.kernel.org
Link: https://lkml.kernel.org/r/20201206162143.14387-2-a.darwish@linutronix.de
This commit is contained in:
parent
617f3ef951
commit
cf48647243
|
@ -89,7 +89,7 @@ Read path::
|
||||||
|
|
||||||
.. _seqcount_locktype_t:
|
.. _seqcount_locktype_t:
|
||||||
|
|
||||||
Sequence counters with associated locks (``seqcount_LOCKTYPE_t``)
|
Sequence counters with associated locks (``seqcount_LOCKNAME_t``)
|
||||||
-----------------------------------------------------------------
|
-----------------------------------------------------------------
|
||||||
|
|
||||||
As discussed at :ref:`seqcount_t`, sequence count write side critical
|
As discussed at :ref:`seqcount_t`, sequence count write side critical
|
||||||
|
@ -115,27 +115,26 @@ The following sequence counters with associated locks are defined:
|
||||||
- ``seqcount_mutex_t``
|
- ``seqcount_mutex_t``
|
||||||
- ``seqcount_ww_mutex_t``
|
- ``seqcount_ww_mutex_t``
|
||||||
|
|
||||||
The plain seqcount read and write APIs branch out to the specific
|
The sequence counter read and write APIs can take either a plain
|
||||||
seqcount_LOCKTYPE_t implementation at compile-time. This avoids kernel
|
seqcount_t or any of the seqcount_LOCKNAME_t variants above.
|
||||||
API explosion per each new seqcount LOCKTYPE.
|
|
||||||
|
|
||||||
Initialization (replace "LOCKTYPE" with one of the supported locks)::
|
Initialization (replace "LOCKNAME" with one of the supported locks)::
|
||||||
|
|
||||||
/* dynamic */
|
/* dynamic */
|
||||||
seqcount_LOCKTYPE_t foo_seqcount;
|
seqcount_LOCKNAME_t foo_seqcount;
|
||||||
seqcount_LOCKTYPE_init(&foo_seqcount, &lock);
|
seqcount_LOCKNAME_init(&foo_seqcount, &lock);
|
||||||
|
|
||||||
/* static */
|
/* static */
|
||||||
static seqcount_LOCKTYPE_t foo_seqcount =
|
static seqcount_LOCKNAME_t foo_seqcount =
|
||||||
SEQCNT_LOCKTYPE_ZERO(foo_seqcount, &lock);
|
SEQCNT_LOCKNAME_ZERO(foo_seqcount, &lock);
|
||||||
|
|
||||||
/* C99 struct init */
|
/* C99 struct init */
|
||||||
struct {
|
struct {
|
||||||
.seq = SEQCNT_LOCKTYPE_ZERO(foo.seq, &lock),
|
.seq = SEQCNT_LOCKNAME_ZERO(foo.seq, &lock),
|
||||||
} foo;
|
} foo;
|
||||||
|
|
||||||
Write path: same as in :ref:`seqcount_t`, while running from a context
|
Write path: same as in :ref:`seqcount_t`, while running from a context
|
||||||
with the associated LOCKTYPE lock acquired.
|
with the associated write serialization lock acquired.
|
||||||
|
|
||||||
Read path: same as in :ref:`seqcount_t`.
|
Read path: same as in :ref:`seqcount_t`.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue