[PATCH] docbook: some kernel-locking fixes

From: Randy Dunlap
Date: Wed Apr 02 2008 - 17:53:54 EST


From: Matti Linnanvuori <mattilinnanvuori@xxxxxxxxx>

Fix a wrong path. Add a chapter about try functions.

http://bugzilla.kernel.org/show_bug.cgi?id=9011

Signed-off-by: Matti Linnanvuori <mattilinnanvuori@xxxxxxxxx>
Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx>

---
Documentation/DocBook/kernel-locking.tmpl | 25 +++++++++++++++++++-
1 file changed, 24 insertions(+), 1 deletion(-)

--- lin2625-rc8-kdoc.orig/Documentation/DocBook/kernel-locking.tmpl
+++ lin2625-rc8-kdoc/Documentation/DocBook/kernel-locking.tmpl
@@ -290,7 +290,7 @@
<para>
If you have a data structure which is only ever accessed from
user context, then you can use a simple semaphore
- (<filename>linux/asm/semaphore.h</filename>) to protect it. This
+ (<filename>include/asm/semaphore.h</filename>) to protect it. This
is the most trivial case: you initialize the semaphore to the number
of resources available (usually 1), and call
<function>down_interruptible()</function> to grab the semaphore, and
@@ -703,6 +703,29 @@
</sect1>
</chapter>

+<chapter id="try-variants">
+ <title>The try variants</title>
+
+ <para>
+ <function>spin_trylock()</function> does not spin but returns non-zero if
+ it acquires the spinlock on the first try or 0 if not.
+ </para>
+
+ <para>
+ <function>mutex_trylock()</function> does not suspend your task
+ but returns non-zero if it could lock the mutex on the first try
+ or 0 if not.
+ </para>
+
+ <para>
+ <function>down_trylock()</function> does not suspend your task
+ but returns 0 if it could get the semaphore on the first try or
+ non-zero if not. The return value is the inverse of that of
+ <function>spin_trylock()</function> and <function>mutex_trylock()
+ </function>.
+ </para>
+</chapter>
+
<chapter id="Examples">
<title>Common Examples</title>
<para>


---
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/