diff --git a/[refs] b/[refs]
index f8be717a46d3..465f79c06617 100644
--- a/[refs]
+++ b/[refs]
@@ -1,2 +1,2 @@
---
-refs/heads/master: 3dd1a32968d5e4cc61d4f7e3dc396ed0faca6984
+refs/heads/master: 621e59a771f310358ade8f14cb745d5d5f1c410e
diff --git a/trunk/Documentation/DocBook/kernel-locking.tmpl b/trunk/Documentation/DocBook/kernel-locking.tmpl
index 644c3884fab9..0a441f73261a 100644
--- a/trunk/Documentation/DocBook/kernel-locking.tmpl
+++ b/trunk/Documentation/DocBook/kernel-locking.tmpl
@@ -551,10 +551,12 @@
spin_lock_irqsave(), which is a superset
of all other spinlock primitives.
+
Table of Locking Requirements
+
IRQ Handler A
@@ -576,97 +578,128 @@
IRQ Handler B
-spin_lock_irqsave
+SLIS
None
Softirq A
-spin_lock_irq
-spin_lock_irq
-spin_lock
+SLI
+SLI
+SL
Softirq B
-spin_lock_irq
-spin_lock_irq
-spin_lock
-spin_lock
+SLI
+SLI
+SL
+SL
Tasklet A
-spin_lock_irq
-spin_lock_irq
-spin_lock
-spin_lock
+SLI
+SLI
+SL
+SL
None
Tasklet B
-spin_lock_irq
-spin_lock_irq
-spin_lock
-spin_lock
-spin_lock
+SLI
+SLI
+SL
+SL
+SL
None
Timer A
-spin_lock_irq
-spin_lock_irq
-spin_lock
-spin_lock
-spin_lock
-spin_lock
+SLI
+SLI
+SL
+SL
+SL
+SL
None
Timer B
-spin_lock_irq
-spin_lock_irq
-spin_lock
-spin_lock
-spin_lock
-spin_lock
-spin_lock
+SLI
+SLI
+SL
+SL
+SL
+SL
+SL
None
User Context A
-spin_lock_irq
-spin_lock_irq
-spin_lock_bh
-spin_lock_bh
-spin_lock_bh
-spin_lock_bh
-spin_lock_bh
-spin_lock_bh
+SLI
+SLI
+SLBH
+SLBH
+SLBH
+SLBH
+SLBH
+SLBH
None
User Context B
+SLI
+SLI
+SLBH
+SLBH
+SLBH
+SLBH
+SLBH
+SLBH
+DI
+None
+
+
+
+
+
+
+
+Legend for Locking Requirements Table
+
+
+
+
+SLIS
+spin_lock_irqsave
+
+
+SLI
spin_lock_irq
-spin_lock_irq
-spin_lock_bh
-spin_lock_bh
-spin_lock_bh
-spin_lock_bh
-spin_lock_bh
+
+
+SL
+spin_lock
+
+
+SLBH
spin_lock_bh
+
+
+DI
down_interruptible
-None
+