* [PATCH] docbook: some kernel-locking fixes
@ 2008-04-02 21:47 Randy Dunlap
2008-04-03 23:39 ` Rusty Russell
0 siblings, 1 reply; 2+ messages in thread
From: Randy Dunlap @ 2008-04-02 21:47 UTC (permalink / raw)
To: lkml; +Cc: rusty, akpm, mattilinnanvuori
From: Matti Linnanvuori <mattilinnanvuori@yahoo.com>
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@yahoo.com>
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
---
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>
---
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] docbook: some kernel-locking fixes
2008-04-02 21:47 [PATCH] docbook: some kernel-locking fixes Randy Dunlap
@ 2008-04-03 23:39 ` Rusty Russell
0 siblings, 0 replies; 2+ messages in thread
From: Rusty Russell @ 2008-04-03 23:39 UTC (permalink / raw)
To: Randy Dunlap; +Cc: lkml, akpm, mattilinnanvuori
On Thursday 03 April 2008 07:47:50 Randy Dunlap wrote:
> From: Matti Linnanvuori <mattilinnanvuori@yahoo.com>
> +<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>
OK, other than documenting the inconsistent horror of down_trylock, I don't
like this patch. This document is not about documenting the functions, but
providing an overview and pointing to them (where you can read to your
heart's content).
This is a worthy addition, but it's a paragraph, not a chapter. Unless you
want to document why you would use the trylock variants (can mutex_trylock
and down_trylock be used from interrupt context? Or are they only useful to
avoid deadlock? How are they actually used in the kernel?)
Thanks,
Rusty.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-04-03 23:39 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-04-02 21:47 [PATCH] docbook: some kernel-locking fixes Randy Dunlap
2008-04-03 23:39 ` Rusty Russell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome