slab: restrict the number of objects in a slab
authorJoonsoo Kim <iamjoonsoo.kim@lge.com>
Mon, 2 Dec 2013 08:49:41 +0000 (17:49 +0900)
committerPekka Enberg <penberg@kernel.org>
Sat, 8 Feb 2014 10:12:06 +0000 (12:12 +0200)
To prepare to implement byte sized index for managing the freelist
of a slab, we should restrict the number of objects in a slab to be less
or equal to 256, since byte only represent 256 different values.
Setting the size of object to value equal or more than newly introduced
SLAB_OBJ_MIN_SIZE ensures that the number of objects in a slab is less or
equal to 256 for a slab with 1 page.

If page size is rather larger than 4096, above assumption would be wrong.
In this case, we would fall back on 2 bytes sized index.

If minimum size of kmalloc is less than 16, we use it as minimum object
size and give up this optimization.

Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
include/linux/slab.h
mm/slab.c

Simple merge
diff --cc mm/slab.c
Simple merge