Index: linux-2.6/lib/radix-tree.c =================================================================== --- linux-2.6.orig/lib/radix-tree.c 2006-01-03 19:05:57.000000000 +1100 +++ linux-2.6/lib/radix-tree.c 2006-01-17 15:17:36.000000000 +1100 @@ -233,6 +233,8 @@ int radix_tree_insert(struct radix_tree_ int offset; int error; + BUG_ON((unsigned long)item < PAGE_OFFSET); + /* Make sure the tree is high enough. */ if ((!index && !root->rnode) || index > radix_tree_maxindex(root->height)) { @@ -334,6 +336,8 @@ void *radix_tree_lookup(struct radix_tre void **slot; slot = __lookup_slot(root, index); + if (slot && *slot) + BUG_ON((unsigned long)(*slot) < PAGE_OFFSET); return slot != NULL ? *slot : NULL; } EXPORT_SYMBOL(radix_tree_lookup);