[prev in list] [next in list] [prev in thread] [next in thread] 

List:       git-commits-head
Subject:    Documentation/locking/locktypes: fix local_locks documentation
From:       Linux Kernel Mailing List <linux-kernel () vger ! kernel ! org>
Date:       2020-08-31 19:48:42
Message-ID: git-mailbomb-linux-master-94dea151bf3651c01acb12a38ca75ba9d26ea4da () kernel ! org
[Download RAW message or body]

Commit:     94dea151bf3651c01acb12a38ca75ba9d26ea4da
Parent:     9123e3a74ec7b934a4a099e98af6a61c2f80bbf5
Refname:    refs/heads/master
Web:        https://git.kernel.org/torvalds/c/94dea151bf3651c01acb12a38ca75ba9d26ea4da
Author:     Marta Rybczynska <rybczynska@gmail.com>
AuthorDate: Sun Jul 26 20:54:40 2020 +0200
Committer:  Jonathan Corbet <corbet@lwn.net>
CommitDate: Mon Aug 24 17:18:51 2020 -0600

    Documentation/locking/locktypes: fix local_locks documentation
    
    Fix issues with local_locks documentation:
    - fix function names, local_lock.h has local_unlock_irqrestore(),
    not local_lock_irqrestore()
    - fix mapping table, local_unlock_irqrestore() maps to local_irq_restore(),
    not _save()
    
    Signed-off-by: Marta Rybczynska <rybczynska@gmail.com>
    Acked-by: Will Deacon <will@kernel.org>
    Link: https://lore.kernel.org/r/CAApg2=SKxQ3Sqwj6TZnV-0x0cKLXFKDaPvXT4N15MPDMKq724g@mail.gmail.com
    Signed-off-by: Jonathan Corbet <corbet@lwn.net>
---
 Documentation/locking/locktypes.rst | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/Documentation/locking/locktypes.rst b/Documentation/locking/locktypes.rst
index 4cefed8048ca..ddada4a53749 100644
--- a/Documentation/locking/locktypes.rst
+++ b/Documentation/locking/locktypes.rst
@@ -164,14 +164,14 @@ by disabling preemption or interrupts.
 On non-PREEMPT_RT kernels local_lock operations map to the preemption and
 interrupt disabling and enabling primitives:
 
- =========================== ======================
- local_lock(&llock)          preempt_disable()
- local_unlock(&llock)        preempt_enable()
- local_lock_irq(&llock)      local_irq_disable()
- local_unlock_irq(&llock)    local_irq_enable()
- local_lock_save(&llock)     local_irq_save()
- local_lock_restore(&llock)  local_irq_save()
- =========================== ======================
+ ===============================  ======================
+ local_lock(&llock)               preempt_disable()
+ local_unlock(&llock)             preempt_enable()
+ local_lock_irq(&llock)           local_irq_disable()
+ local_unlock_irq(&llock)         local_irq_enable()
+ local_lock_irqsave(&llock)       local_irq_save()
+ local_unlock_irqrestore(&llock)  local_irq_restore()
+ ===============================  ======================
 
 The named scope of local_lock has two advantages over the regular
 primitives:
@@ -353,14 +353,14 @@ protection scope. So the following substitution is wrong::
   {
     local_irq_save(flags);    -> local_lock_irqsave(&local_lock_1, flags);
     func3();
-    local_irq_restore(flags); -> local_lock_irqrestore(&local_lock_1, flags);
+    local_irq_restore(flags); -> local_unlock_irqrestore(&local_lock_1, flags);
   }
 
   func2()
   {
     local_irq_save(flags);    -> local_lock_irqsave(&local_lock_2, flags);
     func3();
-    local_irq_restore(flags); -> local_lock_irqrestore(&local_lock_2, flags);
+    local_irq_restore(flags); -> local_unlock_irqrestore(&local_lock_2, flags);
   }
 
   func3()
@@ -379,14 +379,14 @@ PREEMPT_RT-specific semantics of spinlock_t. The correct substitution is::
   {
     local_irq_save(flags);    -> local_lock_irqsave(&local_lock, flags);
     func3();
-    local_irq_restore(flags); -> local_lock_irqrestore(&local_lock, flags);
+    local_irq_restore(flags); -> local_unlock_irqrestore(&local_lock, flags);
   }
 
   func2()
   {
     local_irq_save(flags);    -> local_lock_irqsave(&local_lock, flags);
     func3();
-    local_irq_restore(flags); -> local_lock_irqrestore(&local_lock, flags);
+    local_irq_restore(flags); -> local_unlock_irqrestore(&local_lock, flags);
   }
 
   func3()
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic