aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNamhyung Kim <namhyung@gmail.com>2010-09-15 12:30:19 -0400
committerJiri Kosina <jkosina@suse.cz>2010-09-23 07:52:38 -0400
commited9f524ac79457f0c547c85746b19b92526be612 (patch)
tree9cc0900a65c3361faa5b25a4a7415ca6b415c40a
parent72b43570f304634532b4d66c991eef529135f68c (diff)
ida: document IDA_BITMAP_LONGS calculation
IDA_BITMAP_LONGS value is calculated take into account struct ida_bitmap not to waste memory space. Comment it. Signed-off-by: Namhyung Kim <namhyung@gmail.com> Acked-by: Tejun Heo <tj@kernel.org> Acked-by: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r--include/linux/idr.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/include/linux/idr.h b/include/linux/idr.h
index e968db71e33a..88607523e2df 100644
--- a/include/linux/idr.h
+++ b/include/linux/idr.h
@@ -117,10 +117,13 @@ void idr_init(struct idr *idp);
117/* 117/*
118 * IDA - IDR based id allocator, use when translation from id to 118 * IDA - IDR based id allocator, use when translation from id to
119 * pointer isn't necessary. 119 * pointer isn't necessary.
120 *
121 * IDA_BITMAP_LONGS is calculated to be one less to accommodate
122 * ida_bitmap->nr_busy so that the whole struct fits in 128 bytes.
120 */ 123 */
121#define IDA_CHUNK_SIZE 128 /* 128 bytes per chunk */ 124#define IDA_CHUNK_SIZE 128 /* 128 bytes per chunk */
122#define IDA_BITMAP_LONGS (128 / sizeof(long) - 1) 125#define IDA_BITMAP_LONGS (IDA_CHUNK_SIZE / sizeof(long) - 1)
123#define IDA_BITMAP_BITS (IDA_BITMAP_LONGS * sizeof(long) * 8) 126#define IDA_BITMAP_BITS (IDA_BITMAP_LONGS * sizeof(long) * 8)
124 127
125struct ida_bitmap { 128struct ida_bitmap {
126 long nr_busy; 129 long nr_busy;