tree cb13f4d0d9040120b5ef6a90c8b174a0619756d0
parent 201b6264ff3865090747f58f48e087c3a35e0dbc
author Marcelo Tosatti <[EMAIL PROTECTED]> Wed, 07 Sep 2005 05:16:48 -0700
committer Linus Torvalds <[EMAIL PROTECTED]> Thu, 08 Sep 2005 06:57:21 -0700

[PATCH] radix_tag_get(): differentiate between no present node and tag unset 
cases

Simple patch to radix_tree_tag_get() to return different values for non
present node and tag unset.

The function is not used by any in-kernel callers (yet), but this
information is definitely useful.

Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>

 lib/radix-tree.c |   17 +++++++++--------
 1 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/lib/radix-tree.c b/lib/radix-tree.c
--- a/lib/radix-tree.c
+++ b/lib/radix-tree.c
@@ -418,15 +418,16 @@ EXPORT_SYMBOL(radix_tree_tag_clear);
 
 #ifndef __KERNEL__     /* Only the test harness uses this at present */
 /**
- *     radix_tree_tag_get - get a tag on a radix tree node
- *     @root:          radix tree root
- *     @index:         index key
- *     @tag:           tag index
+ * radix_tree_tag_get - get a tag on a radix tree node
+ * @root:              radix tree root
+ * @index:             index key
+ * @tag:               tag index
  *
- *     Return the search tag corresponging to @index in the radix tree.
+ * Return values:
  *
- *     Returns zero if the tag is unset, or if there is no corresponding item
- *     in the tree.
+ *  0: tag not present
+ *  1: tag present, set
+ * -1: tag present, unset
  */
 int radix_tree_tag_get(struct radix_tree_root *root,
                        unsigned long index, int tag)
@@ -460,7 +461,7 @@ int radix_tree_tag_get(struct radix_tree
                        int ret = tag_get(slot, tag, offset);
 
                        BUG_ON(ret && saw_unset_tag);
-                       return ret;
+                       return ret ? 1 : -1;
                }
                slot = slot->slots[offset];
                shift -= RADIX_TREE_MAP_SHIFT;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to