[PATCH] slab: consolidate code to free slabs from freelist
authorChristoph Lameter <clameter@sgi.com>
Fri, 30 Jun 2006 08:55:45 +0000 (01:55 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Fri, 30 Jun 2006 18:25:36 +0000 (11:25 -0700)
commited11d9eb2228acc483c819ab353e3c41bcb158fa
treefa6efec62228835be260ac55d9dd0480a9064c8a
parentf8891e5e1f93a128c3900f82035e8541357896a7
[PATCH] slab: consolidate code to free slabs from freelist

Post and discussion:
http://marc.theaimsgroup.com/?t=115074342800003&r=1&w=2

Code in __shrink_node() duplicates code in cache_reap()

Add a new function drain_freelist that removes slabs with objects that are
already free and use that in various places.

This eliminates the __node_shrink() function and provides the interrupt
holdoff reduction from slab_free to code that used to call __node_shrink.

[akpm@osdl.org: build fixes]
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
mm/slab.c