void *mas_next(struct ma_state *mas, unsigned long max);
/* Finds a sufficient hole */
-int mas_get_empty_area(struct ma_state *mas, unsigned long min,
- unsigned long max, unsigned long size);
+int mas_empty_area(struct ma_state *mas, unsigned long min, unsigned long max,
+ unsigned long size);
/* Checks if a mas has not found anything */
static inline bool mas_is_none(struct ma_state *mas)
/* This finds an empty area from the highest address to the lowest.
* AKA "Topdown" version,
*/
-int mas_get_empty_area_rev(struct ma_state *mas, unsigned long min,
- unsigned long max, unsigned long size);
+int mas_empty_area_rev(struct ma_state *mas, unsigned long min,
+ unsigned long max, unsigned long size);
/**
* mas_reset() - Reset a Maple Tree operation state.
* @mas: Maple Tree operation state.
#ifdef CONFIG_DEBUG_MAPLE_TREE
-extern unsigned int maple_tree_tests_run;
-extern unsigned int maple_tree_tests_passed;
+extern atomic_t maple_tree_tests_run;
+extern atomic_t maple_tree_tests_passed;
void mt_dump(const struct maple_tree *mt);
#define MT_BUG_ON(tree, x) do { \
- uatomic_inc(&maple_tree_tests_run); \
+ atomic_inc(&maple_tree_tests_run); \
if (x) { \
pr_info("BUG at %s:%d (%u)\n", \
__func__, __LINE__, x); \
mt_dump(tree); \
- pr_info("Pass: %u Run:%u\n", maple_tree_tests_passed, \
- maple_tree_tests_run); \
+ pr_info("Pass: %u Run:%u\n", \
+ atomic_read(&maple_tree_tests_passed), \
+ atomic_read(&maple_tree_tests_run)); \
dump_stack(); \
} else { \
- uatomic_inc(&maple_tree_tests_passed); \
+ atomic_inc(&maple_tree_tests_passed); \
} \
} while (0)
#else
EXPORT_SYMBOL(mt_find);
#ifdef CONFIG_DEBUG_MAPLE_TREE
-unsigned int maple_tree_tests_run;
+atomic_t maple_tree_tests_run;
EXPORT_SYMBOL_GPL(maple_tree_tests_run);
-unsigned int maple_tree_tests_passed;
+atomic_t maple_tree_tests_passed;
EXPORT_SYMBOL_GPL(maple_tree_tests_passed);
#ifndef __KERNEL__
{
return kmem_cache_get_alloc(maple_node_cache);
}
+
#define MA_PTR "%p"
#else // __KERNEL__ is defined.
#define MA_PTR "%px"