Most of the code suggests that it is valid to insert a NULL item, possibly a zero item with pointer cast. However, in __lookup_slot() whether or not the slot is found seems to depend on the actual value of the item in one special case. But further on it doesn't make any difference so to remove some dead code:
--- a/lib/radix-tree.c 2006-12-03 13:23:00.000000000 +0100 +++ b/lib/radix-tree.c 2006-12-03 17:57:03.000000000 +0100 @@ -319,9 +319,6 @@ static inline void **__lookup_slot(struc if (index > radix_tree_maxindex(height)) return NULL; - if (height == 0 && root->rnode) - return (void **)&root->rnode; - shift = (height-1) * RADIX_TREE_MAP_SHIFT; slot = &root->rnode; -- Frank - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/