slob: reduce external fragmentation by using three free lists
authorMatt Mackall <mpm@selenic.com>
Tue, 5 Feb 2008 06:29:37 +0000 (22:29 -0800)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Tue, 5 Feb 2008 17:44:19 +0000 (09:44 -0800)
commit20cecbae44528d347c46e71f40650b75e0dcbc8e
treefae7206c9aff698b76c5c6aab796539d047947bc
parent679299b32dbf9bac4bdaedc850fb95d0f81b4963
slob: reduce external fragmentation by using three free lists

By putting smaller objects on their own list, we greatly reduce overall
external fragmentation and increase repeatability.  This reduces total SLOB
overhead from > 50% to ~6% on a simple boot test.

Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/slob.c