ma_set_slot(mas, i);
return found;
}
+
/*
* Private: Returns true if mas->node is a leaf
*/
ma_set_slot(mas, i);
return ret;
}
+
static inline bool _mas_walk(struct ma_state *mas)
{
mas->node = mas_start(mas);
}
return false;
}
+
static inline int mas_dead_node(struct ma_state *mas, unsigned long index)
{
if (!mt_dead_node(mas->node))
not_found:
mas->node = MAS_NONE;
return NULL;
-
-
}
+EXPORT_SYMBOL_GPL(mas_find);
+
/**
* mas_pause() - Pause a mas_find/mas_for_each to drop the lock.
*
mas->index = mas->last + 1;
mas->last++;
}
+EXPORT_SYMBOL_GPL(mas_pause);
+
/* mt_find() - Search from start up until an entry is found.
*
* Note: Does not return the zero entry.
return entry;
}
+EXPORT_SYMBOL(mt_find);
/* mt_find_after() - Search up from the entry of index until an entry is
* found.
return entry;
}
+EXPORT_SYMBOL(mt_find_after);
+
static inline void ma_inactive_insert(struct ma_state *mas, void *entry);
static inline int mas_replace_tree(struct ma_state *mas, void *new_entry)
{
return 0;
}
EXPORT_SYMBOL(mtree_store_range);
+
int mtree_store(struct maple_tree *mt, unsigned long index, void *entry,
gfp_t gfp)
{
if (mas.node)
return 0;
return ret;
-
}
+
int mtree_erase(struct maple_tree *mt, unsigned long index)
{
int ret = -EINVAL;