diff options
author | Namhyung Kim <namhyung@gmail.com> | 2010-09-15 20:30:19 +0400 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2010-09-23 15:52:38 +0400 |
commit | ed9f524ac79457f0c547c85746b19b92526be612 (patch) | |
tree | 9cc0900a65c3361faa5b25a4a7415ca6b415c40a /include/linux/idr.h | |
parent | 72b43570f304634532b4d66c991eef529135f68c (diff) | |
download | linux-ed9f524ac79457f0c547c85746b19b92526be612.tar.xz |
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>
Diffstat (limited to 'include/linux/idr.h')
-rw-r--r-- | include/linux/idr.h | 7 |
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); /* * IDA - IDR based id allocator, use when translation from id to * pointer isn't necessary. + * + * IDA_BITMAP_LONGS is calculated to be one less to accommodate + * ida_bitmap->nr_busy so that the whole struct fits in 128 bytes. */ #define IDA_CHUNK_SIZE 128 /* 128 bytes per chunk */ -#define IDA_BITMAP_LONGS (128 / sizeof(long) - 1) -#define IDA_BITMAP_BITS (IDA_BITMAP_LONGS * sizeof(long) * 8) +#define IDA_BITMAP_LONGS (IDA_CHUNK_SIZE / sizeof(long) - 1) +#define IDA_BITMAP_BITS (IDA_BITMAP_LONGS * sizeof(long) * 8) struct ida_bitmap { long nr_busy; |