On Sat, 17 Aug 2013 15:31:15 -0400 Johannes Weiner <hannes@xxxxxxxxxxx> wrote: > Provide a function that does not just delete an entry at a given > index, but also allows passing in an expected item. Delete only if > that item is still located at the specified index. > > This is handy when lockless tree traversals want to delete entries as > well because they don't have to do an second, locked lookup to verify > the slot has not changed under them before deleting the entry. > > ... > > -void *radix_tree_delete(struct radix_tree_root *root, unsigned long index) > +void *radix_tree_delete_item(struct radix_tree_root *root, > + unsigned long index, void *item) radix-tree is an exported-to-modules API, so I guess we should do this so others don't need to.. --- a/lib/radix-tree.c~lib-radix-tree-radix_tree_delete_item-fix +++ a/lib/radix-tree.c @@ -1393,6 +1393,7 @@ void *radix_tree_delete_item(struct radi out: return slot; } +EXPORT_SYMBOL(radix_tree_delete_item); /** * radix_tree_delete - delete an item from a radix tree _ -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html