Documentation/locking/locktypes: Minor copy editor fixes
Minor editorial fixes: - remove 'enabled' from PREEMPT_RT enabled kernels for consistency - add some periods for consistency - add "'" for possessive CPU's - spell out interrupts [ tglx: Picked up Paul's suggestions ] Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Paul E. McKenney <paulmck@kernel.org> Link: https://lkml.kernel.org/r/ac615f36-0b44-408d-aeab-d76e4241add4@infradead.org
This commit is contained in:
parent
7ecc6aa522
commit
51e69e6551
|
@ -84,7 +84,7 @@ rtmutex
|
||||||
|
|
||||||
RT-mutexes are mutexes with support for priority inheritance (PI).
|
RT-mutexes are mutexes with support for priority inheritance (PI).
|
||||||
|
|
||||||
PI has limitations on non PREEMPT_RT enabled kernels due to preemption and
|
PI has limitations on non-PREEMPT_RT kernels due to preemption and
|
||||||
interrupt disabled sections.
|
interrupt disabled sections.
|
||||||
|
|
||||||
PI clearly cannot preempt preemption-disabled or interrupt-disabled
|
PI clearly cannot preempt preemption-disabled or interrupt-disabled
|
||||||
|
@ -150,7 +150,7 @@ kernel configuration including PREEMPT_RT enabled kernels.
|
||||||
|
|
||||||
raw_spinlock_t is a strict spinning lock implementation in all kernels,
|
raw_spinlock_t is a strict spinning lock implementation in all kernels,
|
||||||
including PREEMPT_RT kernels. Use raw_spinlock_t only in real critical
|
including PREEMPT_RT kernels. Use raw_spinlock_t only in real critical
|
||||||
core code, low level interrupt handling and places where disabling
|
core code, low-level interrupt handling and places where disabling
|
||||||
preemption or interrupts is required, for example, to safely access
|
preemption or interrupts is required, for example, to safely access
|
||||||
hardware state. raw_spinlock_t can sometimes also be used when the
|
hardware state. raw_spinlock_t can sometimes also be used when the
|
||||||
critical section is tiny, thus avoiding RT-mutex overhead.
|
critical section is tiny, thus avoiding RT-mutex overhead.
|
||||||
|
@ -160,20 +160,20 @@ spinlock_t
|
||||||
|
|
||||||
The semantics of spinlock_t change with the state of PREEMPT_RT.
|
The semantics of spinlock_t change with the state of PREEMPT_RT.
|
||||||
|
|
||||||
On a non PREEMPT_RT enabled kernel spinlock_t is mapped to raw_spinlock_t
|
On a non-PREEMPT_RT kernel spinlock_t is mapped to raw_spinlock_t and has
|
||||||
and has exactly the same semantics.
|
exactly the same semantics.
|
||||||
|
|
||||||
spinlock_t and PREEMPT_RT
|
spinlock_t and PREEMPT_RT
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
On a PREEMPT_RT enabled kernel spinlock_t is mapped to a separate
|
On a PREEMPT_RT kernel spinlock_t is mapped to a separate implementation
|
||||||
implementation based on rt_mutex which changes the semantics:
|
based on rt_mutex which changes the semantics:
|
||||||
|
|
||||||
- Preemption is not disabled
|
- Preemption is not disabled.
|
||||||
|
|
||||||
- The hard interrupt related suffixes for spin_lock / spin_unlock
|
- The hard interrupt related suffixes for spin_lock / spin_unlock
|
||||||
operations (_irq, _irqsave / _irqrestore) do not affect the CPUs
|
operations (_irq, _irqsave / _irqrestore) do not affect the CPU's
|
||||||
interrupt disabled state
|
interrupt disabled state.
|
||||||
|
|
||||||
- The soft interrupt related suffix (_bh()) still disables softirq
|
- The soft interrupt related suffix (_bh()) still disables softirq
|
||||||
handlers.
|
handlers.
|
||||||
|
@ -279,8 +279,8 @@ fully preemptible context. Instead, use spin_lock_irq() or
|
||||||
spin_lock_irqsave() and their unlock counterparts. In cases where the
|
spin_lock_irqsave() and their unlock counterparts. In cases where the
|
||||||
interrupt disabling and locking must remain separate, PREEMPT_RT offers a
|
interrupt disabling and locking must remain separate, PREEMPT_RT offers a
|
||||||
local_lock mechanism. Acquiring the local_lock pins the task to a CPU,
|
local_lock mechanism. Acquiring the local_lock pins the task to a CPU,
|
||||||
allowing things like per-CPU irq-disabled locks to be acquired. However,
|
allowing things like per-CPU interrupt disabled locks to be acquired.
|
||||||
this approach should be used only where absolutely necessary.
|
However, this approach should be used only where absolutely necessary.
|
||||||
|
|
||||||
|
|
||||||
raw_spinlock_t
|
raw_spinlock_t
|
||||||
|
|
Loading…
Reference in New Issue