summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorKent Overstreet <koverstreet@google.com>2013-06-14 15:55:11 -0700
committerKent Overstreet <koverstreet@google.com>2013-06-14 15:58:31 -0700
commit01657040f46132eb1300172eccae9b89850be780 (patch)
treed347a9797354796f4006054c8a356b594e93f35b /include/linux
parent37afdfd7ecbb4d07b176b61f7f80502ae475f3ad (diff)
use bitmap tree for percpu tagsidr-array-alloc
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/percpu-tags.h11
1 files changed, 4 insertions, 7 deletions
diff --git a/include/linux/percpu-tags.h b/include/linux/percpu-tags.h
index 0f1e7b31d421..39b7020dff9b 100644
--- a/include/linux/percpu-tags.h
+++ b/include/linux/percpu-tags.h
@@ -28,6 +28,7 @@
#ifndef _LINUX_TAGS_H
#define _LINUX_TAGS_H
+#include <linux/bitmap-tree.h>
#include <linux/spinlock_types.h>
#include <linux/wait.h>
@@ -62,15 +63,11 @@ struct percpu_tag_pool {
*/
unsigned cpu_last_stolen;
- /*
- * Global freelist - it's a stack where nr_free points to the
- * top
- */
- unsigned nr_free;
- unsigned *freelist;
-
/* For sleeping on allocation failure */
wait_queue_head_t wait;
+
+ /* Global freelist */
+ struct bitmap_tree map;
} ____cacheline_aligned_in_smp;
};