diff options
| author | Chris Wilson <chris@chris-wilson.co.uk> | 2014-03-17 08:21:54 -0400 |
|---|---|---|
| committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2014-05-05 03:09:14 -0400 |
| commit | a88cc108f6f39e56577793f66ac69eb0e18ae099 (patch) | |
| tree | ea07f899e8d482e15654d06d7df9aae857166dda /lib/Kconfig | |
| parent | 8d4eee9cd7a170342dc6fbc2ee19ae77031a8cd5 (diff) | |
lib: Export interval_tree
lib/interval_tree.c provides a simple interface for an interval-tree
(an augmented red-black tree) but is only built when testing the generic
macros for building interval-trees. For drivers with modest needs,
export the simple interval-tree library as is.
v2: Lots of help from Michel Lespinasse to only compile the code
as required:
- make INTERVAL_TREE a config option
- make INTERVAL_TREE_TEST select the library functions
and sanitize the filenames & Makefile
- prepare interval_tree for being built as a module if required
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michel Lespinasse <walken@google.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: Michel Lespinasse <walken@google.com>
[Acked for inclusion via drm/i915 by Andrew Morton.]
[danvet: switch to _GPL as per the mailing list discussion.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'lib/Kconfig')
| -rw-r--r-- | lib/Kconfig | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/Kconfig b/lib/Kconfig index 4771fb3f4da4..334f7722a999 100644 --- a/lib/Kconfig +++ b/lib/Kconfig | |||
| @@ -331,6 +331,20 @@ config TEXTSEARCH_FSM | |||
| 331 | config BTREE | 331 | config BTREE |
| 332 | boolean | 332 | boolean |
| 333 | 333 | ||
| 334 | config INTERVAL_TREE | ||
| 335 | boolean | ||
| 336 | help | ||
| 337 | Simple, embeddable, interval-tree. Can find the start of an | ||
| 338 | overlapping range in log(n) time and then iterate over all | ||
| 339 | overlapping nodes. The algorithm is implemented as an | ||
| 340 | augmented rbtree. | ||
| 341 | |||
| 342 | See: | ||
| 343 | |||
| 344 | Documentation/rbtree.txt | ||
| 345 | |||
| 346 | for more information. | ||
| 347 | |||
| 334 | config ASSOCIATIVE_ARRAY | 348 | config ASSOCIATIVE_ARRAY |
| 335 | bool | 349 | bool |
| 336 | help | 350 | help |
