- slot = radix_tree_iter_find(&idr->idr_rt, &iter, *nextid);
+ radix_tree_for_each_slot(slot, &idr->idr_rt, &iter, *nextid) {
-+ entry = radix_tree_deref_slot(slot);
++ entry = rcu_dereference_raw(*slot);
+ if (!entry)
+ continue;
+ if (!radix_tree_deref_retry(entry))
id = (id < base) ? 0 : id - base;
- slot = radix_tree_iter_find(&idr->idr_rt, &iter, id);
+ radix_tree_for_each_slot(slot, &idr->idr_rt, &iter, id) {
-+ entry = radix_tree_deref_slot(slot);
++ entry = rcu_dereference_raw(*slot);
+ if (!entry)
+ continue;
+ if (!radix_tree_deref_retry(entry))