The following commit has been merged into the locking/core branch of tip: Commit-ID: 51e69e6551a8c6fffe0185ba305bb4e2d7223616 Gitweb: https://git.kernel.org/tip/51e69e6551a8c6fffe0185ba305bb4e2d7223616 Author: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> AuthorDate: Wed, 25 Mar 2020 09:58:14 -07:00 Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx> CommitterDate: Sat, 28 Mar 2020 12:47:34 +01:00 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@xxxxxxxxxxxxx> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Reviewed-by: Paul E. McKenney <paulmck@xxxxxxxxxx> Link: https://lkml.kernel.org/r/ac615f36-0b44-408d-aeab-d76e4241add4@xxxxxxxxxxxxx --- Documentation/locking/locktypes.rst | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Documentation/locking/locktypes.rst b/Documentation/locking/locktypes.rst index 1c18bb8..09f45ce 100644 --- a/Documentation/locking/locktypes.rst +++ b/Documentation/locking/locktypes.rst @@ -84,7 +84,7 @@ rtmutex 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. 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, 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 hardware state. raw_spinlock_t can sometimes also be used when the 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. -On a non PREEMPT_RT enabled kernel spinlock_t is mapped to raw_spinlock_t -and has exactly the same semantics. +On a non-PREEMPT_RT kernel spinlock_t is mapped to raw_spinlock_t and has +exactly the same semantics. spinlock_t and PREEMPT_RT ------------------------- -On a PREEMPT_RT enabled kernel spinlock_t is mapped to a separate -implementation based on rt_mutex which changes the semantics: +On a PREEMPT_RT kernel spinlock_t is mapped to a separate implementation +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 - operations (_irq, _irqsave / _irqrestore) do not affect the CPUs - interrupt disabled state + operations (_irq, _irqsave / _irqrestore) do not affect the CPU's + interrupt disabled state. - The soft interrupt related suffix (_bh()) still disables softirq 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 interrupt disabling and locking must remain separate, PREEMPT_RT offers a 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, -this approach should be used only where absolutely necessary. +allowing things like per-CPU interrupt disabled locks to be acquired. +However, this approach should be used only where absolutely necessary. raw_spinlock_t
![]() |