radix tree test suite: Add tests for ida_simple_get() and ida_simple_remove()
Assert that ida_simple_get() allocates an id in the passed range or returns error on failure, and ida_simple_remove() releases an allocated id. Signed-off-by: Rehas Sachdeva <aquannie@gmail.com> Signed-off-by: Matthew Wilcox <mawilcox@microsoft.com>
This commit is contained in:
parent
2eacc79c27
commit
166bb1f532
|
@ -387,6 +387,24 @@ void ida_check_random(void)
|
||||||
goto repeat;
|
goto repeat;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ida_simple_get_remove_test(void)
|
||||||
|
{
|
||||||
|
DEFINE_IDA(ida);
|
||||||
|
unsigned long i;
|
||||||
|
|
||||||
|
for (i = 0; i < 10000; i++) {
|
||||||
|
assert(ida_simple_get(&ida, 0, 20000, GFP_KERNEL) == i);
|
||||||
|
}
|
||||||
|
assert(ida_simple_get(&ida, 5, 30, GFP_KERNEL) < 0);
|
||||||
|
|
||||||
|
for (i = 0; i < 10000; i++) {
|
||||||
|
ida_simple_remove(&ida, i);
|
||||||
|
}
|
||||||
|
assert(ida_is_empty(&ida));
|
||||||
|
|
||||||
|
ida_destroy(&ida);
|
||||||
|
}
|
||||||
|
|
||||||
void ida_checks(void)
|
void ida_checks(void)
|
||||||
{
|
{
|
||||||
DEFINE_IDA(ida);
|
DEFINE_IDA(ida);
|
||||||
|
@ -453,6 +471,7 @@ void ida_checks(void)
|
||||||
ida_check_max();
|
ida_check_max();
|
||||||
ida_check_conv();
|
ida_check_conv();
|
||||||
ida_check_random();
|
ida_check_random();
|
||||||
|
ida_simple_get_remove_test();
|
||||||
|
|
||||||
radix_tree_cpu_dead(1);
|
radix_tree_cpu_dead(1);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue