From: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx> This submission is just intended to get more review if possible. This patchset is already on mmotm for a month and there is no problem at all. No changes from mmotm one. Changes from v1: o Fold fixes into corresponding ones (no difference from mmotm) o Add a clean-up patch at last per Christoph's comment Hello, This patchset implements new freed object management way, that is, OBJFREELIST_SLAB. Purpose of it is to reduce memory overhead in SLAB. SLAB needs a array to manage freed objects in a slab. If there is leftover after objects are packed into a slab, we can use it as a management array, and, in this case, there is no memory waste. But, in the other cases, we need to allocate extra memory for a management array or utilize dedicated internal memory in a slab for it. Both cases causes memory waste so it's not good. With this patchset, freed object itself can be used for a management array. So, memory waste could be reduced. Detailed idea and numbers are described in last patch's commit description. Please refer it. Thanks. Joonsoo Kim (17): mm/slab: fix stale code comment mm/slab: remove useless structure define mm/slab: remove the checks for slab implementation bug mm/slab: activate debug_pagealloc in SLAB when it is actually enabled mm/slab: use more appropriate condition check for debug_pagealloc mm/slab: clean up DEBUG_PAGEALLOC processing code mm/slab: alternative implementation for DEBUG_SLAB_LEAK mm/slab: remove object status buffer for DEBUG_SLAB_LEAK mm/slab: put the freelist at the end of slab page mm/slab: align cache size first before determination of OFF_SLAB candidate mm/slab: clean up cache type determination mm/slab: do not change cache size if debug pagealloc isn't possible mm/slab: make criteria for off slab determination robust and simple mm/slab: factor out slab list fixup code mm/slab: factor out debugging initialization in cache_init_objs() mm/slab: introduce new slab management type, OBJFREELIST_SLAB mm/slab: avoid returning values by reference include/linux/mm.h | 12 +- include/linux/slab_def.h | 3 + mm/slab.c | 626 ++++++++++++++++++++++++++--------------------- 3 files changed, 362 insertions(+), 279 deletions(-) -- 1.9.1 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>