blob: c85f6600a5f8de355fb0ce531f027ef29d6aae5c [file] [log] [blame]
Michel Lespinassefff3fd82012-10-08 16:31:23 -07001#include <linux/interval_tree.h>
Michel Lespinasse9826a512012-10-08 16:31:35 -07002#include <linux/interval_tree_generic.h>
Rasmus Villemoes85c5e272015-02-12 15:02:32 -08003#include <linux/compiler.h>
4#include <linux/export.h>
Michel Lespinassefff3fd82012-10-08 16:31:23 -07005
Michel Lespinasse9826a512012-10-08 16:31:35 -07006#define START(node) ((node)->start)
7#define LAST(node) ((node)->last)
Michel Lespinassefff3fd82012-10-08 16:31:23 -07008
Michel Lespinasse9826a512012-10-08 16:31:35 -07009INTERVAL_TREE_DEFINE(struct interval_tree_node, rb,
10 unsigned long, __subtree_last,
11 START, LAST,, interval_tree)
Chris Wilsona88cc102014-03-17 12:21:54 +000012
13EXPORT_SYMBOL_GPL(interval_tree_insert);
14EXPORT_SYMBOL_GPL(interval_tree_remove);
15EXPORT_SYMBOL_GPL(interval_tree_iter_first);
16EXPORT_SYMBOL_GPL(interval_tree_iter_next);